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

向共享 dbspace 添加 dbfile

使用 Interactive SQL 中的 ALTER DATABASE ADD FILE 语句向共享 dbspace 添加 dbfile。

先决条件

向 IQ_SHARED_TEMP 添加空间时,需考虑分布式查询处理工作负载。IQ_SHARED_TEMP 上的 dbspace 命令需要 MANAGE ANY DBSPACE 系统特权。

过程

  1. 连接到协调器。警告不能使用 -iqro 在单节点模式 (-iqmpx_sn 1) 下启动协调器,否则添加文件将返回错误 SQL Anywhere 错误 -757:只读数据库不允许修改。

  1. 添加文件。在 ADD FILE 子句中,指定原始设备的完整路径或软链接:平台语法UNIXALTER DBSPACE IQ_SHARED_TEMP ADD FILE mydbfilename'/dev/rdsk/c4t600A0B80005A7F5D0000024'使用软链接的相同命令:ALTER DBSPACE IQ_SHARED_TEMP ADD FILE mydbfilename'store/userdb1'WindowsALTER DBSPACE IQ_SHARED_TEMP ADD FILE mydbfilename'\\\\.\\PhysicalDrive2'不必同步或重新启动任何辅助服务器。

  1. 确认文件对所有辅助节点可见:sp_iqmpxfilestatus

  1. IQ_SYSTEM_MAIN 上的共享文件和用户主 dbspace 为隐式读写模式。IQ_SHARED_TEMP 上的 dbfile 创建为只读。如果该 dbfile 位于共享临时 dbspace,应将新文件更改为读写状态:ALTER DBSPACE IQ_SHARED_TEMP ALTER FILE mydbfilenameREADWRITE

    结果

    如果一个或多个节点返回关于文件状态的错误,可运行 sp_iqmpxfilestatus 过程排除故障并改正问题。如果需要推迟问题更正,可强制将 IQ_SHARED_TEMP dbfile 设置为读写状态:

    ALTER DBSPACE IQ_SHARED_TEMP ALTER FILE mydbfilename
    

    FORCE READWRITE

    在 IQ_SYSTEM_MAIN 和用户主 dbfile 上使用 FORCE READWRITE 子句将返回错误。