当数据库完全关闭时,数据库文件保存数据库中所有数据的最新完整副本。但是,当数据库正在运行时,数据库文件通常不是最新或完整的。
只有在刚完成检查点操作时,才能确保数据库文件保存所有数据的最新完整副本。在检查点之后,数据库高速缓存的所有内容都在磁盘上。
数据库服务器在下列条件下对数据库执行检查点操作:
作为数据库关闭操作的一部分
自上一个检查点以来经过的时间超过 -gc 服务器选项的设置
估计的执行恢复操作的时间超过 -gr 服务器选项的设置
数据库服务器空闲的时间长得足以写入所有脏页
某些 DDL 语句(例如 ALTER TABLE、DROP TABLE、DROP INDEX、LOAD TABLE 或 BACKUP)已执行
连接发出 CHECKPOINT 语句
数据库服务器在没有使用事务日志的情况下运行时一个事务被提交
要确保拥有检查点之间的所有已提交事务的完整副本,需要数据库文件和 事务日志。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |