远程连接Linux下MySQL服务器
发布时间:2022-10-08 10:47:58 所属栏目:MySql教程 来源:
导读: 本文已在Ahezime上发布: ahezime.com/blog/post/20190013
1. 工具
ubuntu 16.04
mysql-server
iptables
ufw
netstat
2. 安装
sudo apt-get install mysql-ser
1. 工具
ubuntu 16.04
mysql-server
iptables
ufw
netstat
2. 安装
sudo apt-get install mysql-ser
|
本文已在Ahezime上发布: ahezime.com/blog/post/20190013 1. 工具 ubuntu 16.04 mysql-server iptables ufw netstat 2. 安装 sudo apt-get install mysql-server 可以修改root用户的密码: alter user ‘root’@’%’ identified by ‘xyz’; 其中‘%’表示连接到mysql服务器的所有机器mysql远程,设置后将使用xyz作为登录密码。 登录MySQL服务器: mysql 远程备份_mysql远程访问权限_mysql远程 3. 配置 要想让远程客户端访问MySQL服务器,一是要确定客户端访问没系统拦截;二是要配置mysql,授权用户访问。其中访问被拦截,客户端提示代码为2003-10060的错误,可以通过配置iptables或开启防火墙并添加mysql访问来解决。对于mysql没授权会提示代码1130的错误,可以通过授权用户解决。 3.1 iptables 未配置iptables是访问发生错误: mysql远程_mysql 远程备份_mysql远程访问权限 添加iptables访问规则: 服务器接受访问3306的端口,将数据流转移到网卡eth0。 可以查看iptables的配置: mysql远程_mysql 远程备份_mysql远程访问权限 3.2 ufw 当防火墙打开时,没有开放mysql访问端口时的错误: mysql远程_mysql 远程备份_mysql远程访问权限 打开ufw: 在打开时,提示是否及继续,继续的话ssh访问会受到影响,选择y。然后添加允许ssh访问。此外,当ufw diable后,将不能访问iptables配置,只有enable时才可以访问: mysql远程访问权限_mysql远程_mysql 远程备份 sudo ufw allow ssh 添加ssh后查看状态: mysql远程访问权限_mysql远程_mysql 远程备份 此时,ufw只允许ssh访问,其他如ftp,mysql,http等访问将被拦截。添加其他访问后的状态: mysql远程_mysql 远程备份_mysql远程访问权限 可以删除不想开放的服务端口: 3.3 mysql 远程连接MySQL服务器时,如未配置mysql访问权限,那么访问错误: mysql远程访问权限_mysql远程_mysql 远程备份 授权访问: mysql 远程备份_mysql远程访问权限_mysql远程 这里给任何机器授权以root用户和密码为root的访问。当然,在实际应用中这样的授权是不安全的,可以限制特定ip来访问mysql服务器,如: grant all privileges on *.* to ‘root’@’127.0.0.1’ identified by ‘root’ with grant option 最后,要想让其他任何机器连接MySQL服务器,修改mysql的bind-address配置: mysql 远程备份_mysql远程访问权限_mysql远程 bind-address = 127.0.0.1 是的网络状态: bind-address = 127.0.0.1时的远程连接错误: mysql远程_mysql 远程备份_mysql远程访问权限 bind-address现在绑定的是本机的环回接口127.0.0.1,要想让其他机器访问,那么就要修改ip地址。这里直接注释这条语句,表示任何机器都可以远程连接MySQL服务器。 重启mysql服务,让配置生效: 重启后的网络监听状态: 此时,mysql服务监听任何连接mysql服务器的3306端口。 到现在,所有的配置已经完成。 ================================ Update ====================== ### 改变MySQL TIMEZONE ``` root@raywallake:/ahezime/log# date Fri Jan 10 09:54:00 UTC 2020 root@raywallake:/ahezime/log# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime root@raywallake:/ahezime/log# date Fri Jan 10 17:54:25 CST 2020 > service mysql restart mysql> select now(); +---------------------+ | now()| +---------------------+ (编辑:百客网 - 百科网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


