当前位置: 首页 > news >正文

【msyql】LInux安装Mysql

在 CentOS 7 上安装 MySQL 并配置远程访问的步骤如下:


1. 安装 MySQL

添加 MySQL Yum 仓库
  1. 下载 MySQL 官方 Yum 仓库:

    sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
    
  2. 安装仓库:

    sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm
    
安装 MySQL 服务器
  1. 安装 MySQL:

    sudo yum install mysql-server -y
    
  2. 启动 MySQL 服务:

    sudo systemctl start mysqld
    
  3. 设置 MySQL 开机自启:

    sudo systemctl enable mysqld
    

2. 配置 MySQL

获取初始密码

MySQL 安装完成后,会生成一个临时密码。查看日志获取密码:

sudo grep 'temporary password' /var/log/mysqld.log

输出示例:

2023-10-01T12:34:56.123456Z 1 [Note] A temporary password is generated for root@localhost: Abc12345
运行安全脚本

使用临时密码登录 MySQL 并运行安全脚本:

sudo mysql_secure_installation

按照提示完成以下操作:

  1. 输入临时密码。
  2. 设置新密码。
  3. 删除匿名用户。
  4. 禁止 root 用户远程登录(可选)。
  5. 删除测试数据库。
  6. 重新加载权限表。

3. 修改用户权限以允许远程登录

默认情况下,MySQL 只允许本地访问。要允许远程访问,需要修改用户权限。

登录 MySQL
mysql -u root -p
创建新用户并授权
  1. 创建新用户(例如 remote_user):

    CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';
    
  2. 授予用户所有数据库的权限:

    GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
    
  3. 刷新权限:

    FLUSH PRIVILEGES;
    
修改 root 用户权限(可选)

如果希望允许 root 用户远程登录,可以执行以下命令:

UPDATE mysql.user SET Host='%' WHERE User='root';
FLUSH PRIVILEGES;

4. 配置防火墙

确保防火墙允许 MySQL 的默认端口(3306)的流量。

  1. 开放端口:

    sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
    
  2. 重新加载防火墙:

    sudo firewall-cmd --reload
    

5. 测试远程连接

使用 MySQL 客户端工具(如 MySQL Workbench 或命令行)测试远程连接。

命令行测试
mysql -h your_server_ip -u remote_user -p
  • your_server_ip:服务器的公网 IP 地址。
  • remote_user:远程登录的用户名。

6. 总结

通过以上步骤,你可以在 CentOS 7 上安装 MySQL,并配置用户权限以允许远程访问。如果仍有问题,请提供具体错误信息以便进一步排查。


参考链接

  • MySQL 官方文档
  • CentOS 7 防火墙配置

相关文章:

  • kubernetes高级应用之初始化容器
  • 第 6 章 | 区块链预言机操控与闪电贷攻击全解析
  • 数据结构之队列的链式结构-初始化-判断队列是否为空-入队-出队-获取队头元素
  • 八目导航 version:1.2
  • Linux 中进程的 nice 值对程序的占用的影响测试
  • 边缘计算 vs. 云计算,谁才是工业物联网的未来?
  • Matlab Hessian矩阵计算(LoG算子)
  • Django 生成 ssl 安全证书,切换 https、wss协议(daphne 、nginx)
  • C++之哈希
  • kubectl 命令参数详解与示例
  • 数据库DBA认证,选哪个认证合适?
  • Git撤回操作全场景指南:未推送与已推送,保留和不保留修改的差异处理
  • 解决PHP内存溢出问题的讨论和分析
  • 通过git文件查看大模型下载链接的解决方案
  • 【Qt】Ubuntu22.04使用命令安装Qt5和Qt6
  • Day23:和为s的数字
  • 金牛区文创地标:国际数字影像产业园亮点解析
  • Android Kotlin 权限工具类封装:简化动态权限管理
  • 三维空间中点、线、面的关系
  • 【Elasticsearch】开启大数据分析的探索与预处理之旅
  • 宇树科技王兴兴:第一桶金来自上海,欢迎上海的年轻人加入
  • 广西钦州:坚决拥护自治区党委对钟恒钦进行审查调查的决定
  • 马云再次现身阿里打卡创业公寓“湖畔小屋”,鼓励员工坚持创业精神
  • 溢价26.3%!保利置业42.4亿元竞得上海杨浦宅地,楼板价80199元/平方米
  • 印方称若巴方决定升级局势,印方已做好反击准备
  • 上海:5月8日起5年以上首套个人住房公积金贷款利率下调至2.6%