用oneinstack安装的mysql如何设置远程连接?
oneinstack网站:oneinstack.com
== 下面分mysql8版本和其他版本,两种情况不同。
1.云主机安全组端口开放3306端口
参考文档:《云主机安全组端口开放教程》
2. 打开iptables 3306端口
如果您的操作系统为CentOS系列:
iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT service iptables save #保存iptables规则
3. 数据库授权
注意⚠️:远程连接新建一个帐号(帐号名不能为root)。
如:添加一个用户名为db_user,密码为db_pass,授权为% (%表示所有IP能连接)对db_name数据库所有权限,命令如下:
1)MySQL8.0版本
# mysql -uroot -p
MySQL [(none)]> create user db_user@'%'> MySQL [(none)]> grant all privileges on db_name.* to db_user@'%' with grant option; #授权
MySQL [(none)]> exit; #退出数据库控制台,特别注意有分号
其他数据库版本:
# 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; #退出数据库控制台,特别注意有分号
总结:
1.iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
2.service iptables save
3.mysql -uroot -p
4.grant all privileges on *.* to sunny@'%'> 5.flush privileges;
6.exit;
解释如下:
[*] 打开iptables 3306端口。
[*] 保存iptables规则
[*] 数据库授权给新用户sunny,密码为123456,授权%表示,所有ip能连接,对所有数据库*.*具有权限。
[*] 刷新设置
[*] 退出
如果仅分配某数据库,比如oneinstack数据库,则*.*改为oneinstack.*
如果安装完成后,
# mysql -uroot -p
bash: mysql: command not found
# cd ~
# vim .bash_profile
加一句:
export PATH=$PATH:/usr/local/mysql/bin
然后使之生效:
# source .bash_profile
参考:
https://oneinstack.com/question/298/
linux下mysql默认安装目录和常用命令
https://www.cnblogs.com/xj2015/p/6826139.html
页:
[1]