51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

OneinStack配置MySQL远程连接

说明 {#%E8%AF%B4%E6%98%8E}

为了安全考虑,OneinStack仅允许云主机本机(localhost)连接数据库,如果需要远程连接数据库,需要一些修改,其他方式安装的MySql也可参考此步骤

云主机防火墙放行对应端口 {#%E4%BA%91%E4%B8%BB%E6%9C%BA%E9%98%B2%E7%81%AB%E5%A2%99%E6%94%BE%E8%A1%8C%E5%AF%B9%E5%BA%94%E7%AB%AF%E5%8F%A3}

参考

如系统内防火墙开启也需要放行。没有则跳过

centos

iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
service iptables save #保存iptables规则

Ubuntu/Debian

iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
iptables-save > /etc/iptables.up.rules #保存iptables规则

数据库授权 {#%E6%95%B0%E6%8D%AE%E5%BA%93%E6%8E%88%E6%9D%83}

注意⚠️:远程连接新建一个帐号(帐号名不能为root)。
如:添加一个用户名为db_user,密码为db_pass,授权为% (%表示所有IP能连接)对db_name数据库所有权限,命令如下:

MySQL8.0版本 {#mysql8.0%E7%89%88%E6%9C%AC}

# mysql -uroot -p
 MySQL [(none)]> create user db_user@'%' identified by 'db_pass'; #创建用户
 MySQL [(none)]> grant all privileges on db_name.* to db_user@'%' with grant option; #授权
  MySQL [(none)]> flush privileges;
 MySQL [(none)]> exit; #退出数据库控制台,特别注意有分号

其余MySQL版本 {#%E5%85%B6%E4%BD%99mysql%E7%89%88%E6%9C%AC}

# mysql -uroot -p
 MySQL [(none)]> grant all privileges on db_name.* to db_user@'%' identified by 'db_pass'; #授权语句,特别注意有分号
 MySQL [(none)]> flush privileges;
 MySQL [(none)]> exit; #退出数据库控制台,特别注意有分号
  • 如想使用root用户把db_user替换为root即可
赞(1)
未经允许不得转载:工具盒子 » OneinStack配置MySQL远程连接