一、mysqld 進程沒有正常運行遇到這種情況首先到服務(wù)器上看看 mysqld 進程是否活著,采用的命令:
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),西安企業(yè)網(wǎng)站建設(shè),西安品牌網(wǎng)站建設(shè),網(wǎng)站定制,西安網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,西安網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
二、客戶端不能和進程 mysqld 通信如果 MySQL 服務(wù)器上的 mysqld 進程運行正常,我們再看看客戶端能不能和 mysqld 進行通信,使用下面的命令進行網(wǎng)絡(luò)連通的測試:telnet localhost 3306
如果本地能通,再到客戶端的機器上把 localhost 換成 MySQL 服務(wù)器的 ip 地址進行測試。如果不能通,通常有兩種原因,一種原因是 OS 或網(wǎng)絡(luò)的問題,或者是防火墻;另一種原因是 mysqld 自身根本沒有偵聽客戶端的連接請求, mysqld 啟動后對于客戶端的偵聽是分三種情況。
第一種情況
是使用參數(shù) --skip-networking 跳過偵聽客戶端的網(wǎng)絡(luò)連接,用下面的命令我們可以看到 MySQL 根本沒有偵聽 3306 端口。
第二種情況
使用參數(shù) --bind-address 后面增加對客戶端訪問 IP 地址的限制,例如只偵聽本地的連接
三、賬戶密碼的問題最后一種情況是賬戶密碼的問題,應(yīng)付這種情況我們有個有力的工具就是查看 MySQL 的 error log, error log 記載信息的詳細程度上由參數(shù) --log-error-verbosity 進行控制的
方法1、mysql中提高max_connections的值。不要太高,依據(jù)你的內(nèi)存而定。一般8G-16G內(nèi)存服務(wù)器500-1000 mysql set GLOBAL max_connections=1000; 方法2、從應(yīng)用層限制連接數(shù)據(jù)庫的最大連接數(shù)
原因是MySQL默認不支持遠程連接,(那么phpMyAdmin為什么可以連接呢?那是因為phpMyadmin的環(huán)境是上傳到服務(wù)器的,其本身訪問數(shù)據(jù)庫是相當于本機localhost訪問的),如果想遠程訪問,可以使用下面的方法來解決。
遠程連接mysql數(shù)據(jù)庫時出現(xiàn)如下提示信息:“MYSQL CONNECT ERROR – 1130:Host ’202.43.**.**’ is not allowed to connect to this MySQL server”
在創(chuàng)建mysql賬戶時,限制連接賬戶遠程登錄。也就是說,除了當前mysql所在的安裝服務(wù)器外,其他的ip(主機)都是不允許訪問的,即使你的用戶名和密碼是正確的。這時候就要修改用戶的訪問權(quán)限。
首先是用root用戶登錄到mysql的安裝主機,然后進入mysql:
mysql -u root -p
root是mysql的最高授權(quán)用戶名,這時會提示你輸入密碼,正確輸入密碼后回車,進入mysql?;剀?/p>
然后輸入如下命令:
grant all on 數(shù)據(jù)庫名.* to ‘數(shù)據(jù)庫賬戶名’@’%’ identified by ‘密碼’ with grant option;
回車
flush privileges;
回車
注意:上面的單引號不能省,數(shù)據(jù)庫名.* 表示要開放的數(shù)據(jù)庫下所有表,如果該連接的所有數(shù)據(jù)庫都要開放,可以用 *.* 代替。
‘數(shù)據(jù)庫賬戶名’@’%’ 這里表示要開放的賬戶,百分號表示在任何主機都允許訪問。
如果以上兩步均顯示 “Query OK, 0 rows affected (0.00 sec)”,那么說明命令已經(jīng)成功執(zhí)行,現(xiàn)在就可以遠程連接你的mysql數(shù)據(jù)庫了。
(1).如果想賦予所有操作的權(quán)限
grant all on ... to 用戶名......
(2).如果想賦予操作所有數(shù)據(jù)庫的所有表的權(quán)限
grant ... on *.* to 用戶名......
(3).如果想賦予某個數(shù)據(jù)庫的所有表
grant ... on 數(shù)據(jù)庫名稱.'*' to 用戶名...... ([ * ]兩邊一定要加單引號)
(4).如果想賦予某個數(shù)據(jù)庫的某張表
grant ... on 數(shù)據(jù)庫名稱.表名 to 用戶名......
(5).如果想任何客戶端都能通過該用戶名遠程訪問
grant ... on ... to 用戶名@% ....... (要把IP地址改成[ % ])
(6).改完了以后一定要重新啟動MySQL服務(wù)
用戶會存到Mysql服務(wù)器上的user表中,所以下面的兩種方法都可以解決這個問題:
1。 改表法??赡苁悄愕膸ぬ柌辉试S從遠程登陸,只能在localhost。這個時候只要在localhost的那臺電腦,登入mysql后,更改 "mysql" 數(shù)據(jù)庫里的 "user" 表里的 "host" 項,從"localhost"改稱"%"
mysql -u root -p
mysqluse mysql;
mysqlupdate user set host = ’%’ where user = ’root’;mysqlselect host, user from user;
mysqlflush privileges;
2. 授權(quán)法。例如,你想myuser使用mypassword從任何主機連接到mysql服務(wù)器的話。
GRANT ALL PRIVILEGES ON *.* TO ’myuser’@’%’ IDENTIFIED BY ’mypassword’ WITH GRANT OPTION;
如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql服務(wù)器,并使用mypassword作為密碼
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、檢查用戶權(quán)限是否正確。
例如:用戶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)
4、查看iptables是否停掉,沒關(guān)的情況下,無法連接。
通過:service iptables stop臨時關(guān)閉。
報錯:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)
另外,我們還可以通過配置http通道來使Navicat遠程連接到數(shù)據(jù)庫,這樣做的好處是不需要前面繁雜的配置。在主機名IP地址那里填寫LocalHost
用戶名與密碼一欄則填寫你所在的數(shù)據(jù)庫用戶名與密碼。
這時候還不能連接數(shù)據(jù)庫的,需要通過Http通道的形式進行數(shù)據(jù)庫連接。
點擊連接屬性標簽欄中的Http,如下圖所示:
勾選使用Http通道后,在通道地址一欄輸入你的網(wǎng)址與后臺文件地址。
新聞名稱:mysql怎么限制連接的,不允許連接mysql
路徑分享:http://chinadenli.net/article20/heicjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站內(nèi)鏈、虛擬主機、品牌網(wǎng)站建設(shè)、標簽優(yōu)化、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)