Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
如果数据库在缺省情况下未启用校验和,此选项用于控制是否对此数据库服务器上所有数据库的写入操作启用校验和。
{ dbeng12 | dbsrv12 } -wc[ + | - ] ...
所有操作系统和服务器。
写入校验和(使用 -wc 选项启用)与全局校验和(创建数据库时启用校验和)之间的差别在于:使用 -wc 时,只有在将数据库页面写出到磁盘时才会对其进行校验和检查。对于从磁盘读取的页,仅验证在将这些页写入之前是否计算了校验和的值。如果数据库已启用校验和,将在写入页时为所有页计算校验和,并且在读取页时为所有页验证校验和。
如果数据库服务器检测到数据库运行于 Windows Mobile 或可移动存储设备(例如网络共享或 USB 设备)上,则数据库服务器会自动为所有数据库页启用全局校验和。
缺省情况下,使用 SQL Anywhere 版本 10 和版本 11 创建的数据库未启用全局校验和。如果在 SQL Anywhere 版本 12 数据库服务器上启动由 SQL Anywhere 11 创建的数据库,则在缺省情况下,当将页写入磁盘时,数据库服务器会为这些页创建写入校验和 (-wc+)。版本 12 的数据库在缺省情况下已启用全局校验和,因此数据库服务器将这些数据库缺省值设置为 -wc-,因为缺省情况下所有数据库页都具有校验和。如果不希望使用缺省的校验和设置,可以使用 -wc 选项或 START DATABASE 语句以更改数据库服务器的校验和行为。
可通过执行以下语句来检查创建数据库时是否启用了全局校验和:
SELECT DB_PROPERTY ( 'Checksum' );
仅可通过执行以下语句来检查是否对写入 I/O 操作启用了写入校验和:
SELECT DB_PROPERTY ( 'WriteChecksum' );