阿里雲伺服器安裝mysql後本地連線失敗

树叶的一生啊發表於2024-03-23

阿里雲伺服器安裝mysql後本地連線失敗

一、問題描述

在阿里雲安裝mysql後,想在本地電腦用視覺化工具連線mysql,但是提示連線失敗

錯誤如圖所示:

二、問題分析

1、檢查3306埠

首先,檢查阿里雲伺服器的安全組是否開放了3306埠

可以看到,我已經放行了3306埠。

2、檢查防火牆

我選擇直接關閉防火牆,我是centos7,所以執行如下命令:

[root@root /]# systemctl stop firewalld

3、檢查是否允許root遠端登入

3.1、透過xshell連線雲伺服器後,透過root登入上mysql

[root@root /]# mysql -h localhost -P 3306 -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.

然後,輸入密碼,登入成功

3.2、切換到mysql庫

mysql> use mysql;
Database changed

3.3、檢視root使用者是否允許遠端

mysql> select user,host from user;
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| mysql.session | localhost |
| mysql.sys     | localhost |
| root          | localhost |
+---------------+-----------+
3 rows in set (0.00 sec)

可以看到root使用者只允許本地登入,但是不允許遠端登入。

3.4、修改root使用者允許遠端登入

mysql> update user set host = '%' where user = 'root';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

3.5、重新整理許可權

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

3.6、再次檢視root使用者是否允許遠端登入

mysql> select user,host from user;
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| root          | %         |
| mysql.session | localhost |
| mysql.sys     | localhost |
+---------------+-----------+
 rows in set (0.00 sec)

三、問題解決

檢視連線結果

連線成功!!!

相關文章