首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用node.js,我如何在一个MySQL DB中写入并从另一个中读取?

使用node.js,我如何在一个MySQL DB中写入并从另一个中读取?
EN

Stack Overflow用户
提问于 2013-04-09 06:27:48
回答 1查看 2K关注 0票数 4

具体地说,我说的是MySQL Master-Slave(s) Replication。根据我的理解,我的所有读操作都应该从一个从服务器(或隐藏在负载均衡器后面的多个从服务器)进行,而我的所有写操作都应该直接写到主服务器上。

我怎样才能用node.js做到这一点?我正在使用MySQL Active Record包进行数据库查询,我不认为它本身就支持它。我想我可以破解这个包,然后遇到if is write-query, then use db1类型的情况,但我想知道是否有更简单的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-09 06:36:55

您可以像这样创建两个适配器:

代码语言:javascript
复制
var activeRecord = require('mysql-activerecord');
var readDB = new activeRecord.Adapter({
    server: 'slave.db.com',
    username: 'user',
    password: 'pass',
    database: 'db'
});
var writeDB = new activeRecord.Adapter({
    server: 'master.db.com',
    username: 'user',
    password: 'pass',
    database: 'db'
});

当您执行update或其他编写查询时,使用writeDB;当您执行select时,请使用readDB

另一种选择是切换到另一种开箱即用的支持此功能的ORM。我知道这不是一个很好的解决方案。例如,Sequelize被广泛使用,并开箱即用地支持这一点。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15890138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档