2008年(239)
分类: Sybase
2008-06-17 23:08:16
数据库日志非常重要。缺省情况下,数据库系统生成所有更新操作的日志信息并进行保存。然而,日志信息的生成和保存,不可避免需要消耗CPU、内存资源,需要磁盘I/O操作以及存放日志信息的磁盘空间。这要对系统的运行性能产生明显影响。
有时候,我们可能只关注数据库系统的处理速度,例如:将其它数据源中的大批量数据插入数据库、删除数据库中的历史数据等等。在这些情况,可以考虑关闭数据库日志,使数据库系统不生成更新处理的操作日志,从而大大地提高系统的执行速度。这可以通过以下的方式来实现:
(1)使整个数据库处于不记日志模式。这时,对数据库中所有表的更新处理都不产生日志信息。
(2)使要处理的表处于不记日志模式。这时,对该表的任何更新处理都不产生日志信息。
(3)使用系统提供的数据导入和导出工具。为了加快数据的导入和导出速度,这些工具对数据库中数据的处理,不会产生日志信息。
如果不生成数据库日志,任何事务的失败都将导致数据库的不一致。在这种情况下,用户必须执行整个数据库系统的恢复,使数据库处于一致状态。由于很容易造成数据库系统的损坏,因此我们一般不建议用户关闭数据库日志进行数据的处理。如果一定要使用这种方式,就必须要做到:
(1)充分了解这种处理方式的后果,并采取有关预防措施,例如:在处理前对整个数据库系统进行完整备份。
(2)在处理时,要防止其他用户在系统中运行更新事务,以避免这些事务的失败而引起整个系统的损坏。