如何用SQL备份和还原数据库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何用SQL备份和还原数据库
教你如何用SQL备份和还原数据库
数据库的备份和恢复
一、备份数据库
1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server
2、SQL Server组-->双击打开你的服务器-->双击打开数据库目录
3、选择你的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择备份
4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后
果原来没有路径和名称则直接选择添加,接着指定路径和文件名,指定后点确定返回备份窗口
确定进行备份
二、还原数据库
1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server
2、SQL Server组-->双击打开你的服务器-->点图标栏的新建数据库图标,新建数据库的名
3、点击新建好的数据库名称-->然后点上面菜单中的工具-->选择恢复数据库
4、在弹出来的窗口中的还原选项中选择从设备-->点选择设备-->点添加-->然后选择你的备
>添加后点确定返回,这时候设备栏应该出现您刚才选择的数据库备份文件名,备份号默认
您对同一个文件做过多次备份,可以点击备份号旁边的查看内容,在复选框中选择最新的一
确定)-->然后点击上方常规旁边的选项按钮
5、在出现的窗口中选择在现有数据库上强制还原,以及在恢复完成状态中选择使数据库可以
无法还原其它事务日志的选项。在窗口的中间部位的将数据库文件还原为这里要按照你SQL
设置(也可以指定自己的目录),逻辑文件名不需要改动,移至物理文件名要根据你所恢复的
做改动,如您的SQL数据库装在D:\Program Files\Microsoft SQL
Server\MSSQL\Dat
按照您恢复机器的目录进行相关改动改动,并且最后的文件名最好改成您当前的数据库名(如zw0001.mdf,现在的数据库是zw0002,就改成zw0002.mdf),日志和数据文件都要按
式做相关的改动(日志的文件名是.ldf结尾的),这里的恢复目录您可以自由设置,前提是该
存在(如您可以指定d:\sqldata\zw0002.mdf或者d: \sqldata\zw0002.ldf),否则恢复
6、修改完成后,点击下面的确定进行恢复,这时会出现一个进度条,提示恢复的
进度,恢复
会自动提示成功,如中间提示报错,请记录下相关的错误内容并询问对SQL操作
比较熟悉的
的错误无非是目录错误或者文件名重复或者文件名错误或者空间不够或者数据库正在使用中的
据库正在使用的错误您可以尝试关闭所有关于SQL窗口然后重新打开进行恢复操作,如果还
用的错误可以将SQL服务停止然后重起看看,至于上述其它的错误一般都能按照
错误内容做
即可恢复
三、设定每日自动备份数据库
1、打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组
开你的服务器
2、然后点上面菜单中的工具-->选择数据库维护计划器
3、下一步选择要进行自动备份的数据-->下一步更新数据优化信息,这里一般不用做选择--
查数据完整性,也一般不选择
4、下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定
5、下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新建一个目录如:d:\data
在这里选择使用此目录,如果您的数据库比较多最好选择为每个数据库建立子目录,然后选
多少天前的备份,一般设定4-7天,这看您的具体备份要求,备份文件扩展名一般都是bak就
6、下一步指定事务日志备份计划,看您的需要做选择-->下一步要生成的报表,一般不做选
步维护计划历史记录,最好用默认的选项-->下一步完成
7、完成后系统很可能会提示Sql Server Agent服务未启动,先点确定完成计划设定,然后找
右边状态栏中的SQL绿色图标,双击点开,在服务中选择Sql Server Agent,然
后点击运行
下方的当启动OS时自动启动服务
8、这个时候数据库计划已经成功的运行了,他将按照您上面的设置进行自动备份SQL备份
-----------------------------------------------------------------------------------
1、SQL数据库恢复模型
-----------------------------------------------------------------------------------
1)完全恢复模型
-----------------
(1)备份时要备份数据库的数据文件和日志文件
(2)还原时使用数据库的备份的数据文件副本和全部日志信息来恢复数据库。
(3)能还原全部数据,并可以将数据库恢复到任意指定的时刻。
(4)为保证实现即时点恢复,对数据库的所有*作都将完整地记入日志,这样,日志占用空间较大,对性
响。
------------------
(2)大容量日志记录恢复模型
------------------
(1)备份时要备份数据库的数据文件和日志文件
(2)还原时使用数据库的备份的数据文件副本和全部日志信息来恢复数据库。
(3)日志中不记录*作细节(如select into、create index等),而只记录*作的最终结果,因此占用日志空
(4)只支持将数据库还原到事务日志备份的时刻,而不支持即时点恢复,因此可能产生数据丢失。
-------------------
(3)简单恢复模型
-------------------
(1)备份时只备份数据文件,还原时也用备份的数据文件恢复数据库。
(2)只能将数据恢复到数据文件备份的时刻,可能产生最多的数据丢失。
(3)不适于生产系统和大规模*作环境下选用。
-----------------------------------------
alter database d1 set recovery simple --设置数据库恢复模型
alter database d1 set recovery bulk_logged
alter database d1 set recovery full
----------------------------------------------------------------------------------
2、备份设备
----------------------------------------------------------------------------------
1)物理设备
---------------------------
disk:支持本地磁盘或者网络备份
tape:支持磁带机备份
name pipe:支持第三方备份软件
---------------------------
2)逻辑设备
---------------------------
永久备份文件:可以重复使用,应该在备份前创建。
临时备份文件:用于一次性备份,在备份时创建。
-------------------------------------------------
exec sp_addumpdevice disk,bak2,e:back_devicebak2.bak --创建永久磁盘备份设备
exec sp_addumpdevice disk,bak3,e:back_devicebak3.bak
------------------------------------------------------------------------------------------------
exec sp_addumpdevice disk,bak4,\sv2backupbak4.bak --创建网络永久磁盘备份设备
exec sp_addumpdevice disk,bak5,\sv2backupbak5.bak
------------------------------------------------------------------------------------------------
exec sp_dropdevice bak5 --删除备份设备
------------------------------------------------------------------------------------------------
backup database d3 to bak3 --将数据库备份到备份设备
backup database d4 to bak4
------------------------------------------------------------------------------------------------