答案1
答案2
你在第二张截图中圈出的名字不是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;
或使用 DB 工具中的某些对话框。
获得数据库名称后,您就可以在连接对话框或者用USE whatever;
然后你终于可以创建表格。
希望有帮助:)
答案3
在我的情况下,数据库名称为空,所以在连接 MySQL 客户端时我将其留空。
答案4
我在尝试将 PHP 登录连接到 AWS MySQL 数据库时遇到了这个问题,我误将 DB 标识符当作数据库名称,表单拒绝连接,直到我删除数据库名称。