Mysql

MySQL 轉儲,使用正確的使用者名和密碼訪問被拒絕 1045

  • May 14, 2018

我為我的 MySQL 數據庫創建了一個名為“backup”的使用者,並為其指定了特定密碼。在此處輸入圖像描述

我現在正在嘗試執行此命令:

sudo mysqldump --user=backup -password=SuperS3f@kePass --all-databases > all_databases.sql

導致這些錯誤:

mysqldump: Got error: 1045: Access denied for user 'backup'@'localhost' (using password: YES) when trying to connect

我已經嘗試使用 root mysql 使用者,也沒有 sudo,得到同樣的錯誤

MySQL 版本:Ubuntu 17.10 上的 mysql Ver 14.14 Distrib 5.7.22

大概是這樣解釋的:

主機萬用字元與“localhost”不匹配

這與 mysql 連接localhost實際上意味著連接到 UNIX 套接字(可能/var/run/mysqld/mysqld.sock),而連接到127.0.0.1意味著連接(使用 IPv4)到localhost. 所以他們選擇區分他們的訪問權限。

要檢查是否是這種情況,請重試:

sudo mysqldump  -h 127.0.0.1 --user=backup -password=SuperS3f@kePass --all-databases > all_databases.sql

然後改正訪問權限(例如 to 'backup'@'localhost')。

引用自:https://unix.stackexchange.com/questions/443747