数据库维护与故障恢复
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库维护与故障恢复
数据库维护与故障恢复
为确保数据库安全,新思维医院信息管理系统采用了多种安全和应急预防机制,并提供相关的备份、紧缩和应急修复操作,以保障数据库系统的安全、高效和连续,即便在不可预测意外导致数据库损坏时,也可使用专用修复工具,从故障中安全快速且有效地恢复数据。
本文包括:
·Microsoft Access数据库被损坏的原因
·有效防止数据库损坏的方法
·定期或经常性地进行数据库备份和紧缩
·从故障中恢复(修复被损坏的Access数据库)
Microsoft Access数据库被损坏的原因
Microsoft Access数据库文件(.mdb)在某些突发或不可预料事件中可能导致损坏。已知mdb文件损坏的常见原因主要有四个:
●由于写入操作被中断使数据库处于置疑/损坏状态
●网络硬件故障
●在另一个程序中打开和保存 mdb 文件
●计算机病毒
原因之一:由于写入操作被中断使数据库处于置疑/损坏状态
强烈建议通过程序提供的“退出”或“关闭”来正常关闭数据库和结束程序运行。但是,如果非正常终止程序,即Access数据库不正常关闭时,数据库正处于打开状态并正在写数据,则数据库引擎就会将该文件标记为置疑/损坏。如果手动关闭计算机之前没有先关闭Windows 或者断电,也可能会出现这种情况。其它情形还包括:在打开数据库的同时,没有关闭相关程序,但仍干扰数据库引擎向磁盘写入数据。例如,当网络遇到数据冲突或者磁盘驱动器故障时,就会出现这种情况。如果发生任何此类中断,数据库引擎就会将数据库标记为可能已被破坏。
当数据库引擎(Jet)开始写操作时,将设置一个标记,并在操作完成时重新设置该标记。如果写操作被中断,标记保持不变。当您要再次打开数据库时,Jet 确定标记是否已设置并报告数据库是否被破坏。在大多数情况下,数据库中的数据实际上没有被破坏,但设置的标记提醒Jet数据库可能已被破坏。如果是这种情况,压缩和/或修复数据库通常可以还原数据库。
原因之二:网络硬件故障
在这种情况下,数据库文件损坏与数据库引擎无关;文件损坏完全是由于外
界原因造成的。原因可能是由于存放数据库的计算机和打开数据库的计算机之间的硬件链中的一个或多个链接出故障。此列表包括但不局限于网卡、网络电缆、路由器和集线器。
通常,mdb文件指示由硬件造成的损坏不能通过使用压缩、修复或Jetcomp 来还原。直到出故障的硬件被修复或替换,硬件损坏才会被修复。
原因之三:在另一个程序中打开和保存mdb文件
当打开一个mdb文件并在另一个程序中保存时,不能恢复该文件。例如,Microsoft Word 允许打开并保存Access数据库(顺便提一下,如果在另一个应用程序中打开MDB文件,这样做不起任何作用,因为您看到的都是扩展字符)。当这样保存mdb文件时,如果在Access中打开它,就会提示您输入数据库密码,即使文件在Access中从未使用密码保护也是如此。此处出现密码提示的原因是:当Access打开文件时,检查的第一个字节范围就是数据库密码所在的位置。如果该字节包含损坏的数据,Access就会认为该文件受密码保护。即使能够绕过此处的密码提示,数据库仍无法恢复,因为二进制结构是混乱的,Access根本无法读取。在这种情况下,恢复文件的备份副本是唯一的解决方法。
有效防止数据库损坏的方法
●在数据库写入过程中避免断电
断电将使数据库处于置疑状态,建议为计算机备置不间断电源(UPS)
●避免网络连接异常断开
应当使用安全可靠的网络,有故障或时断时续的网络传输环境非常容易导致数据库损坏
●使用正确的网络协议
在网络中,推荐安装使用唯一的TCP/IP协议,避免多种协议同时使用
●避免不正常断开数据库连接
应该避免突然如断电、手动关闭、使用任务管理器关闭终止应用程序等
●经常压缩数据库
经常压缩数据库可以保持数据库的最佳访问效率,减少受损机会
●不要在Windows网络上运行使用IPX/SPX网络协议
在Windows网络上,应该使用TCP/IP协议,不要使用IPX/SPX协议。
●经常备份数据库
当数据库遭受不可恢复的灾难性损坏时,可以使用备份来减少损失。
●避免感染病毒。电脑病毒可能会干扰网络、干扰数据库引擎的数据存取,导致错误。
定期或经常性地进行数据库备份和紧缩
此不提供支持。但是JETCOMP.exe可以压缩Microsoft Jet数据库引擎所支持的任何语言的数据库。尽管JETCOMP.exe是一种可免费分发的实用程序,但是它需要计算机上安装以下产品:
Microsoft Office 97
Microsoft Office 2000
Microsoft Access 97
Microsoft Access 2000
Microsoft Visual Basic 5.0
Microsoft Visual Basic 6.0
包括MS Access 97运行时版的MS Office Developer Edition 97运行时应用程序
包括MS Access 2000运行时版的MS Office Developer 2000 运行时应用程序
包括MS Jet数据库引擎3.5的MS VB 5.0运行时应用程序
包括MS Jet数据库引擎3.5或4.0的MS VB6.0 运行时应用程序
注意:必须确保没有用户在访问数据库,然后才可以运行JETCOMP.exe。
使用JetComp.exe修复数据库
当Access数据库遭受意外损坏时,请按照以下方法使用JetComp.exe进行尝试性修复。
第一步,关闭所有访问Access数据库的程序,确保受损数据库没有被访问第二步,找到受损的数据库文件,记住文件名称(比如FnHISce.MDB)
“医院管理数据库”默认存放在服务器D:,完整路径: