當前位置:首頁 » 操作系統 » 連接不上mysql資料庫

連接不上mysql資料庫

發布時間: 2023-05-23 11:36:21

Ⅰ mysql連接資料庫失敗,請確定資料庫用戶名,密碼設置正確

現象
一線的工程師反映了一個奇怪的現象,剛剛從 MySQL 官網上下載了一個 MySQL 5.7.31。安裝完成後,發現使用任何密碼都能登陸 MySQL,修改密碼也不管用,重新啟動 MySQL 也不能解決。

分析
懷疑使用了 --skip-grant-tables 使用 mysqld --print-defaults 檢查,沒有發現。
檢查登陸用戶,都是 root@localhost,說明和 proxy user 沒有關系。
使用 mysql --print-defaults 檢查客戶端是否設置默認的用戶和密碼,沒有發現。
檢查資料庫中的用戶和密碼的相關欄位:
發現一切都正常,再檢查 plugin 欄位,發現只有 root 用戶是 auth_socket ,其它的用戶都是 mysql_native_password,問題可能就出在這兒。

對 auth_socket 驗證插件不了解,感覺是這個插件不安全,使用下面的命令修改後,問題解決:
update user set plugin="mysql_native_password" where user='root';
auth_socket 驗證插件的使用場景
問題解決後,又仔細研究了一下 auth_socket 這個插件,發現這種驗證方式有以下特點:
首先,這種驗證方式不要求輸入密碼,即使輸入了密碼也不驗證。這個特點讓很多人覺得很不安全,實際仔細研究一下這種方式,發現還是相當安全的,因為它有另外兩個限制;
只能用 UNIX 的 socket 方式登陸,這就保證了只能本地登陸,用戶在使用這種登陸方式時已經通過了操作系統的安全驗證;
操作系統的用戶和 MySQL 資料庫的用戶名必須一致,例如你要登陸MySQL 的 root 用戶,必須用操作系統的 root用戶登陸。
auth_socket 這個插件因為有這些特點,它很適合我們在系統投產前進行安裝調試的時候使用,而且也有相當的安全性,因為系統投產前通常經常同時使用操作系統的 root 用戶和 MySQL 的 root 用戶。當我們在系統投產後,操作系統的 root 用戶和 MySQL 的 root 用戶就不能隨便使用了,這時可以換成其它的驗證方式,可以使用下面的命令進行切換:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

Ⅱ mySQL資料庫連接不上怎麼辦。。

這問題頭疼,是不是要講詳細.。區域網處理方案,一般連接檢查順序:

1.查看資料庫監聽埠;

2.查看該監聽服務啟動沒有;

3.查看驅動包有沒有放(伺服器端common->lib,開發工具common開發包[一般自帶有];

4.運行jdbc連接程序,有沒有出異常,出異常上面沒弄好,看看異常,就可以追蹤處理。

5.直接使用開發工具的鏈接測試平台,備好各個屬性,添入驅動包,測試鏈接是否成功,成功你的程序有問題,沒成功換驅動包。

Ⅲ mysql或sqlserver顯示無法連接本地資料庫怎麼辦

剛剛使用資料庫經常會出現這種情況,資料庫剛剛安裝的時候可以使用,把資料庫關掉重新打開就無法使塌猜明用了,那怎麼辦呢?這一般是相關服務沒有開啟造成的。

1打開控制面板,用小圖標的方團告式查看,找到管理工具。

2打開管理工具,找到服務。

3如果是mysql,在服務中找到mysql,點擊啟動。

4如果是SqlServer,則找到SqlServer開頭的服務,然兆純後找到服務SqlServerMM+XXXX(因為我現在安裝的是mysql,所以具體的服務名稱忘了,但是絕對是M開頭的),如果沒有那個服務,則我也沒辦法了,你試試將所有SqlServer有關的服務都開啟,能連接的可能性也不大。

5左上角會顯示出這個服務已經啟動,這個時候再連接資料庫就會成功了。

Ⅳ 連接mysql資料庫失敗怎麼辦

1 mysql 錯誤 ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost'
www.2cto.com
解決辦法:關閉防火牆,linux下命令
[root@etl01 bin]# chkconfig --list | grep -i iptables ====check fire wall
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@etl01 bin]# /sbin/信飢service iptables stop ====stop fire wall
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: nat filter [ OK ]
Unloading iptables moles: [ OK ]

2 報錯:1130-host ... is not allowed to connect to this MySql server

解決辦法:

授絕坦差權形式
比如賬戶為root,密碼為root
use mysql;
用root賬戶從任何主機上訪問mysql資料庫了
GRANT ALL PRIVILEGES ON *.* TO '並皮root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
如果你想允許用戶zz從ip為192.168.1.3的主機連接到mysql伺服器,並使用123456作為密碼
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY '123456' WITH GRANT OPTION;

Ⅳ mysql無法連接資料庫是什麼原因

access denied是參數設置錯誤造成的,解決方法如下:

1、打開並編輯vim /etc/my.cnf。

Ⅵ Mysql無法遠程連接,要如何解決

原因是MySQL默認不支持遠程連接,(那麼phpMyAdmin為什麼可以連接呢?那是因為phpMyadmin的環境是上傳到伺服器的,其本身訪問資料庫是相當於本機localhost訪問的),如果想遠程訪問,可以使用下面的方法來解決。

遠程連接mysql資料庫時出現如下提示信息:「MYSQL CONNECT ERROR – 1130:Host 』202.43.**.**』 is not allowed to connect to this MySQL server」

在創建mysql賬戶時,限制連接賬戶遠程登錄。也就是說,除了當前mysql所在的安裝伺服器外,其他的ip(主機)都是不允許訪問的,即使你的用戶名和密碼是正確的。這時候就要修改用戶的訪問許可權。

首先是用root用戶登錄到mysql的安裝主機,然後進入mysql:

mysql -u root -p

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

然後輸入如下命令:

grant all on 資料庫名.* to 『資料庫賬戶名』@』%』 identified by 『密碼』 with grant option;


回車

flush privileges;

回車
注意:上面的單引號不能省,資料庫名.* 表示要開放的資料庫下所有表,如果該連接的所有資料庫都要開放,可以用 *.* 代替。
『資料庫賬戶名』@』%』 這里表示要開放的賬戶,百分號表示在任何主機都允許訪問。
如果以上兩步均顯示 「Query OK, 0 rows affected (0.00 sec)」,那麼說明命令已經成功執行,現在就可以遠程連接你的mysql資料庫了。

(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"改稱"%"

mysql -u root -p

mysql>use mysql;

mysql>update user set host = 』%』 where user = 』root』;mysql>select host, user from user;

mysql>flush privileges;

2. 授權法。例如,你想myuser使用mypassword從任何主機連接到mysql伺服器的話。

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

如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用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、檢查用戶許可權是否正確。
例如:用戶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是否停掉,沒關的情況下,無法連接。
通過:service iptables stop臨時關閉。
報錯:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)

另外,我們還可以通過配置http通道來使Navicat遠程連接到資料庫,這樣做的好處是不需要前面繁雜的配置。在主機名IP地址那裡填寫LocalHost

用戶名與密碼一欄則填寫你所在的資料庫用戶名與密碼。

這時候還不能連接資料庫的,需要通過Http通道的形式進行資料庫連接。

點擊連接屬性標簽欄中的Http,如下圖所示:

勾選使用Http通道後,在通道地址一欄輸入你的網址與後台文件地址。

Ⅶ mysql5.7.12報錯如下情況導致無法連接資料庫應該怎麼辦

一、mysqld 進程沒有正常運行遇到這種情況首先到伺服器上看看 mysqld 進程是否活著,採用的命令:
二、客戶端不能和進程 mysqld 通信如果 MySQL 伺服器上的 mysqld 進程運行正常,我們再看看客戶端能不能和 mysqld 進行通信,使用下面的命令進行網路連通的測試:telnet localhost 3306
如果本地能通,再到客戶端的機器上把 localhost 換成 MySQL 伺服器的 ip 地址進行測試。如果不能通,通常有兩種原因,一種原因是 OS 或網路的問題,或者是防火隱春燃牆;森隱另一種原因是 mysqld 自身根本沒有偵聽客戶端的連接請求, mysqld 啟動後對於客戶端的偵聽是分三種情況。
第一種情況
是使灶虛用參數 --skip-networking 跳過偵聽客戶端的網路連接,用下面的命令我們可以看到 MySQL 根本沒有偵聽 3306 埠。
第二種情況
使用參數 --bind-address 後面增加對客戶端訪問 IP 地址的限制,例如只偵聽本地的連接
三、賬戶密碼的問題最後一種情況是賬戶密碼的問題,應付這種情況我們有個有力的工具就是查看 MySQL 的 error log, error log 記載信息的詳細程度上由參數 --log-error-verbosity 進行控制的

Ⅷ mysql資料庫連接報錯:connectiontimedou

題主是否想詢問「mysql資料庫亮態連接報錯:connectiontimedou是什麼原因」mysql資料庫連接報錯"connectiontimedout"表示連接超時,這個問題的原因是網路連接問題和資料庫連接數達到上限。
1、網路連接問題:可能是網路不穩定或者網路連接過程中出現了問題,導致連接超時禪此。
2、資料庫連接數賀鍵迅達到上限:如果資料庫連接數達到了上限,可能會導致連接超時。

熱點內容
密碼加密php 發布:2025-04-22 16:07:09 瀏覽:582
imac存儲空間為什麼這么小 發布:2025-04-22 15:45:30 瀏覽:223
上傳時速是0 發布:2025-04-22 15:37:49 瀏覽:568
0基礎的編程 發布:2025-04-22 15:37:09 瀏覽:205
vnc怎麼查伺服器ip 發布:2025-04-22 15:29:20 瀏覽:158
百度雲ftp伺服器 發布:2025-04-22 15:17:50 瀏覽:656
平板哪個配置最高 發布:2025-04-22 15:16:20 瀏覽:830
天工編程 發布:2025-04-22 15:08:36 瀏覽:381
java感想 發布:2025-04-22 15:02:57 瀏覽:895
破解互聯網密碼多少錢 發布:2025-04-22 14:49:32 瀏覽:747