重装操作系统后数据库恢复
- 格式:ppt
- 大小:345.00 KB
- 文档页数:16
数据库恢复技术---恢复内容开始---数据库恢复技术事务:是⽤户定义的⼀个数据库操作序列,这些操作要么全做,要么全不做,是⼀个不可分割的⼯作单位。
事物的 ACID 特性:原⼦性、⼀致性、隔离性、持续性。
恢复的实现技术:建⽴冗余数据 -> 利⽤冗余数据实施数据库恢复。
建⽴冗余数据常⽤技术:数据转储(动态海量转储、动态增量转储、静态海量转储、静态增量转储)、登记⽇志⽂件。
ACID特性1. 原⼦性(Atomicity)⼀个原⼦事务要么完整执⾏,要么⼲脆不执⾏。
这意味着,⼯作单元中的每项任务都必须正确执⾏。
如果有任⼀任务执⾏失败,则整个⼯作单元或事务就会被终⽌。
即此前对数据所作的任何修改都将被撤销。
如果所有任务都被成功执⾏,事务就会被提交,即对数据所作的修改将会是永久性的。
2. ⼀致性(Consistency)⼀致性代表了底层数据存储的完整性。
它必须由事务系统和应⽤开发⼈员共同来保证。
事务系统通过保证事务的原⼦性,隔离性和持久性来满⾜这⼀要求; 应⽤开发⼈员则需要保证数据库有适当的约束(主键,引⽤完整性等),并且⼯作单元中所实现的业务逻辑不会导致数据的不⼀致(即,数据预期所表达的现实业务情况不相⼀致)。
例如,在⼀次转账过程中,从某⼀账户中扣除的⾦额必须与另⼀账户中存⼊的⾦额相等。
3. 隔离性(Isolation)隔离性意味着事务必须在不⼲扰其他进程或事务的前提下独⽴执⾏。
换⾔之,在事务或⼯作单元执⾏完毕之前,其所访问的数据不能受系统其他部分的影响。
当我们编写了⼀条 update 语句,提交到数据库的⼀刹那间,有可能别⼈也提交了⼀条 delete 语句到数据库中。
也许我们都是对同⼀条记录进⾏操作,可以想象,如果不稍加控制,就会出⼤⿇烦来。
我们必须保证数据库操作之间是“隔离”的(线程之间有时也要做到隔离),彼此之间没有任何⼲扰。
4. 持久性(Durability)持久性表⽰在某个事务的执⾏过程中,对数据所作的所有改动都必须在事务成功结束前保存⾄某种物理存储设备。
重装系统后数据库恢复的方法嘿,朋友!你有没有遇到过这种超级头疼的事儿:电脑重装系统了,结果发现数据库没了,就像辛辛苦苦盖的房子突然塌了,数据都埋在里面找不着了,是不是感觉欲哭无泪啊?今天我就来和你唠唠重装系统后数据库恢复的那些事儿。
我有个朋友小李,他就遇到过这倒霉事儿。
他是做小生意的,平时就靠那个数据库存客户信息、订单啥的。
那天电脑中了病毒,没办法只能重装系统。
装完之后,他才意识到数据库没了,整个人就像霜打的茄子一样蔫儿了。
他跑来问我该咋办。
其实呢,如果你在重装系统之前有备份数据库,那可就像手里有一把救命钥匙一样。
对于很多数据库系统,比如MySQL,它有自带的备份和恢复工具。
要是你之前用这些工具做了备份,就可以松口气了。
你就想象这个备份文件是个时光胶囊,里面装着你所有重要的数据。
恢复的时候呢,就按照数据库软件的操作指南,一步步来就行。
就好像你按照地图找宝藏一样,只要步骤没错,就能把数据都找回来。
但是啊,要是像小李那样,之前没有备份,是不是就只能干瞪眼了呢?也不是。
如果你的数据库文件还在原来的磁盘位置,没有被覆盖,那就还有一线生机。
比如说SQL Server数据库,它的数据文件和日志文件可能还在老地方。
这时候你就得像个侦探一样,小心翼翼地去查找这些文件。
找到之后呢,再根据数据库的恢复机制来操作。
不过这可不像走平路那么简单,得有点技术功底才行。
再来说说Oracle数据库吧。
Oracle有一套比较复杂的恢复机制。
如果重装系统后想恢复数据库,你得先搞清楚数据库的存储结构,就像你要了解一个迷宫的布局一样。
如果数据文件还在,你可以尝试使用Oracle 的不完全恢复或者基于时间点的恢复方法。
这就好比你要把一幅打乱的拼图重新拼好,得一块一块地找到正确的位置。
我又想起另一个朋友小张,他在一家小公司做IT维护。
他们公司有个员工不小心重装了系统,数据库没了。
小张就像个超级英雄一样挺身而出。
他先查看了数据库的类型,发现是MySQL的。
用友u8数据恢复方法谈第一种情况:在只有.MDF和.ldf的情况下进行数据库的备份与恢复。
因病毒问题,用友软件无法正常启动.系统管理也不能进入.因此无法正常备份数据,这时就要用到附加数据库了.通过附加数据库使数据库和用友软件相关联,步骤如下:1'把用友软件下的ADMIN文件夹下的内容挎出,主要是*.mdf 和*.ldf文件,就用友通标版2005来说其中包括系统数据UfSystem.MDF和UfSystem.ldf及各账套下的内容.2'重装系统及软件3'把挎备出来的文件复制回原来的位置.4'通过查询分析器SQL语句附加数据库,或者通过企业管理器/服务器/数据库/右键/附加数据库来附加数据库。
<例:通过查询分析器SQL语句--sp_attach_db'ufsystem','D:\UF2000\Admin\ufsystem.mdf','D:\UF2000\Admi n\ufsystem.ldf' //第一行'ufsystem'为系统数据库名,'D:\UF2000\Admin'为物理地址.--sp_detach_db 'ufsystem' //第二行,在第一行执行时提示ufsystem已经存在,因此要删除ufsystem,但要注意,重做的系统要和之前的系统一样.要不就恢复不了。
--sp_attach_db'ufdata_001_2002','D:\UF2000\Admin\ZT001\2002\ufdata.mdf',' D:\UF2000\Admin\ZT001\2002\ufdata.ldf' //第三行'ufdata_001_2002'为001账套2002的数据库。
'D:\UF2000\Admin\ZT001\2002'为物理地址. 其它的账套也是如此。
恢复数据库的几种方法广汉市雒城四小―――王春燕内容提要:随着现代科学技术的飞跃发展,数据库系统已广泛运用各个系统中,尽管数据库系统中采取了各种保护措施来防止数据库的安全和完整性被破坏,保证并行事物的正确执行,但是计算机系统中硬件的故障,软件的错误,操作员的失误以及恶意的破坏仍是不不可避免的,这些故障轻则造成事务非常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此数据库管理系统必须具有把数据库从错误状态中恢复到某一已知的正确状态的功能,这就需要数据库的恢复。
故障的种类一、事务内部的故障事物内部的故障有的是可以通过事物程序本身发现的,有的是不是预期的,不能由事物程序处理的。
例如:学生调校、系或调班事务,这个事务把一个学生从一个校、系(班)转另一个系(班)。
BEGIN TRANSACTION读甲系(班)的余额BALANCE;BALANCE=BALANCE-AMOUNT;(AMOUNT为转校系(班)学生)IF (BLANCE小于0),THEN{打印'人数不足,不能转班';ROLLBACK;(撤销该事务)ELS写回BALANCE1=BALANCE1+AMOUNT;COMMIT;}这个例子所包括的两个更新操作要么全部不做,否则就会使数据库存处于不一致状态.在这段程中,应用程序可以发现并让事物滚回,撤销已做的修改,恢复数据到正确状态。
这类恢复员事物撤销(UNDO)。
这是预期的故障。
事物内部的故障很多是无预期的,是不能由应用程序处理的。
(二)、系统故障系统故障是指系统停止运转的任何事件,使得系统要重新启动。
例如,特定类型的硬件错误(CPU)故障,操作系统故障、DBMS代码错误、突然停电等,这类故障影响正在运行的所有事务,但不破坏数据库。
这时所有的运行事务都非正常终止。
发生系统故障时,一些尚未完成的事务结果可能已送入物理数据库,从而造成数据可能处于不正确状态。
为保证一致性,需要清除这些事务对数据库的所有修改.恢复系统必须在系统重新启动时让所有非正常终止的事务回滚,强行撤销所有未完成事务。
数据库恢复技术有哪些数据库恢复技术有:1、数据转储,即DBA定期将整个数据库复制到磁带或另⼀个磁盘上保存起来的过程。
2、登记⽇志⽂件,⽇志⽂件是⽤来记录事务对数据库的更新操作的⽂件,设⽴⽇志⽂件可以进⾏事务故障恢复、系统故障恢复、协助后备副本本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。
数据库恢复概述 数据库管理系统必须具有把数据库从某⼀错误状态恢复到某⼀已知的正确状态的功能,这就是数据库的恢复。
恢复⼦系统是数据库管理系统的⼀个重要组成部分,⽽且还相当庞⼤,常常占整个系统代码的百分之⼗以上。
数据库系统采⽤的恢复技术是否⾏之有效,不仅对系统的可靠程度起着决定性作⽤,⽽且对系统的运⾏效率也有很⼤影响,是衡量系统性能优劣的重要指标。
<h梵蒂冈介质故障 系统故障称为软故障,介质故障称为硬故障。
硬故障指外存故障,如磁盘损坏、磁头碰撞、瞬时强磁场⼲扰等。
这类故障将破坏数据库或部分数据库,并影响正在存取这部分数据的所有事务。
计算机病毒 总结各类故障,对数据库的影响有两种可能性。
⼀是数据库本⾝被破坏。
⼆是数据库没有被破坏,但数据可能不正确,这时由于事务的运⾏被⾮正常终⽌造成的。
恢复的实现技术恢复机制涉及两个关键问题:1、如何建⽴冗余数据;2、如何利⽤这些冗余数据实施数据库恢复。
建⽴冗余数据最常⽤的技术是数据转储和登记⽇志⽂件。
通常在⼀个数据库系统中,这两种⽅法是⼀起使⽤的。
数据转储数据转储是数据库恢复中采⽤的基本技术。
所谓转储即DBA定期将整个数据库复制到磁带或另⼀个磁盘上保存起来的过程。
这些备⽤的数据成为后备副本或后援副本。
转储可以分为静态转储和动态转储。
静态转储是在系统中⽆运⾏事务时进⾏的转储操作。
即转储操作开始的时刻,数据库处于⼀致性状态,⽽转储期间不允许对数据库的任何存取、修改活动。
显然,静态转储得到的⼀定是⼀个数据⼀致性的副本。
动态转储是指转储期间允许对数据库进⾏存取或修改。
一、数据库恢复理论知识1、数据库恢复:DBMS必须具有把数据库从错误状态恢复到某一已知的正确状态的功能。
2、数据库恢复机制包括“一个数据库恢复子系统”和“一套特定的数据结构”。
而其基本原理是重复存储数据,即“数据冗余(data redundancy)”3、恢复机制涉及两个关键的问题①如何建立冗余数据。
②如何利用这些冗余数据实施数据库恢复。
4、建立冗余数据最常用(也是最基本)的技术就是:数据转储和登陆日志文件。
(一般两种技术一起使用)5、基本概念①数据转储:DBA(Database Administrator)定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程。
这些备用的数据文本称为后备副本或后援副本举例子:假定有三个瞬时时间t1<t2<t3。
其中t1时刻DBMS停止事务的运行而开始进行数据的转储,在到达时间t2的时候转储完毕,当到达t3的时候数据库发生故障,因此为了恢复到数据库发生故障的前一刻t(即t2<t<t3),DBA就要重装数据库后备副本,将数据库恢复到t2时刻的状态,然后重新运行自t2时刻到t3时刻的所有更新事务,这样子就可以完成数据库的恢复。
值得注意的是:转储是十分消耗时间和资源的,所以一般不会频繁运行,一般转储周期(为几小时、几天、也可以是几个月)还得选择适合你当前数据库的那个时间。
从上面中的介绍可以看出:转储需要在停止了所有事务时才可以进行,这种情况我们称之为“静态转储”,为了克服这种转储,数据库另有一种方式为“动态转储”,即转储和用户事务可以并发执行,而且能够恢复到用户事务更新到故障的前一刻。
转储的时候会涉及数据的多少问题:因此会有“海量转储”和“增量转储”两种方式。
海量:即每一次转储全部的数据,而增量:每一次只转储上一次转储后的更新过的数据。
用一张表来简单描述为:②登录日志文件(可以协助或备副本进行介质故障恢复)基本概念:日志文件:是用来记录事务对数据库的更新操作的文件。
CTI 设置支持的操作系统CTI 服务器可以重新安装的操作系统服务器可以重新安装的操作系统::Win2000 ------(手动安装驱动手动安装驱动))WinXP ------(需要驱动显卡需要驱动显卡)) -----推荐 Win2003 ------(系统自动驱动系统自动驱动,,无需手动安装驱动无需手动安装驱动)) -----推荐 CRM 服务器支持的操作系统服务器支持的操作系统::Win2000 ------(手动安装驱动手动安装驱动))Win2003 ------(系统自动驱动系统自动驱动,,无需手动安装驱动无需手动安装驱动)) -----推荐1、备份备份1-1、备份CTITRCTI4.0.0.1如果存放在C 盘下盘下,,则备份至D 盘; TRCTI4.0.0.1如果存放在D 盘下盘下,,则无需备份则无需备份。
1-2、备份录音查看录音路径TRCTI4.0.0.1\ ecpbxcfg.exe备份备份录音文件录音文件录音如果存放在C盘下盘下,,则备份至D盘;录音如果存放在D盘下盘下,,则无需备份则无需备份。
1-3、记录记录流程设置流程设置TRCTI4.0.0.1\IVRSetParam.exe注:备份重点默认流程默认流程;;1、3、5、7…单数通道对应的流程单数通道对应的流程。
1-4、记录记录板卡设置板卡设置TRCTI4.0.0.1\ ShCtiConfig.exe记录板卡逻辑位置记录板卡逻辑位置1-5、记录记录注册信息注册信息TRCTI4.0.0.1\ShowLicense.exe2、安装操作系统安装操作系统安装操作系统,,并且并且打上打上打上补丁补丁补丁;;安装sql server2000企业版,且安装sql server sp4补丁补丁。
说明说明::sql server2000 安装时注意2点:1、 选择本地用户或是域用户,根据公司内网情况来自行选择根据公司内网情况来自行选择,,一定要选择正确选择正确,,否则sql server 无法使用无法使用;;2、 选择sql server 和windows 混合验证模式,且输入sa 密码密码,,建议ctiserver (全国经销商默认密码全国经销商默认密码,,方便技术支持方便技术支持)),不要选择windows 验证验证。
用友数据库的恢复,以999帐套为例因有朋友发邮件问我,只有ufdata的数据库文件如何恢复,下面介绍一下方法,希望对大家有帮助(下面以999为例)用友数据库由ufsystem、ufdata_999_2004组成ufsystem中包含了帐套信息,ufdata中包含了数据信息情况一:(数据库文件及日志文件都在)启动SQL SERVER——查询分析器——附加数据库(use master;EXEC sp_attach_db @dbname = N'ufdata_999_2004'@filename1 = N'd:\ufdata\ufdata_999_2004.mdf'@filename2 = N'd:\ufdata\ufdata_999_2004.ldf')情况二:(数据库文件在,日志文件已坏)1、停止SQL SERVER服务,删除ufdata_999_2004.log2、启动SQL SERVER 服务——查询分析器——3、附加数据库use master;EXEC sp_attach_db @dbname = N'ufdata_999_2004'@filename1 = N'd:\ufdata\ufdata_999_2004.mdf'系统会重建日志,4、摘除数据库:use master;EXEC sp_detach_db @dbname = N'ufdata_999_2004'5、重新附加数据库:use master;EXEC sp_attach_db @dbname = N'ufdata_999_2004'@filename1 = N'd:\ufdata\ufdata_999_2004.mdf'@filename2 = N'd:\ufdata\ufdata_999_2004.ldf'如上操作一般能够解决,(备:还可运行dbcc进行修复)我在增加明细科目时出现这个提示:这是怎么回事?我在系统管理中清除异常任务和单据锁定均不能解决问题。