1. sql SERVER恢复策略
Microsoft SQL Server的数据库备份和恢复策略
一、概述
备份和恢复是数据库管理员维护数据库安全性和完整性的重要操作。备份是恢复数据库最容易和最能防止意外的保证方法。没有备份,所有的数据都可能会丢失。备份可以防止表和数据库遭受破坏、介质失效或用户错误而造成数据灾难。恢复是在意外发生后,利用备份来恢复数据库的操作。
Microsoft SQL Server数据库中对于数据的备份和恢复有几种不同的方法,本人结合以往的一些经验,对其归纳如下。
二、常用的备份和恢复数据库的方法
1、Microsoft SQL Server中的备份和恢复:
1)备份类型,分别为:
•数据库备份(Database Backups)
•事务日志备份(Transaction Log Backup)
•差异备份(Differential Database Backups)
•文件和文件组备份(File and File Group Backup)
A.数据库备份(Database Backups)
数据库备份是指对数据库的完整备份,包括所有的数据以及数据库对象。实际上备份数据库过程就是首先将事务日志写到磁盘上,然后根据事务创建相同的数据库和数据库对象以及拷贝数据的过程。由于是对数据库的完全备份,所以这种备份类型不仅速度较慢,而且将占用大量磁盘空间。
B.事务日志备份(Transaction Log Backup)
事务日志备份是指对数据库发生的事务进行备份,包括从上次进行事务日志备份、差异备份和数据库完全备份之后,所有已经完成的事务。
C.差异备份(Differential Database Backups)
差异备份是指将最近一次数据库备份以来发生的数据变化备份起来,因此差异备份实际上是一种增量数据库备份。与完整数据库备份相比,差异备份由于备份的数据量较小,所以备份和恢复所用的时间较短。但是它却无法像事务日志备份那样提供到失败点的无数据损失备份。
D.文件和文件组备份(File and File Group Backup)
文件或文件组备份是指对数据库文件或文件夹进行备份,但其不像完整的数据库备份那样同时也进行事务日志备份。使用该备份方法可提高数据库恢复的速度,因为其仅对遭到破坏的文件或文件组进行恢复。
2)数据库恢复模式
•简单恢复(SimpleRecovery)
•完全恢复(Full Recovery)
•批日志恢复(Bulk-logged Recovery)
A.简单恢复(Simple Recovery)
所谓简单恢复就是指在进行数据库恢复时仅使用了数据库备份或差异备份,而不涉及事务日志备份。简单恢复模式可使数据库恢复到上一次备份的状态,但由于不使用事务日志备份来进行恢复,所以无法将数据库恢复到失败点状态。
B.完全恢复(Full Recovery)
完全数据库恢复模式是指通过使用数据库备份和事务日志备份将数据库恢复到发生失败的时刻,因此几乎不造成任何数据丢失,这成为对付因存储介质损坏而数据丢失的最佳方法。
C.批日志恢复(Bulk-logged Recovery)
批日志恢复在性能上要优于简单恢复和完全恢复模式,它能尽最大努力减少批操作所需要的存储空间。
2、使用SQL SERVER的管理器ENTERPRISE MANAGER进行备份和恢复
1)完全手工方式。
在这种方式下,选择要备份和恢复的数据库,单击鼠标右键,在快捷菜单中的“ALL TASKS”下选择备份或者恢复数据库。
2)半手工方式。
这种方式就是管理员事先建立备份或者恢复数据库的作业,待到备份或者恢复数据库的时候,管理员打开“SQL SERVER ENTEPRISE MANAGER”,在“MANAGER”里找到相应的作业,然后执行之。
3)全自动方式。
在数据库管理器里面,管理员事先建立好恢复或者备份数据库的作业,然后定制一个执行计划,让计算机在特定的条件下自己执行备份和恢复操作。
作业是ENTERPRISE MANAGER提供的一种定期处理数据的一种方法,前面提到的半手工方式和全自动方式虽然利用了作业,但它需要在ENTERPRISE MANAGER里启动和关闭作业;现在还可以在应用程序客户端启动和关闭作业的机制以作业机制实现数据库的恢复和备份,就是事先在建立备份和恢复数据库的作业,在应用程序客户端用控制体启动相应的执行体来实现之。用这种方式实现数据库的备份和恢复,用户不必打开数据库管理器进行操作,用户可以在任何一个应用程序客户端完成操作。
3、异机备份策略
在局域网内的任何一台工作站计算机上安装Microsoft Windows NT及Microsoft SQL Server,并在该机上建立一个与服务器中的数据库同名的数据库,利用Microsoft SQL Server系统本身提供的异机传送工具(在Microsof SQL Enterprise Manager中的Tools菜单下的Database/Object Transfer)通过设置定时(可以是每周、每月、每日或每时)由计算机自动的把服务器中数据库的数据传送到该工作站机的数据库中,这样一旦服务器(操作系统)崩溃或Microsoft SQL Server系统崩溃时,只要重装服务器操作系统(Microsoft Windows NT)或重装Microsoft SQL Server仍然可以采用异机传送工具来通过该工作站机把数据传回至服务器的Microsoft SQL Server数据库中,以确保数据的安全恢复。
三、比较
上述这三种备份和恢复的方式,分别是在SQL Server之内、SQL SERVER的管理器中和异机中实现的。
SQL Server中的备份和恢复是数据库本身的一个功能,而且其提供了不同级别的备份和恢复策略,是一种比较完善的数据库安全保护措施,但由于此操作只能在数据库管理器中进行,所以对于人员和设备的要求比较高,仅限于有限个人和机器可以操作,所以操作起来有一定的局限性。
SQL SERVER的管理器中的备份和恢复可以利用作业机制在任何一个应用程序客户端完成操作,打破了我们常规对大型数据库备份和恢复必须在数据库管理器里进行的局限性,为在应用程序客户端实现复杂的数据库维护提供了一个思路,也大大方便了用户的操作。但是由于这种操作的方便性,也决定了其有一定的不安全性。
异机中的备份和恢复是最安全最可靠的方式,而且对于数据库的恢复来说也是最方便的一种,它完全避免了任何形式的数据损毁的威胁,特别是针对服务器崩溃和Microsoft SQL Server系统崩溃,其恢复效果是很理想的。因此对于一些重要的大型数据库来说是很可取的。但是由于成本较高,采用这种方法对于一些较小型的数据库系统是比较难以实现的。
四、结论
上述的三种方式都是数据库备份和恢复较为常用的一些方法,虽然各自实现的方式不同,但都达到了保护数据安全的目的。所以本人认为这三种方法都是可取的。
但是对于具体的案例,还需要仔细考虑各自系统的特性和方法的可操作性,例如一般中小型的数据库,网内工作站计算机的分布范围不是很大(象一座大厦内),距离服务器的比较近时,采用Microsoft SQL Server内的备份恢复策略就完全可以解决问题;而对于一些服务器距离较远的数据库系统,人员无法常常去到服务器所在地去实施备份和恢复的,采用SQL SERVER的管理器中的策略就很理想;再者对于数据库内数据比较庞大,恢复起来需要一定的时间的,就不防采用异机备份的策略,可以大大降低因系统崩溃所带来的损失。
总之,事物总有其两面性,没有哪种方法是适用于任何情况的,我们应该在实际工作中多总结、归纳,逐渐摸索出最适合自身系统的一种解决方案,这样才能使我们的工作顺利开展
2. SQL数据库如何还原
把数据库的备份文件放到服务器的任意目录下先,
然后按下面的步骤做。
如何从备份设备还原备份(企业管理器)
从备份设备还原备份
展开服务器组,然后展开服务器。
展开"数据库"文件夹,右击数据库,指向"所有任务"子菜单,然后单击"还原数据库"命令。
在"还原为数据库"框中,如果要还原的数据库名称与显示的默认数据库名称不同,请在其中进行输入或选择。若要用新名称还原数据库,请输入新的数据库名称。
说明
为数据库指定新名称将自动为从数据库备份中还原的数据库文件指定新名称。
单击"从设备",然后单击"选择设备"。
在"还原自"下,单击"磁带"或"磁盘",然后选择还原设备。
如果没有出现设备,则单击"添加"以添加现有的备份设备或创建新的备份设备。在"还原数据库"对话框内,单击"查看内容"并选择要还原的备份集。
说明
此选项将扫描备份集以获得备份内容信息,该操作可能需要花费较长时间,特别是在使用磁带设备时。如果已经知道要还原的备份集,则在"备份号"中输入备份集编号。
在"还原备份集"下执行下列操作之一:
单击"数据库
—
完全"还原数据库备份。
单击"数据库
—
差异"还原差异数据库备份。
单击"事务日志"应用事务日志备份。
单击"文件或文件组"还原文件或文件组备份。指定文件或文件组的名称。
单击"选项"选项卡,然后执行下列操作之一:(可选)
单击"使数据库可以继续运行,但无法还原其它事务日志",如果没有其它要应用的事务日志备份。
单击"使数据库不再运行,但能还原其它事务日志",如果要应用其它事务日志备份。
3. sql 2005如何还原数据库中的一个文件组或者 是文件
1、你打开
SQL
Server
Management
Studio,然后连接进入
数据库管理
2、点数据库右键
里有个还原数据库
在目标数据库那里输入你要还原数据库的名字(这个名字你自己随便定义就可以了)
3、然后在选择你的BAK数据备份文件。然后还原就是了。他会自动给你还原成你命名的哪个数据库的。不会影响你原来的数据库。
4. 怎么用sql语句备份恢复sql2008数据库
SQL语句备份和恢复
SQL
Server:
备份命令:
BACKUP
DATABASE
test
TO
disk
=
'c:\test'
WITH
FORMAT,
NAME
=
'Full
Backup
of
MyNwind'
解释如下:
NAME
=
'Full
Backup
of
MyNwind'
--这个是备注,随便写。
还原命令:
USE
master
GO
RESTORE
DATABASE
test_wt
FROM
disk
=
'c:\test_wt'
GO
MySQL:
备份:
mysqlmp
-u
root
-p
database_name
>
d:\db.bak
恢复:
mysql
-u
root
-p
database_name
<
d:\db.bak
注意:在WIN下,路径用path/filename.sql是不行的,那就用path\filename.sql