备份数据库是指对数据库或事务日志进行复制,当系统、磁盘或数据库文件损坏时,可以使用备份文件进行恢复,防止数据丢失。
SQL Server数据库备份支持4种类型,分别应用于不同的场合,下面简要介绍。
(1)完全备份
完全备份,即完整数据库备份,可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。这是大多数人常用的方式,但需要花费更多的时间和空间,所以一般推荐一周做一次完全备份。
(2)事务日志备份
事务日志备份时一个单独的文件,记录数据库的改变,备份时只需要复制上次备份以来对数据库所做的改变,可支持从数据库、差异或文件备份中快速恢复,时间少,速度快,推荐每小时甚至更频繁地备份事务日志。
(3)差异备份
在完整数据库备份之间执行差异数据备份,比完全备份小,因为只包含自完全备份以来所改变的数据库,优点是存储和恢复速度快。推荐每天做一次差异备份。
(4)文件和文件组备份
数据库一般由硬盘上的许多文件构成。如果这个数据库非常大,并且一个晚上也不能备份完,那么可以使用文件和文件组备份,每晚备份数据库的一部分。由于一般情况下数据库不会大到必须使用多个文件存储,所以此种备份并不常用。
本实例运用SQLDMO.backup对象完成整个系统数据库的备份。这使得在系统或数据库发生故障(如硬盘发生故障)时可以重建系统。
备份整个数据库的语法如下:
BACKUP DATABASE {database_name|@database_name_var}
TO<backup_device>[,...n]
[WITH
[BLOCKSIZE={blocksize|@blocksize_variable}]
[[,]DESCRIPTION={'text'|@text_variable}]
[[,]DIFFERENTIAL]
[[,]EXPIREDATE={date|@date_var}
|RETAINDAYS={days|@days_var}]
[[,]PASSWORD={password|@password_variable}]
[[,]FORMAT|NOFORMAT]
[[,]{INIT|NOINIT}]
[[,]MEDIADESCRIPTION={'text'|@text_variable}]
[[,]MEDIANAME={media_name|@media_name_variable}]
[[,]MEDIAPASSWORD={mediapassword|@mediapassword_variable}]
[[,]NAME={backup_set_name|@backup_set_name_var}]
[[,]{NOSKIP|SKIP}]
[[,]{NOREWIND|REWIND}]
[[,]{NOUNLOAD|UNLOAD}]
[[,]RESTART]
[[,]STATS[=percentage]]
]
备份数据库参数及说明如下:
首先,在“企业管理器”中右键点击动易的数据库,弹出菜单中选择“所有任务/备份数据库”
然后,保持其他选项不变,在“目的”一项中点击“添加”:
弹出的菜单中,选择按文件保存备份,在“文件名”后输入你要保存到的路径和文件名:
点击“确定”返回最初弹出的界面,点“确定”完成备份。
备份文件可以随便迁移到任何地方,包括另外的服务器都可以。在新的服务器上,首先新建一个数据库,只需输入和原来一样的数据库名字即可,其他任何设置都不要改动,建立以后,不必运行sql脚本生成数据库,也不要从mdb数据库中导入数据:
数据库建立之后,在新建立的数据库上点右键,选择“所有任务/还原数据库”
弹出的窗口中,还原的类型选择“从设备”,然后点“选择设备”:
系统默认是“还原自磁盘”,点击“添加”:
弹出选择还原目的的窗口,在“文件名”后面输入(或者选取)你的备份文件:
点两次确定回到还原数据库的最初窗口,在这里选择“选项”,钩选“在现有数据库上强制还原”,然后点确定。
OK,至此大功告成:
通过这个方法,可以实现备份、还原数据库,也可以用于将SQL数据库迁移到其它服务器上。