您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

在协调器上替换 IQ_SYSTEM_TEMP 中的 dbfile

要替换损坏的 dbfile,请删除该文件,重新启动服务器并在协调器中添加该 dbfile。

过程

  1. 使用 -iqnotemp 参数启动数据库。运行 -iqnotemp时,唯一允许对某一数据库执行的临时文件操作是,删除一个或多个临时文件定义。

  1. 删除 IQ_SYSTEM_TEMP 中最后一个文件:ALTER DBSPACE IQ_SYSTEM_TEMP DROP FILE

  1. 停止数据库。

  1. 以单节点模式启动数据库,不使用任何文件,以清空检查点日志:start_iq @params.cfg mpxtest.db -iqmpx_ov 1-iqmpx_sn 1 -n mpxnode_c

  1. 向协调器添加一个“虚拟”dbfile。您需要在协调器模式下删除此文件并再次添加,这是由于单节点模式下添加的文件对应的服务器 ID 为空值;这些文件由协调器所有,并不属于添加文件的服务器。若要将更多空间添加到 IQ_SYSTEM_MAIN 并将新文件保存在原始设备上,请使用类似下面的语法,其中 是新 dbfile 的逻辑名或所选逻辑名。平台语法UNIXALTER DBSPACE IQ_SYSTEM_TEMP ADD FILE '/dev/rdsk/c4t600A0B80005A7F5D0000024'WindowsALTER DBSPACE IQ_SYSTEM_TEMP ADD FILE '\\.\PhysicalDrive3'

  1. 停止并重新启动服务器。

  1. 删除虚拟文件。