标签: migration

使用默认分区中已存在的值创建新的表分区

我有下表:

CREATE TABLE orders
(
  info_date  date,
  country_code  VARCHAR,
  order_total   int,
  CONSTRAINT orders_pk PRIMARY KEY (info_date, country_code)
) PARTITION BY LIST (country_code);

CREATE TABLE orders_def PARTITION OF orders DEFAULT;
Run Code Online (Sandbox Code Playgroud)

我插入一些行country_code 'foo',它们最终位于默认分区中。

一段时间后,我决定应该'foo'有自己的分区,我该怎么做?

根据文档:

如果存在 DEFAULT 分区,并且 DEFAULT 分区中存在任何行,否则它们将适合要添加的新分区,则无法添加新分区。


这是我的尝试

begin;
CREATE TEMP TABLE temp_table ON COMMIT DROP AS 
SELECT * FROM orders where country_code = 'foo';
DELETE FROM orders where country_code = 'foo';
CREATE TABLE orders_foo PARTITION OF orders FOR VALUES IN ('foo');
INSERT INTO …
Run Code Online (Sandbox Code Playgroud)

postgresql migration partitioning default-value postgresql-11

4
推荐指数
1
解决办法
2342
查看次数

相当于 MySQL 中的 SQL Server 模式吗?

我有一个正在迁移到 MySQL 的模块化系统。

在 SQL Server 中,存在将表和数据库对象分组在一起的架构概念。例如,所有与用户相关的表都可以放入auth模式中,所有博客表可以放入博客模式中。这意味着我们可以在对象资源管理器中看到这些表名称:

  • 授权用户
  • 授权角色
  • auth.UserRoles
  • 授权令牌
  • 博客.帖子
  • 博客.评论
  • 博客作者

这是一种将事物放在一起并对它们进行排序的巧妙方法,这对于理解数据库和模块化结构非常有帮助,并有助于降低维护成本。

我知道MySQL不支持这个功能。

我还知道我们可以为表名称添加前缀来模仿这种行为。但我想知道这是否是最好的方法?

是否有一种我不知道的已知方法可以实现这一目标?我对 MySQL 还很陌生。

mysql schema sql-server migration

4
推荐指数
1
解决办法
1253
查看次数

管理事务数据库和分析数据库之间的模式更改

您将如何管理影响分析数据库的事务性数据库中的更改?

环境:

  • 事务数据库是当前或接近当前版本的 MySQL。事务数据库的大小似乎在几 TB 左右,但数据库每天的增长只有几百兆。
  • 分析数据库是当前或接近当前版本的蒙德里安

场景:给定一个自动从事务数据库加载数据的分析数据库——当模式更改导致大段数据在数据库事务数据库中重新定位时,也会导致分析数据库发生变化。给我的唯一例子是数据库中事务数据库模式的一小部分发生了变化,据我所知大约有 300 个表;这意味着我猜想通过添加/删除/移动列/表/行,5-10% 的事务数据库模式会以某种方式发生变化,并且在某些情况下,数据的格式会发生全局变化事务数据库。

这个问题的相关元问题。

migration

3
推荐指数
1
解决办法
232
查看次数

字符集数据库迁移

这是我之前发布的帖子的后续问题。我们正在迁移到新的字符集。现在,我是一名程序员,我们有 DBA 将执行这项工作,但我想获得有关该过程的更多信息。我们当前的字符集是 WE8ISO8859P1 并使用 BYTE 字符语义。但是,我们正在迁移到 AL32UTF8。使用 BYTE 语义创建了一个包含 AL32UTF8 字符集的新数据库。DBA 在一些表上运行了一个脚本来检查是否有任何问题(我相信是 CSALTER)。运行脚本后,它说我们表中的某些行将被截断。该表包含一个设置为 4000 BYTES 的 VARCHAR2(BYTE) 列。导致潜在问题的行都包含特殊字符。我的问题是,我们如何在不截断信息的情况下导出/导入数据库中的表?为什么说它会被截断?我的第一个想法是,由于我们更改了字符集,它可能会存储旧数据库表中的某些字符,而不是将其存储到新数据库中时,字符集会占用更多存储空间。

oracle migration character-set

3
推荐指数
1
解决办法
4175
查看次数

如何在“全代理”数据库之间迁移数据?

有一些周期性,这需要完成:

  • 将生产数据库中的数据插入到测试/开发数据库中,以便程序员有新的数据进行测试。
  • 无论出于何种原因,将数据从一个数据库迁移到另一个数据库。

注意:数据库是关系型的。

问题是:

  • 数据库采用“所有 PK 都是代理”策略建模。
  • 将数据从一个数据库移动到另一个数据库涉及编程以避免 PK 值(由序列生成)的冲突。
  • 为了在代理键之间进行“等效”,需要一个将原始数据库表和目标数据库表的 PK 值配对的表。
  • 必须在迁移之前通过匹配业务键(不是 PK,所以不要管理 FK)来创建该表
  • 与具有自然键的表相比,即使是单个表的数据迁移也不是微不足道的。

当所有表都有代理键时,将行从一个数据库复制到另一个数据库的最简单方法是什么?

migration

3
推荐指数
1
解决办法
548
查看次数

Oracle 模式的开源工具比较

我正在寻找一个开源工具来生成 DDL 脚本。许多工具将这些同步脚本称为。我们本质上想比较不同环境的模式(即:DEV 到 QA,QA 到 PROD)以更轻松地管理对象迁移/部署。Oracle 是否存在这样的开源工具?

schema oracle migration deployment ddl

3
推荐指数
1
解决办法
2万
查看次数

将大量数据从 Oracle 迁移/复制到 SQL Server

我在 oracle 数据库中有巨大的表,大约 1 千万+(1000 万+)行,并且想在 sql server 中迁移/复制这些表和数据。

目前我正在为此过程使用 SQL Server 的导入功能。但是这个过程需要一天的时间,花费的时间太多。

有没有更好的办法?这个过程有什么好的结果或步骤(SSIS,任何其他功能步骤)?

oracle migration sql-server-2008-r2

3
推荐指数
1
解决办法
8392
查看次数

迁移涉及双向复制的数据库的最佳方法

我有两个要迁移到 SQL Server 2008 R2 的 SQL Server 2005。

原始服务器对包含一个数据库,它们涉及它们之间的双向事务复制。换句话说,SQL2005ServerA.DatabaseASQL2005ServerB.DatabaseA都涉及双向事务复制。

现在我必须将这些数据库移动到两个新服务器,将它们命名为SQL2008ServerASQL2008ServerB.

这很直接吗?断开应用服务器后,是不是直接备份还原到新的服务器上,然后再重新创建没有快照的复制?

sql-server-2005 migration sql-server-2008-r2 transactional-replication

3
推荐指数
1
解决办法
4576
查看次数

使用 2008 Express 作为中介的 SQL Server 2000-2014 迁移

我们有 SQL Server 2000 标准版,我们正在研究迁移到 SQL Server 2014。我已经知道我需要使用 2008 作为中间步骤。我的问题是,我们是否需要购买许可的 2008,或者 2008 Express 是否有效。2008 版只会简单安装(只要需要恢复到它,然后从它备份),所以我希望 Express 足够好。

sql-server migration

3
推荐指数
1
解决办法
397
查看次数

有:Postgres 数据库文件。需要:功能数据库

我正在运行带有 postgres/postgis 设置的 Ubuntu 14.04,并在一个微弱的时刻删除了 PostgreSQL 9.1(在我升级到 14.04 之前似乎是从 12.04 安装的遗留安装),错误地说服自己我当前的 postgis 设置仅依赖于 9.3。

事实并非如此,更糟糕的是,我在实例运行时将其删除,因此我前往存储库恢复 9.1。

Ubuntu 的存储库没有 14.04 的 PostgreSQL 9.1,所以我从源代码编译,这样我就可以运行 pg_dump 或 pg_upgrade,这需要两者的二进制文件。

但是我当时的问题是,仅仅因为我现在又有了 9.1 的工作版本,这并没有使我的数据库从早期可见。

因此,据我所知,我的数据库文件完好无损,但我需要将它们与我今天安装的新 9.1 服务“挂钩”。我希望它是微不足道的,但它让我难住了几个小时。关于从哪里开始更新配置的任何指示?

postgresql migration postgresql-9.1 postgresql-9.3

3
推荐指数
1
解决办法
211
查看次数