国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql無法遠程連接的解決方法

2024-07-24 12:38:24
字體:
來源:轉載
供稿:網友

我們知道MySQL默認不支持遠程,是MySQL的默認用戶root默認不支持遠程,因為是localhost,所以不能遠程是正常的,但是如果你開戶了遠程還是不能遠程呢,下面總結了解決辦法.

遠程連接mysql數據庫時出現如下提示信息:“MYSQL CONNECT ERROR – 1130:Host ’202.43.**.**’ is not allowed to connect to this MySQL server”

原來在創建mysql賬戶是,限制連接賬戶遠程登錄。也就是說,除了當前mysql所在的安裝服務器外,其他的ip(主機)都是不允許訪問的,盡管你的用戶名和密碼是正確的。

其實不是MySQL默認不支持遠程,是MySQL的默認用戶root默認不支持遠程,因為是localhost...

說白了,也就是權限問題,root用戶的Host默認就是localhost...

以下解決方法是重新建了一個用戶,支持遠程訪問,而不用去修改root的權限,建議這樣做,呼呼...

知道了問題的原因,下面就來解決問題,首先需要登錄到mysql的安裝主機,然后進入mysql:

mysql/usr/local/mysql/bin mysql -u root -p

回車

root是mysql的最高授權用戶名,這時會提示你輸入密碼,正確輸入密碼后回車,進入mysql.

然后輸入如下命令:

  1. grant all on 數據庫名.* to ‘數據庫賬戶名’@’%’ identified by ‘密碼’ with grant option

回車.

flush privileges;

回車

注意:上面的單引號不能省,數據庫名.* 表示要開放的數據庫下所有表,如果該連接的所有數據庫都要開放,可以用 *.* 代替.

‘數據庫賬戶名’@’%’ 這里表示要開放的賬戶,百分號表示在任何主機都允許訪問。

如果以上兩步均顯示 “Query OK, 0 rows affected (0.00 sec)”,那么說明命令已經成功執行,現在就可以遠程連接你的mysql數據庫了。

重點說明:(本人經歷的,(~ o ~)~zZ)

(1).如果想賦予所有操作的權限

grant all on ... to 用戶名......

(2).如果想賦予操作所有數據庫的所有表的權限

grant ... on *.* to 用戶名......

(3).如果想賦予某個數據庫的所有表

grant ... on 數據庫名稱.'*' to 用戶名...... ([ * ]兩邊一定要加單引號)

(4).如果想賦予某個數據庫的某張表

grant ... on 數據庫名稱.表名 to 用戶名......

(5).如果想任何客戶端都能通過該用戶名遠程訪問

grant ... on ... to 用戶名@% ....... (要把IP地址改成[ % ])

(6).改完了以后一定要重新啟動MySQL服務

用戶會存到MYsql服務器上的user表中.

所以也可以這樣做:

1,改表法,可能是你的帳號不允許從遠程登陸,只能在localhost,這個時候只要在localhost的那臺電腦,登入mysql后,更改 "mysql" 數據庫里的 "user" 表里的 "host" 項,從"localhost"改稱"%",代碼如下:

  1. mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = ’%’ where user = ’root’;mysql>select host, user from user;  

2.授權法,例如,你想myuser使用mypassword從任何主機連接到mysql服務器的話,代碼如下:

  1. GRANT ALL PRIVILEGES ON *.* TO ’myuser’@’%’ IDENTIFIED BY ’mypassword’ WITH GRANT OPTION;  

如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql服務器,并使用mypassword作為密碼,代碼如下:

  1. GRANT ALL PRIVILEGES ON *.* TO ’myuser’@’192.168.1.3’ IDENTIFIED BY ’mypassword’ WITH GRANT OPTION

如果還是無法遠程我們可參考如下方法.

1、Mysql的端口是否正確,通過netstat -ntlp查看端口占用情況,一般情況下端口是3306。在用工具連接MySQl是要用到端口。例如My AdminMy Query BrowserMySQl Front等。

2、檢查用戶權限是否正確。

例如:用戶Tester,user表里有兩條記錄:host分別為localhost和%(為了安全,%可以換成你需要外部連接的IP)。

3、查看/etc/my.cnf中,skip-networking 是否已被注掉,需要注掉。

報錯:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (111)

6,-查看iptables是否停掉,沒關的情況下,無法連接。

通過:service iptables stop臨時關閉。

報錯:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)51Testing軟件測試網

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗城| 普安县| 怀来县| 六盘水市| 富宁县| 偃师市| 延边| 临汾市| 绥化市| 星座| 资源县| 德江县| 珲春市| 越西县| 深水埗区| 通山县| 辽中县| 凤庆县| 左云县| 丹寨县| 青河县| 嘉峪关市| 中宁县| 开鲁县| 宜兰县| 冷水江市| 九龙坡区| 射洪县| 兴宁市| 施秉县| 元江| 贞丰县| 左云县| 涿鹿县| 阿拉善右旗| 尚义县| 清徐县| 营山县| 巴彦淖尔市| 抚松县| 象州县|