Amazon web services Sequelize.js AWS RDS未知数据库,尽管向配置传递了有效的数据库标识符

Amazon web services Sequelize.js AWS RDS未知数据库,尽管向配置传递了有效的数据库标识符,amazon-web-services,sequelize.js,amazon-rds,Amazon Web Services,Sequelize.js,Amazon Rds,我正在尝试从我的代码连接到AWS RDS数据库: const { DATABASE_HOSTNAME, DATABASE_BASENAME, // ches DATABASE_USERNAME, DATABASE_PASSWORD, } = process.env; this.sequelize = new Sequelize(DATABASE_BAS

我正在尝试从我的代码连接到AWS RDS数据库:

        const {
            DATABASE_HOSTNAME,
            DATABASE_BASENAME, // ches
            DATABASE_USERNAME,
            DATABASE_PASSWORD,
        } = process.env;

        this.sequelize = new Sequelize(DATABASE_BASENAME, DATABASE_USERNAME, DATABASE_PASSWORD, {
            dialect: 'mysql',
            host: DATABASE_HOSTNAME,
        });

这是我的AWS RDS数据库。但是,当我运行代码时,我得到一个错误:

code: 'ER_BAD_DB_ERROR',
errno: 1049,
sqlState: '42000',
sqlMessage: "Unknown database 'ches'"

我做错了什么?实例配置中的“DB name”字段是否为空是问题的根源?

从屏幕截图可以看出,没有创建默认的DB

DB Name: 
  -
默认情况下,当您设置RDS时,它不会为您创建数据库。相反,您有一个DB实例,它列在
RDS->Databases

设置RDS时,您可以使用提供要创建的数据库的名称,例如
ches
。如果没有这一点,您将有一个没有实际数据库的DB实例


对于现有rds实例,可以使用
mysql
客户端连接实例,使用标准的
create database-ches创建数据库就像在mysql中通常做的那样。

是的,这就是问题的根源。如果创建的RDS实例没有默认数据库,则必须在创建后手动创建数据库。这是通过mysql中的
创建数据库来完成的。我不明白,这已经是mysql数据库的实例了。它列在RDS>数据库中