时间:2021-07-01 10:21:17 帮助过:18人阅读
尽量使用mysql默认的安装位置 /usr/local 路径下。
分析:1、开始以为是防火墙的问题,用命令
# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1)
发现是dead 死的,排除了防火墙屏蔽3306端口
2、为mysql添加远程权限
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘root‘ WITH GRANT OPTION; //格式:GRANT ALL PRIVILEGES ON *.* TO ‘登录名‘@‘登录ip,%为任意地址‘ IDENTIFIED BY ‘登录密码‘ WITH GRANT OPTION; mysql> FLUSH PRIVILEGES; //刷新策略
添加后依然不行,但这是必不可少的
检验是否成功设置
mysql> use mysql; mysql> select user,host from user; +---------------+-----------+ | user | host | +---------------+-----------+ | root | % | | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +---------------+-----------+ 4 rows in set (0.00 sec)
发现设置好了
3、是不是mysql某个配置文件 .cnf的文件 比如my.cnf或者其他的文件把bind-address设成了本地,顾名思义:绑定了地址
找了一圈没找到,担心还会出问题,故意在 /etc/my.cnf 里加了一句
bind-address = 0.0.0.0
如果找到
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1 #这里默认监听本地localhost
那就注了就是了
4、然后依然不行,又搜了一下发现skip-networking是指定mysql本地运行的,跳过了TCP/IP
没在配置里找到,也没用这个方式启动
5、最后。哈 终于找到了问题的关键
阿里云官方的限制,关闭了3306端口
在个人中心进入自己买的服务器,点击最右侧的配置规则,出现下图,前两个规则是我自己加的。对了貌似8080端口也是关闭的,先选中入方向,点击添加安全组规则,按照下图的第一列添加信息。
添加后刷新下,然后再用本地重连发现OK了。
ERROR 2003 (HY000): Can't connect to MySQL server on '' (10060) CentOS7 安装二进制包mysql5.7.19
标签:vendor set 问题 row 运行 less mon eset from