SQL...什么是数据库的检查点(数据库检查点的作用)

SQL...什么是数据库的检查点(数据库检查点的作用),第1张

CKPTisresponsiblefor:

61SignalingDBWnatcheckpoints

61Updatingdatafileheaderswith

checkpointinformation

61Updatingcontrolfileswith

checkpointinformation

BackgroundProcessesandRecovery:Checkpoint(CKPT)

Tounderstandinstancerecovery,youneedtounderstandthefunctioningofcertainbackground

processes

Everythreeseconds(ormorefrequently),theCKPTprocessstoresdatainthecontrolfileto

documentwhichmodifieddatablocksDBWnhaswrittenfromtheSGAtodiskThisiscalleda

“checkpoint”Thepurposeofacheckpointistoidentifythatplaceintheonlineredologfile

whereinstancerecoveryistobegin(whichiscalledthe“checkpointposition”)

Intheeventofalogswitch,theCKPTprocessalsowritesthischeckpointinformationtothe

headersofdatafiles

Checkpointsexistforthefollowingreasons:

61Toensurethatmodifieddatablocksinmemoryarewrittentothediskregularlysothatdata

isnotlostincaseofasystemordatabasefailure

61TorecethetimerequiredforinstancerecoveryOnlytheonlineredologfileentries

followingthelastcheckpointneedtobeprocessedforrecovery

61Toensurethatallcommitteddatahasbeenwrittentodatafilesringshutdown

ThecheckpointinformationwrittenbytheCKPTprocessincludescheckpointposition,system

changenumber,locationintheonlineredologfiletobeginrecovery,informationaboutlogs,andsoon

ORACLECHECKPOINT的作用

checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。

我们知道了checkpoint会刷新脏数据,但什么时候会发生checkpoint呢?以下几种情况会触发checkpoint。

1当发生日志组切换的时候

2当符合LOG_CHECKPOINT_TIMEOUT,LOG_CHECKPOINT_INTERVAL,fast_start_io_target,fast_start_mttr_target参数设置的时候

3当运行ALTERSYSTEMSWITCHLOGFILE的时候

4当运行ALTERSYSTEMCHECKPOINT的时候

5当运行altertablespaceXXXbeginbackup,endbackup的时候

6当运行altertablespace,datafileoffline的时候;

你再好好看看文档吧

LOg ON 的中文意思是:开始工作\x0d\在数据库中,log on用在建数据库的时候(创建日志的时候用)。\x0d\例如:\x0d\create datebase Mydb\x0d\on\x0d\(\x0d\name = "Mydb_data",\x0d\filename = "D:\project\Mydb_datamdf"\x0d\)\x0d\log on\x0d\(\x0d\name = "Mydb_log",\x0d\filename = "D:\project\Mydb_logldf"\x0d\)

首先确认数据库恢复模型是否为 simple, 如果不是,那么需要先备份日志(或者临时将数据库恢复模型改为 simple),日志空间才能回收再使用

回放日志文件未用空间(释放给磁盘),可以使用 dbcc shrinkfile(日志文件逻辑名, emptyfile)

在导入前,我们手头上需要有数据库的备份文件。一般情况下有2种,一种是通过企业管理器备份出来的SQL文件,只有一个文件。还有一种就是数据库的源文件,有2个,分别是mdf和ldf文件,也就是数据库的数据文件和日志文件。

2

有的客户只有这2种备份文件的其中一种,针对不同的情况,我们可以采取不同的备份方式。当然我们必须确保数据库备份文件是完整的没有损坏的。

END

步骤/方法

假如你的空间商用的是星外虚拟主机管理系统,这种系统支持第一种备份文件的还原和导入。星外系统的数据库导入分为5个步骤,大家直接到空间商的数据库管理里面就可以看到,这里不再叙述,发个截图给大家看。

如果你只有数据库源文件,也就是有mdf 和ldf文件。可以直接把SQLServer暂停,然后用备份的源文件覆盖现在的初始源文件,然后启动SQLServer。注意这种办法要先开通这个数据库,保持源文件名要一致,这样才能直接覆盖。

还有一种办法就是附加数据库,把mdf和ldf文件直接附加,系统会自动生成一个数据库。下面是截图:如果你的空间商一定要第一种备份文件才能还原,可以先通过这种附加方法把数据库生成,然后在企业管理器中导出备份文件即可。注意上面的附加为:项目要写准备还原的数据库名称。

用SQL网页管理器导入备份文件。这种办法需要先安装一个web界面的SQLServer管理器,类似于管理MySQL的PHPmyadmin,应该网上有下

use

databaseName

go

select

columnName1

from

tableName2

where

columName

like

'%log%'

databaseName

是表示使用数据库名称

columName1

表示需要搜出的列名

columnName2

表示条件列名

以上就是关于SQL...什么是数据库的检查点(数据库检查点的作用)全部的内容,包括:SQL...什么是数据库的检查点(数据库检查点的作用)、在数据库中“LOG ON”是什么意思怎么用、如何清理sqlserver 2008 数据库log等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9833583.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存