騰訊云主機中MySQL無法遠程連接的解決辦法
在遠程主機上,我開啟了 mysql服務,用 phpmyadmin 可以打開,比如說用戶名為 root,密碼為 123456。不過用 Mysql 客戶端遠程連接時卻報了錯誤,比如 Mysql-Front 報了如下Access denied for user ‘root’@’xxxxxx′(using password:YES)是騰訊云
比較奇怪,phpmyadmin 可以正常訪問,而 Mysql-Front 為什么無法連接呢?可能的原因,應該就是 IP 限制了,phpmyadmin在連接時使用的是localhost,而我們訪問頁面才使用的遠程主機的 IP,而 Mysql-Front 連接的是遠程主機。
解決方法如下:
首先修改mysql的配置文件,my.cnf,將
#bind-address = 127.0.0.1
這一行注釋掉,要不然它永遠限制了只能本機連接。
然后重啟mysql服務。
sudo service mysql restart
然后我們需要新建一個用戶,然后授予所有 IP 可以訪問的權限就好啦。
在下面的 sql 語句中,username 即為用戶名,password 為你要設置的密碼。
CREATE USER ‘username‘@‘localhost‘ IDENTIFIED BY ‘password‘; GRANT ALL PRIVILEGES ON *.* TO ‘username‘@‘localhost‘ WITH GRANT OPTION; CREATE USER ‘username‘@‘%‘ IDENTIFIED BY ‘password‘; GRANT ALL PRIVILEGES ON *.* TO ‘username‘@‘%‘ WITH GRANT OPTION;
通過執行以上語句,便創建了一個用戶名為 username,密碼為 password 的新賬戶,再用新賬號登錄,就可以連接成功啦。