关于checkpoint

laowei 2003-04-22 11:59:42
各大数据库厂商对checkpoint的处理大致相同,但还是有一些区别。

前不久和某位oracle的售前聊天,他说oracle的checkpoint不会影响任何数据库操作,
checkpoint不会锁表,我不相信,他也说不出怎么实现的。
我个人认为这是数据库理论一直以来的难题,oracle什么时候解决了?
本人不太熟悉oracle的checkpoint内部机制。请教高手指点一二。
...全文
180 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
penitent 2003-04-24
  • 打赏
  • 举报
回复
建议了解oracle的结构与后台进程的关系
--------------------
oracle数据库的安全是LGWR保证的。
CKPT仅仅是一个底层的后台进程,促使DBWR写内存数据并同步数据文件与控制文件而已。
laowei 2003-04-23
  • 打赏
  • 举报
回复
checkpoint是用于减少instance recovery的时间,但问题是如何做才能保证数据库在任何时间(checkpoint的前中后)崩溃都不影响到数据的安全,在做checkpoint时会不会发生锁表?一般的技术手册都会避而不谈,因为大多数时候checkpoint的时间都在秒级。就此,一些厂商借用了模糊数学的原理,发明了模糊checkpoint.但是还没有彻底解决锁表问题。请教高手指点。
jiezhi 2003-04-23
  • 打赏
  • 举报
回复
Checkpoint很多单位只是简单的控制端口和禁止非法的ip访问。
对数据库是有影响的,我曾遇到过这样的情况:
有防火墙(把所有端口都放开):不能连接数据库
没有防火墙(不通过防火墙):可以连接数据库

------------------------
| |
| 相逢何必曾相识 |
| |
------------------------
hrb_qiuyb 2003-04-22
  • 打赏
  • 举报
回复
checkpoint是一个event,它用于减少instance recovery的时间,当checkpoint发生时,它会触发DBWR进程把database buffer中的变化了的数据写入数据文件,同时chpk进程更新control file和datafile header,以使它们保持一致。
checkpoint不会影响任何数据库操作是不影响数据库的操作,但oracle售先的说法也有一些问题,因为过于频繁的checkpoint会出现磁盘竞争,因为它促使dbwr频繁的写,同时它又要更新数据文件的头部。
penitent 2003-04-22
  • 打赏
  • 举报
回复
checkpoint是一个后台进程
oracle的锁本来就不耗费资源,CKPT后台进程只不过把内存数据写到磁盘,然后同步数据文件,控制文件与联机日志,没有发生普通锁,但有内部锁(latch)。
每个数据库对锁与checkpoint的处理还是有很大差别的。
他说oracle的checkpoint不会影响任何数据库操作这个是错误的。CKPT如果不好好控制,就会引起数据库的等待,数据库性能变差

3,490

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧