首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sequelizejs:如何使用分区进行数据库迁移

问sequelizejs:如何使用分区进行数据库迁移
EN

Stack Overflow用户
提问于 2017-06-12 00:16:46
回答 1查看 1.8K关注 0票数 2

数据库,如mysql、mariadb、sql server支持分区。

后缀器支持表分区吗?

从文档中我找不到答案,所以答案是否定的。

有人手动启用它吗?

EN

回答 1

Stack Overflow用户

发布于 2018-10-18 18:34:38

这个问题已经有一段时间了,但我想我应该发布一个答案,以防万一别人在找我。目前,sequelize不支持分区。有一个关于表分区的特性请求,包括将它添加到库中,但是在一年多的时间里没有人被分配给它,也没有标记任何里程碑。

有一个请求请求添加尚未合并的PostgreSQL表分区。在MySQL、MariaDB或Server的特殊情况下,它没有帮助,但可以作为开发add以包含这些平台的功能的起点。

由于我们不太了解这个问题最初想要的结果,我所有可能的解决方案都涉及到一些猜测:

通过在模型中显式定义表名,您可能会使用后缀原始查询手动管理分区。

代码语言:javascript
复制
sequelize.define('my_table', {
...
}, {
  tableName: 'my_explicit_table_name'
});

然后执行类似的操作

代码语言:javascript
复制
sequelize.query("ALTER TABLE IF EXISTS my_explicit_table_name RENAME TO my_table_20181018");
sequelize.query("CREATE TABLE my_explicit_table_name");

如果你想一天一天的间隔分区的话.

可以使用后缀迁移框架方便函数与原始查询相结合来实现类似的功能,以实现某些版本的分区。

不幸的是,由于sequelize只允许为表名指定单个字符串,这两种方法都意味着通过模型失去对基以外任何表的访问权。在每个请求的基础上,可以有一些余地直接更新模型中的表名。

代码语言:javascript
复制
instance.models.my_model.tableName = my_new_tablename

但这纯粹是猜测,没有任何测试来支持它。

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

https://stackoverflow.com/questions/44489873

复制
相关文章

相似问题

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