解决无法远程连接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。

相关推荐
建群新人小猿1 分钟前
陀螺匠企业助手—个人简历
android·大数据·开发语言·前端·数据库
Mr Lee_2 小时前
attribute android:enableOnBackInvokedCallback not found
android
Jomurphys2 小时前
Compose - 使用 Reorderable
android
帅得不敢出门2 小时前
Android Framework在mk中新增类似PRODUCT_MODEL的变量并传递给buildinfo.sh及prop属性中
android·linux·前端
德迅云安全—珍珍2 小时前
2核2G的云服务器可以架设游戏吗?
运维·服务器·游戏
酉鬼女又兒2 小时前
SQL21 浙江大学用户题目回答情况
数据库·sql·mysql
似霰3 小时前
AIDL Hal 开发笔记7----AIDL HAL 的升级
android·framework·hal
黄大包3 小时前
android MQTT封装
android·mqtt·mt
Miracle&4 小时前
在Linux VirtualBox中安装系统失败
linux·运维·服务器
wangmengxxw4 小时前
SpringAI-mysql
java·数据库·人工智能·mysql·springai