1
1
你问了一个相当复杂的问题却没有意识到。Informix的架构是一个共享的Everything数据库引擎,这意味着该实例中的每个数据库都可以使用该实例可用的所有资源。这意味着在任何给定的dbspace、.dat或.idx文件中,可以有多个数据库存储数据。大多数DBA都知道这一点,但这是值得注意的。根据这些知识,您现在知道.dat和.idx文件不属于数据库,而是属于实例。创建dbspace和文件是为了包含数据库数据,但从技术上讲,它们属于实例。值得注意的是,数据库知道.dat和.idx文件的逻辑dbspace名称。 有了这个背景信息,假设生产和开发服务器运行相同的操作系统,并且您的硬件相对相同,而不是Parisc、Itanium或x86/x64的组合,我将为您提供几个选项。
选项1要求您知道dbspace的名称和大小。使用
选项2只要求两台服务器上的数据文件路径相同。这意味着rootdbs在两个实例中都需要相同。可以通过执行
有很多事情都被遗漏了,但我希望这能给你一些信息,让你能够继续完成你的任务。 |
2
1
.dat和.idx文件与c-isam关联,或者在名为dbase.dbs(其中dbase是数据库的名称)的目录中组织时,.dat和.idx文件与Informix标准引擎关联,也称为Informix SE。SE使用C-ISAM管理其存储。SE与Informix动态服务器(IDS)有很大的不同(而且比后者简单得多)。.dat和.idx文件不可能与ID关联;这是极不可能的。 根据可用的信息,您的生产服务器似乎正在运行SE。要获取从SE到IDS的数据,您可能需要在SE端使用db export,在Linux/IDS端使用db import。当然,这是最简单的方法。 还有其他可能的解决方案——C-ISAM DataBlade就是这样的解决方案之一——但它们更昂贵,而且可能没有必要。还有其他可能的加载解决方案,如HPL(高性能加载程序)。 有关Informix的详细信息,请使用已引用的各种网站( http://www.informix.com 是指向IBM网站Informix部分的链接),或使用 International Informix User Group (IIUG) 网站。有可用的邮件列表(需要您归属,但成员资格是免费的)来详细讨论Informix。 |
3
1
这些Informix SE数据文件(.dat)及其关联的索引文件(.idx)是无用的,除非您还具有所有关联的目录文件,如systables.dat systables.idx、syscolumns、sysindexes等。 然后,您还需要担心哪些版本的Informix SE创建了它们,因为有些版本的索引文件节点大小为2K或4K。 最好的方法是从源数据库中获取所有的.dat和.idx文件,再加上正确的标准引擎,这些引擎安装在源数据库的同一硬件和操作系统上。 长话短说,在源计算机上,运行“dbexport”将所有数据卸载到ASCII文件,并运行“dbschema”生成所有表模式和索引。在将所有文件卸载到ASCII平面文件之前,对所有文件运行“bcheck”也不会造成伤害。 |
4
0
我没有任何特定于Informix的建议,但是对于这种情况,您通常可以通过查找如何移动数据库(一个常见的管理任务,通常在手册中有很好的描述)并跳过将删除旧数据库的步骤来找到答案。 另外,要小心由不同的系统架构引起的问题;如果您再次将某些DBS从一个大端系统(如Solaris)移动到一个小端系统(如x86 Linux),那么移动DB的手册部分将涵盖所需的任何额外步骤。 |
Igor Santos de Lima · 导出要在控制台上运行的函数 6 年前 |
ksroogl · 将MICE对象导入Stata进行分析 6 年前 |
Tyler S · Powershell脚本服务器ping输出 6 年前 |
Austin · 从Excel VBA导出数据以访问 6 年前 |
J Dev · 自定义p:dataTable的导出输出格式 6 年前 |