解决无法远程连接MySQL服务的问题

① 设置MySQL中root用户的权限:

mysql 复制代码
[root@nginx-dev etc]# mysql -uroot -pRoot@123
mysql> use mysql;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root@123' WITH GRANT OPTION;
mysql> select host,user,authentication_string from user;
+-------------+----------------------+-------------------------------------------+
| host        | user                 | authentication_string                     |
+-------------+----------------------+-------------------------------------------+
| localhost   | root                 | *E32A671056805EBAD613F4090727279564EED370 |
| localhost   | mysql.session        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost   | mysql.sys            | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| %           | root                 | *E32A671056805EBAD613F4090727279564EED370 |
| %           | myuser               | *FABE5482D5AADF36D028AC443D117BE1180B9725 |
+-------------+----------------------+-------------------------------------------+
mysql> flush privileges;
mysql> quit
[root@nginx-dev etc]# service mysqld restart

第一个root用户只能从本地主机连接,而第二个root用户可以从任何主机连接。

② 检查防火墙有没有屏蔽掉3306端口

shell 复制代码
[root@nginx-dev etc]# systemctl start firewalld
[root@nginx-dev etc]# sudo firewall-cmd --permanent --zone=public --add-port=13306/tcp
Warning: ALREADY_ENABLED: 13306:tcp
success
[root@nginx-dev etc]# sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
Warning: ALREADY_ENABLED: 3306:tcp
success
[root@nginx-dev etc]# sudo firewall-cmd --zone=public --list-ports
13306/tcp 3306/tcp
[root@nginx-dev etc]# netstat -apn | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      4379/mysqld
tcp        0      0 192.168.1.9:3306        192.168.1.10:65037      ESTABLISHED 4379/mysqld
tcp        0      0 192.168.1.9:3306        192.168.1.10:65041      ESTABLISHED 4379/mysqld

③ 修改配置文件/etc/my.cnf,绑定IP设置为0.0.0.0,即接收任意地址的主机的连接,端口绑定3306。

相关推荐
跨境小彭16 分钟前
Temu拉美站点铺货实操复盘:手动复制痛点与批量自动化解决方案
服务器·人工智能·搜索引擎·自动化·temu电商运营
yolo_guo18 分钟前
调试mysql延迟与libevent回调实际发送回复时机问题
c++·mysql·libevent
心之语歌20 分钟前
Tkinter 画布基本梳理
运维·服务器·python
旺仔学长 哈哈23 分钟前
springboot钓鱼爱好者交流平台APP设计与实现
java·spring boot·mysql·充电桩管理系统
狗凯之家源码网1 小时前
微博图床 PHP 系统搭建与实战应用指南
android·开发语言·php
JosieBook1 小时前
【数据库】MySQL 实战精通系列 · 第6篇:InnoDB 存储引擎、日志与崩溃恢复
数据库·mysql
消失的旧时光-19432 小时前
(第一篇)JNI 多线程到底难在哪:从 Linux Thread 到 JNIEnv
android·jni·ndk
Fcy6484 小时前
Linux下 进程间关系与守护进程
linux·运维·服务器·守护进程
g10565591394 小时前
公有云_云运维服务
java·运维·服务器
well06124 小时前
Linux粘滞位与Makefile机制深度解析
linux·运维·服务器