1. 问题描述:远程连接MySQL报错
远程连接MySQL报错:Host ‘xxx.xx.xxx.xxx’ is not allowed to connect to this MySQL server
2. 问题分析:
1. 登录MySQL
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2849
Server version: 5.7.38-log MySQL Community Server (GPL)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL>
2. 查看mysql.user表
MySQL > SELECT host FROM mysql.user WHERE User = 'root';
+-----------+
| host |
+-----------+
| 127.0.0.1 |
| localhost |
+-----------+
2 rows in set (0.01 sec)
root用户只允许本地连接
3. 问题解决:
给root用户增加访问权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' identified by 'password';
SELECT host FROM mysql.user WHERE user = "root";
+-----------+
| host |
+-----------+
| % |
| 127.0.0.1 |
| localhost |