跳至內容

為什麼嘗試連線到 Aurora MySQL 相容版資料庫叢集時出現「存取被拒絕」錯誤?

2 分的閱讀內容
0

我想對 Amazon Aurora MySQL 相容版資料庫叢集進行連線,但出現「存取被拒絕」錯誤。

簡短說明

若要連線至 Aurora MySQL 相容的資料庫叢集,請使用下列其中一個選項:

「存取被拒絕」錯誤通常是因為您輸入的使用者名稱或密碼不正確。如需詳細資訊,請參閱 MySQL 網站上的存取遭拒

解決方法

檢查 Aurora 資料庫執行個體是否接受連線

確認您的資料庫執行個體處於可用狀態。如需詳細資訊,請參閱檢視 Amazon RDS 資料庫執行個體狀態檢視 Aurora 叢集中的資料庫執行個體狀態。另請參閱如何在連線至我的 Amazon RDS 資料庫執行個體時解決問題?

對使用資料庫憑證的連線進行疑難排解

**密碼不正確 **

請確定您在連線到資料庫時輸入正確的密碼。請勿在密碼中使用特殊字元。如需詳細資訊,請參閱如何重設 Amazon RDS 資料庫執行個體的管理員使用者密碼?

**使用者名稱不正確 **

請確定您在連線到資料庫時輸入正確的使用者名稱。

若要檢查使用者是否存在,請執行下列查詢:

mysql> SELECT user FROM mysql.user WHERE User='username';

如果使用者不存在,請執行下列查詢以建立新的使用者:

mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'new-password-here';
mysql> FLUSH        PRIVILEGES;

如需詳細資訊,請參閱主使用者帳戶權限

使用者存在,但用戶端主機沒有連線的權限

若要檢查 MySQL 允許從哪個主機使用者或主機連線,請執行下列查詢:

mysql> SELECT host, user FROM mysql.user WHERE User='username';

若要使用正確的主機用戶端 IP 位址或萬用字元 (%) 建立使用者,以與任何 IP 位址相符,請執行下列查詢:

mysql> CREATE USER 'dbuser'@'%' IDENTIFIED BY 'new-password-here';

需要 SSL,但用戶端不使用 SSL

若要檢查使用者是否強制執行 SSL,請在資料庫執行個體上執行下列查詢:

mysql> SELECT * FROM mysql.user WHERE ssl_type <> '';

如果已強制使用 SSL,則必須使用 SSL 來連線。如需詳細資訊,請參閱使用 SSL/TLS 加密資料庫叢集的連線

**重複使用者 **

若要檢查是否存在使用者名稱相同的使用者,請執行下列查詢:

mysql> SELECT host, user FROM mysql.user WHERE User='username';

若要解決重複的使用者,請使用具有捨棄其他使用者權限的使用者登入。捨棄次要使用者之後,第一個使用者就可以進行連線。

如需詳細資訊,請參閱如何為正在執行 MySQL 的 Amazon RDS 資料庫執行個體建立另一個管理員使用者?

Bash 轉換密碼中的特殊字元

將密碼隱藏在單引號中,以便 Bash 無法轉換密碼中的特殊字符。

連線封包不包含正確的資訊

連線封包需要超過 connect_timeout 秒數才能取得連線封包。如需詳細資訊,請參閱 MySQL 網站上的 connect_timeout。您可以調整此資料庫參數的值,以符合查詢和工作負載。

max_allowed_packet 變數值太小,或者查詢需要的記憶體超過您為資料庫執行個體配置的記憶體

依預設,max_allowed_packet 值為 64 MB。如需詳細資訊,請參閱 MySQL 網站上的 max_allowed_packet

如果您使用大型 BLOB 欄或長字串,則增加 max_allowed_packet 的值。如需詳細資訊,請參閱設定 Amazon RDS for MySQL 參數的最佳實務,第 3 部分: 與安全性、作業管理性和連線逾時相關的參數。

對使用 IAM 驗證的連線進行疑難排解

若要連線,請參閱如何允許使用者透過其 Amazon IAM 憑證對 Amazon RDS MySQL 資料庫執行個體進行驗證?

如果無法連線,請參閱為什麼在嘗試使用 IAM 驗證連線至 Amazon RDS for MySQL 時出現「存取被拒絕」錯誤?

對使用 Amazon RDS Proxy 的連線進行疑難排解

若要連線至資料庫叢集,請參閱如何使用 Amazon RDS Proxy 連線到我的 Amazon RDS for MySQL 資料庫執行個體或 Aurora MySQL 相容的資料庫叢集?

如果無法連線至您的資料庫叢集,請參閱為什麼我無法使用 RDS Proxy 連線至 Amazon RDS 資料庫或 Amazon Aurora 資料庫執行個體?

相關資訊

連線至 Amazon Aurora MySQL 資料庫叢集

適用於 MariaDB、MySQL 和 PostgreSQL 的 IAM 資料庫身分驗證

Amazon RDS 的參數群組

如何對使用 VPC 公有或私有子網路之 Amazon RDS 資料庫執行個體的連線問題進行疑難排解?

AWS 官方已更新 2 年前