navicat在連接數(shù)據(jù)庫(kù)時(shí),有時(shí)候會(huì)出現(xiàn)連接不上的情況。西面就為大家總結(jié)一下,其中的原因及解決方法。
大家都知道,用navicat連接數(shù)據(jù)庫(kù)一般是這樣連得:
問(wèn)題整理以及解決辦法
錯(cuò)誤一:
錯(cuò)誤原因:
本地IP(xxx.xxx.xxx.xxx)沒(méi)有訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)的權(quán)限。于是下面開(kāi)啟本地IP(xxx.xxx.xxx.xxx)對(duì)遠(yuǎn)程mysql數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限。
解決辦法:
1、首先遠(yuǎn)程連接進(jìn)入服務(wù)器,在cmd中輸入mysql -u root -p,然后回車(chē),輸入密碼后回車(chē)進(jìn)入mysql命令行。?
2、輸入use mysql;
3、輸入select user,password,host from user; 可以看到host中只有l(wèi)ocalhost主機(jī)。我們需要將xxx.xxx.xxx.xxx也添加到這里才對(duì)。
4.添加方法如下:
輸入?
grant all privileges on *.* to root@”xxx.xxx.xxx.xxx” identified by “密碼”;(xxx.xxx.xxx.xxx用%也行,表示所有IP)
或者
GRANT ALL PRIVILEGES ON *.* TO ‘root’@’xxx.xxx.xxx.xxx’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
這相當(dāng)于是給IP-xxx.xxx.xxx.xxx賦予了所有的權(quán)限,包括遠(yuǎn)程訪問(wèn)權(quán)限。
然后再輸入?
flush?privileges;
這相當(dāng)于是重新加載一下mysql權(quán)限,這一步必須有。
5.再次輸入select user,password,host from user;?
可以看到host中已經(jīng)有了新加的IP。
6.現(xiàn)在再次用Navicat for MySQl訪問(wèn)遠(yuǎn)程mysql數(shù)據(jù)庫(kù),已經(jīng)能正常打開(kāi)了。?
問(wèn)題解決。
7.如果還是連接不到,那是不是 MySQL Server 綁定了本地地址,打開(kāi) /etc/mysql/my.cnf,
找到:bind-address = 127.0.0.1
去除 IP 地址綁定,把它改為:bind-address = 0.0.0.0
然后重啟 MySQL Server:/etc/init.d/mysql restart
錯(cuò)誤二:
ERROR 2003 (HY000): Can’t connect to MySQL server on ‘hostxxxxx’ (10061)
錯(cuò)誤原因:
mysqld數(shù)據(jù)庫(kù)服務(wù)沒(méi)有啟動(dòng)。
解決辦法:
檢查 :在windows 的任務(wù)管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。確認(rèn)服務(wù)已經(jīng)啟動(dòng)。
處理 :?jiǎn)?dòng)mysqld 服務(wù)
錯(cuò)誤三:
防火墻開(kāi)啟了
解決方法:
防火墻需要允許3306端口連接。
【注意:是在虛擬機(jī)(LINUX)下執(zhí)行以上步驟,IP地址xxx.xxx.xxx.xxx是寫(xiě)windows的IP地址或者%也行】