如何将节点Sequelize与Amazon RDS MySQL连接到多个服务器
我正在使用一个支持多AZ的Amazon RDS托管MySQL。只是找不到有关如何将Sequelize正确连接到Amazon RDS的任何信息,以便Sequelize相应地处理故障转移等 我只是使用下面的配置,但不知道这是否足够或推荐如何将节点Sequelize与Amazon RDS MySQL连接到多个服务器,mysql,node.js,amazon-web-services,sequelize.js,amazon-rds,Mysql,Node.js,Amazon Web Services,Sequelize.js,Amazon Rds,我正在使用一个支持多AZ的Amazon RDS托管MySQL。只是找不到有关如何将Sequelize正确连接到Amazon RDS的任何信息,以便Sequelize相应地处理故障转移等 我只是使用下面的配置,但不知道这是否足够或推荐 sequelizeConfig = { logging: false, pool: { maxConnections: 5, maxIdleTime: 30}, sequelizeConfig[dialectOptions] = { ssl: '
sequelizeConfig = {
logging: false,
pool: { maxConnections: 5, maxIdleTime: 30},
sequelizeConfig[dialectOptions] = {
ssl: 'Amazon RDS'
}
}
使用Amazon RDS和多AZ,我认为以下重要:
您没有写任何关于连接处理和池的内容。以下是我如何连接RDS的:
var config = require(__dirname + '/../config/config.json')[env];
// your config file will be in your directory
var sequelize = new Sequelize(config.database, config.username, config.password, {
host: '****.****.us-west-1.rds.amazonaws.com',
port: 5432,
logging: console.log,
maxConcurrentQueries: 100,
dialect: 'postgres',
dialectOptions: {
ssl:'Amazon RDS'
},
pool: { maxConnections: 5, maxIdleTime: 30},
language: 'en'
})
之前的答案对我不起作用,经过一些研究,这个选项对象确实起了作用:
var options = {
host: settings.database.host,
port: settings.database.port,
logging: console.log,
maxConcurrentQueries: 100,
dialect: 'mysql',
ssl: 'Amazon RDS',
pool: { maxConnections: 5, maxIdleTime: 30 },
language: 'en',
}
我在同一默认VPC中运行RDS MySQL和EC2实例,当使用sequelize将来自该EC2的节点应用程序与RDS连接时,此选项对象起作用。您是否让node sequelize.js与Amazon RDS MySQL一起使用?是的,但只使用sequelize,而不是使用迁移的sequelize cli。只需通过环境变量使用常规SQL设置,再加上aws docsI中所述的上述设置即可。真倒霉我们启动了一个EC2实例,并通过安全组连接RDS。您能否提供iam身份验证的其他示例?无论如何,Thx用于快速回复!你在ssl中放了什么?就是那根绳子?是的,我相信。我是一年前做的。为我工作,只是我用了
方言:“mysql”
而不是postgresFYImaxConcurrentQueries
自2014年以来就没有使用过: