mysql連接本地數據庫報錯,mysql連接本地數據庫報錯怎麼回事

本文目錄一覽:

mysql-front連接本地數據庫時顯示「執行錯誤」,請高手賜教。。。謝謝

問題解決方法:

首先使用update把mysql.user中的root的host從localhost修改成%:

mysql

UPDATE

mysql.user

SET

Host=’%’

WHERE

Host=’localhost’;

mysql

GRANT

ALL

PRIVILEGES

ON

*.*

TO

root@”%”;

mysql

FLUSH

PRIVILEGES;

再次連接,顯示成功。

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、在MyEclipse中連接MySQL數據庫:依次點擊window–show view–other–MyEclipse Database–DB Browser

2、選中DB Browser,右鍵單擊,並選擇New一個數據連接的菜單,新建一個MySQL連接,在彈出的新窗口中填入相應的信息

3、然後點擊Finish,完成此次操作,卻得到了如下圖所示的錯誤信息,嘗試多次也無法連接,為了驗證用戶名和密碼是否正確,我們在MySQL終端嘗試輸入該用戶和密碼

二、解決方法:

最終在終端使用「select * from mysql.user;」命令查詢用戶表的時候,結果返回卻只有root一個用戶,然後將MyEclipse中MySQL連接中的User name改成root就能連接成功了。

參考資料

MyEclipse連接MySQL數據庫報錯解決辦法.腳本之家[引用時間2017-12-29]

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鏈接本地的數據庫報錯求高手解決 The Network Adapter could not establish the connection

不能創建出局連接池.

1. 查看數據庫服務IP是否跟程序配置的一樣.

2. 查看數據庫服務端口是否跟程序配置的一樣.

3. 數據庫服務是否已經啟動.

4. 以上條件都滿足並且WebAPP 和 DB 不在一台電腦上, 請確認兩台電腦之間的通訊是否正常.

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/257755.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 12:46
下一篇 2024-12-15 12:46

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • Python運行不報錯又無任何結果輸出可能產生的原因以及解決方法

    在Python編程過程中,有時候會出現程序運行不報錯但卻沒有任何結果輸出的情況。本文將從多個方面解析這個問題,並提供相應的解決方法。 一、語法錯誤 語法錯誤是Python程序中最常…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Java 監控接口返回信息報錯信息怎麼處理

    本文將從多個方面對 Java 監控接口返回信息報錯信息的處理方法進行詳細的闡述,其中包括如何捕獲異常、如何使用日誌輸出錯誤信息、以及如何通過異常處理機制解決報錯問題等等。以下是詳細…

    編程 2025-04-29
  • Python切片索引越界是否會報錯

    解答:當對一個字符串、列表、元組進行切片時,如果索引越界會返回空序列,不會報錯。 一、切片索引的概念 切片是指對序列進行操作,從其中一段截取一個新序列。序列可以是字符串、列表、元組…

    編程 2025-04-29

發表回復

登錄後才能評論