源数据库相当大。目标数据库不会自动增长。它们在不同的机器上。
我来自 MS SQL Server,MySQL 背景和 IDS11 似乎过于复杂(我敢肯定,有充分的理由)。
源数据库相当大。目标数据库不会自动增长。它们在不同的机器上。
我来自 MS SQL Server,MySQL 背景和 IDS11 似乎过于复杂(我敢肯定,有充分的理由)。
将数据从一台服务器移动到另一台服务器的一种方法是使用 dbexport 命令备份数据库。
然后在将备份文件复制到目标服务器后运行 dbimport 命令。
要创建新数据库,您需要使用 onmonitor 工具为新数据库创建 DBSpace,此时您可以使用来自其他服务器的现有文件。
然后,您需要使用 dbaccess 工具在目标服务器上创建数据库。dbaccess 工具有一个允许您创建数据库的数据库选项。创建数据库时,您指定要使用的 DBSpace。
源数据库可能由许多块组成,您还需要将它们复制并附加到新数据库。
你有几个选择。
dbexport/dbimport
onunload/onload
HPL(高性能加载程序)选项。
我个人使用过 onunload/onload 和 dbexport/dbimport。我没有使用HPL。我正在使用 IDS 10。
onunload/onload IBM 文档
这是从文档开始的好地方 -->数据库服务器之间的数据迁移
正如其他人所提到的,最简单的方法是 dbexport/dbimport。
最快的方法是使用高性能加载程序 onpload。如果你有很多数据,但表格数量不多,这绝对值得追求。IIUG 网站上有一些零碎的东西可能有助于编写 HPL 脚本以生成您需要的所有配置。
如果两台机器都使用相同版本的 IDS,那么另一种选择是使用 ontape 在一台机器上备份并在另一台机器上恢复。您可以使用 STDIO 选项,然后将备份流式传输到可以从 STDIO 恢复的另一台机器上。
来自“用于高可用性和分布的数据复制”红皮书:
ontape -s -L 0 -F | rsh secondary_server "ontape –p"
您还可以通过主机创建无密码 ssh 连接并以更安全的方式进行传输。
你用过导出工具吗?如果您首先将数据库置于静止模式,然后您可以实际复制 DBSpaces(我认为是 dbspaces 工具......现在已经有几年了),曾经有一种方法。
因为使用informix,您曾经能够指定用于表的DBSpaces(甚至可能在alter table 中?)。
检查 - dbaccess 工具 - 有一个导出命令。
将数据库置于静止模式或关闭,复制 dbspaces,然后附加表,告诉它指向新的 dbspaces 文件。(dbspaces 工具可能值得一看。我这里有手册。它们是 9.2,但它不应该改变太多)。