如何最大限度防止突然停电引起数据库损坏?

jingzu 2007-07-16 09:50:34
我用过很多数据库,如access,fb,ib,sqlite3,mysql,在突然停电的情况下,都有不同几率引起数据库损坏,且是致命的,无法修复。如何最大限度防止突然停电引起数据库损坏?希望数据库高手把经验介绍一下,谢谢了。
...全文
2934 52 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
52 条回复
切换为时间正序
请发表友善的回复…
发表回复
fatmouse 2008-06-11
  • 打赏
  • 举报
回复
看过《虎胆龙威四》没有?里面的IT高手用的也是备用电源(UPS+发电机)
flowlight 2008-06-08
  • 打赏
  • 举报
回复 1
晕,上边一堆不懂装懂的家伙在误导楼主
无人值守系统,UPS能够起到的作用有限
该问题的解决需要依赖于数据库底层的文件存储结构机制,也就是冗余安全机制,MSSQL,ORACLE这方面做得很好
如果使用文件存储结构较为简单的数据库,不是采用冗余安全机制的数据库
可以使用双数据库来实现在应用层面的冗余安全机制
虽然在数据库级别没有提供冗余安全,但可在应用层面来自建双机冗余热备

解决楼主问题的答案就是"双机热备"这个技术,去查一下相关资料和原理

我们公司使用SQLite在嵌入式设备当中,需要很高的安全性
使用双数据库冗余,理论上是安全的,并经过上万次各种异常掉电测试,数据库总是可以安全
在实际上万个设备在各个项目中使用,均未出现冗余的两个数据库在微观上的同一时刻同时损坏的现象
houyichong 2007-08-03
  • 打赏
  • 举报
回复
总结一下:
1UPS
2磁盘阵列(硬件角度)
2实时复制(软件角度,不过多用了一台计算机)
xiaoxinghappy 2007-07-25
  • 打赏
  • 举报
回复
UPS
咖啡色的浪漫 2007-07-24
  • 打赏
  • 举报
回复
UPS.

从软件的角度...不要使用常连接.
尽量减少数据库读写的时间...以降低停电时数据库文件打开的概率.
读数据尽可能的使用缓存数据.


同意
hydonlee 2007-07-22
  • 打赏
  • 举报
回复
UPS.

从软件的角度...不要使用常连接.
尽量减少数据库读写的时间...以降低停电时数据库文件打开的概率.
读数据尽可能的使用缓存数据.
LWWANDVB 2007-07-21
  • 打赏
  • 举报
回复
使用事务+断开式链接
rodgerkong 2007-07-19
  • 打赏
  • 举报
回复
MSSQL, Oracal,DB2之类的DBMS从设计上就保障了突发故障时的的数据完整性,DBMS通常使用事务日志来保存每步的操作,并且使用优化设计的存储方案,使之能在突发事件之后,只要磁盘没有物理损坏,DBMS都能从事务日志中恢复以前的操作,保障数据完整。
jingzu 2007-07-19
  • 打赏
  • 举报
回复
程序当然不能保证数据库损坏,我是说最大限度,感谢rodgerkong(Rodger)给予指导。
Ms SQL停电就不容易损坏吗?使用MSSQL来谈谈经验。
ling81327 2007-07-19
  • 打赏
  • 举报
回复
自己发电。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
itlive 2007-07-19
  • 打赏
  • 举报
回复
第一数据库本身应该有一些设计来确保数据的完整性
第二,UPS是不可缺少的,在断电后,利用UPS持续供电的时间内,处理好相关工作.
仙侣步惊云 2007-07-19
  • 打赏
  • 举报
回复
sql server\oracle\sybase 等企业级数据库一般不会受突然停电的损坏,即使你正在进行数据库读写操作.
zwf110x 2007-07-19
  • 打赏
  • 举报
回复
又学了一招
sdzeng 2007-07-18
  • 打赏
  • 举报
回复
再牛X的软件,都有可能丢数据
想用软件去解决硬件问题,思路就有问题
sdzeng 2007-07-18
  • 打赏
  • 举报
回复
应该是UPS+双机热备
sdzeng 2007-07-18
  • 打赏
  • 举报
回复
双机热备
unif000 2007-07-18
  • 打赏
  • 举报
回复
路过,学习一下!
newfang 2007-07-18
  • 打赏
  • 举报
回复
UPS是最经济又省事的选择~~
个人感觉UPS + RAID就足够了,有条件的话再上个双机热备...
newfang 2007-07-18
  • 打赏
  • 举报
回复
再加磁盘阵列~~
jozosoft 2007-07-18
  • 打赏
  • 举报
回复
1、先写几个asp网页
2、和电网公司的人拉好关系,要他们准备停电时就点一下你网页上的按钮,更新某个字段值;
3、在你的服务器上用一个程序即时监视网页所访问的值,并判断否自动关机。
加载更多回复(32)

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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