另外,当trunc.log on chkpt数据库选项设为 TRUE 时,会停止交易记录文件的记录。这也可改善大量复制的效能,但也代表当系统发生故障时,就无法执行向前复原或复原。 ________________________________________ 注意 您应该只在最初建立数据库,并且有将大量数据加载至数据库的需求时才将trunc.log on chkpt设为 TRUE,停止交易记录文件的记录会影响整个数据库,并会导致系统在发生问题时无法复原。因此在正常操作的情况下,如果「复原」这个项目对系统很重要,就不应该使用这个选项。如果已经将trunc.log on chkpt设为 TRUE,在完成加载操作后要记得将选项在设定为 FALSE。 ________________________________________ trunc.log on chkpt可用sp_dboption设定,语法如下: exec sp_dboptiondatabase_name, "trunc. log on chkpt", TRUE ________________________________________ 说明 您可以在数据库 属性 窗口中的 选项 卷标页设定更多的选项,如图 24-1 所示。 限制存取 可以限制对特定角色或单一使用者存取数据库; 只读 设定不允许写入数据库。 预设为ANSI NULL 指定在预设状态下,数据库的数据行是否定义为 NULL 或 NOT NULL; 重复触发程序 让触发程序可以递归的触发; 自动更新统计资料 可让 SQL Server 在查询最佳化过程自动重建过期的统计资料; 损毁页侦测 可侦测到不完全的分页; 自动关闭 指定数据库将在其资源被释出并且所有使用者离开之后关闭; 自动压缩 指定 SQL Server 将会周期性的压缩数据库档案; 自动产生统计资料 指定查询最佳化所需的任何遗失统计数据将在最佳化过程中自动建立; 使用引号识别项 选取这个选项指定双引号只能用于识别项,例如数据行与数据表名称,而字符字符串必须括在单引号中。 ________________________________________ 锁定选项
使用table lock on bulk load选项还可改善大量复制的效能,在大量复制运作模式下,这个选项以单一数据表锁定取代多个数据列锁定。使用sp_tableoption来设定table lock on bulk load,参数的设定如下: exec sp_tableoption "table_name", "table lock on bulk load", TRUE 加载完成后,记得要重新设定trunc.log on chkpt的参数。由于table lock on bulk load选项只有在大量复制时,才会影响数据表的锁定模式,所以当您没有执行大量复制时,不会降低执行效能。