我从客户端获取了一个硬盘驱动器的映像文件,该文件希望从中提取数据库。客户端不知道任何详细信息,只是该数据库曾经安装在创建映像的服务器上。
我发现它是安装了Informix DBS的UNIX系统,但是我找不到任何数据库文件。我不确定Informix的版本,但似乎它是在15年前安装的。
我无法从映像启动。我只是在查看文件。
notifyix数据库文件是否具有扩展名,并且该扩展名是什么?还有其他提示如何识别数据库文件?
这里有很多问题,让我尝试按照对您情况的重要性排序:
从硬盘驱动器映像中提取数据库我假设您对实际数据感兴趣,即各种表,表的行和列等。如果实际上没有informix
软件本身,这几乎是不可能的,因为现代数据库系统没有不能以平面文件或ASCII格式存储数据。一个informix
实例可能有许多数据库,每个数据库将有许多包含数据的表,所有表都以专有的二进制格式存储!分区单个表并将其存储在多个“文件”中也很常见。因此,即使在找到包含数据的相关文件之后,也可能无法检索所有数据。您应该问的问题是此练习的最终目的是什么?
文件名和扩展名informix
数据库以二进制格式存储在存储块文件中,在informix
术语中称为“空间” 。这些文件不需要任何扩展名,并且由用户(数据库管理员)指定文件名。因此,用户可能指定或未指定扩展名。
查找文件的提示查找文件的方法有很多。首先确定informix
软件二进制/可执行文件和配置文件的位置。在informix
安装目录中,将安装目录称为$ INFORMIXDIR informix
。在驱动器中搜索名为oninit
或的二进制文件onstat
。这些文件应由root用户或所有者拥有informix
。这些文件位于中$INFORMIXDIR/bin
。现在我们知道的位置$INFORMIXDIR
。转到$INFORMIXDIR/etc
。这是实例配置文件所在的位置。虽然配置文件不需要具有特定的名称或扩展名,但通常将文件名保留为类似于onconfig
或oncfg
。你也可以做一个grep的ROOTNAME
和ROOTPATH
内$INFORMIXDIR/etc
查找配置文件和根目录根dbspace: grep -rn 'ROOTNAME\|ROOTPATH' *
目录dbspace
是在其中创建系统数据库的块文件,也是在未显式设置为其他数据库的情况下将在其中创建用户数据库的默认文件dbspace
。一旦确定了配置文件,就可以开始深入研究。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句