Mysql
嘗試連接到 AWS RDS 實例時出現未知數據庫
我創建了一個 MySQL RDS 實例,但是,當我嘗試在不寫入數據庫名稱的情況下進行連接時,它會連接但不允許我創建任何表。當我寫名字時,連接失敗,我不知道為什麼。
錯誤
我有我的端點、使用者、密碼和數據庫的名稱,即
prueba
(西班牙語測試)AWS 控制台
如您所見,實例的名稱是“prueba”。當它要求我在控制台中輸入數據庫的名稱時,我也寫了“prueba”
創建 RDS 實例時,有一個“附加配置”部分,您可以在其中指定數據庫名稱,並警告您如果未提供名稱,則預設情況下不會創建數據庫。
但正如其他人指出的那樣,您可以使用您選擇的工具而不使用數據庫名稱進行連接,執行
CREATE DATABASE xxx;
wherexxx
是數據庫的名稱,然後使用可以繼續使用該數據庫。
您在第二個螢幕截圖中圈出的名稱不是mysql 數據庫名稱,它只是您的數據庫實例在 AWS 中的標識符,即端點名稱。這些可能不一樣!
由於在不指定MySQL 數據庫名稱的情況下登錄有效,這意味著您的連接和憑據是正確的。您無法創建表,因為您沒有選擇創建這些表的數據庫。
那麼為什麼不能使用指定的數據庫名稱進行連接呢?
我懷疑您在設置 RDS 實例時由 AWS 創建的預設數據庫名稱
prueba
不是其他名稱。您應該能夠在 RDS 詳細資訊選項卡中找到您:請注意,我的端點名稱是
prueba
但MySQL 數據庫名稱是something
.我可以登錄到 RDS 並列出數據庫:
~ $ mysql -h prueba.xxxxxxxxxx.ap-southeast-2.rds.amazonaws.com -uroot -p Enter password: Server version: 5.6.40 Source distribution MySQL [(none)]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | innodb | | mysql | | performance_schema | | something | <<<< Here is my "default" database | sys | +--------------------+ 6 rows in set (0.04 sec)
所以總結一下 - 你必須弄清楚你的實際 mysql 數據庫名稱:
- 找出您在從 RDS 詳細資訊螢幕創建實例時指定的預設數據庫名稱,或者
- 通過在沒有指定數據庫名稱的情況下登錄然後執行來找出**
SHOW DATABASES;
**數據庫名稱,或者- 使用
CREATE DATABASE whatever;
或使用數據庫工具中的某些對話框創建一個新的。獲得數據庫名稱後,您可以在連接對話框中或使用連接到它
USE whatever;
,然後您最終可以創建表。希望有幫助:)