程序开发 > MsSql > 正文

mssql数据库还原的几种方法

亮术网 2013-08-08 本网原创

  针对不同的 mssql数据库备份文件,有不同的还原方法;主要有两种文件,一种是 bak 文件,另一种是直接备份数据库的数据(.mdf)和日志(.ldf)文件。对于 bak数据库还原可以借住 mssql数据库提供的还原命令,而后者只能用附加。

  此外,还原方法也有两种,一种是用企业管理器还原,另一种是命令还原。如果遇到用企业管理器无法还原,可以尝试用命令还原,说不定可以顺利还原。

 

  一、bak数据库还原

  如果备份数据库的类型是 bak(扩展名为bak),可按照如下步骤还原:

  1、依次选择“开始” → 所有程序 → Microsoft SQL Server 2005(2000) → SQL Server Management Studio Express(企业管理器),打开“连接服务器”窗口如图1所示:

连接sql数据库

图1

 

  2、“服务器名称”输入计算机名称,单击“连接”进入 Microsoft SQL Server Management Studio Express(企业管理器)。

  如果是连接到远程数据库,“服务器名称”输入远程数据库的IP地址,“身份验证”选择“SQL Server 身份验证”,输入“登录名和密码”,单击“连接”即可,不过要开放远程连接才能成功连接。

 

  3、右键“数据库”,选择“还原”,如图2所示:

还原数据库

图2

 

  4、在“还原数据库”窗口中,输入“目标数据库”名称,然后选择“源设备”,如图3所示:

输入数据库名称

图3

 

  5、单击“..”(浏览),再单击“添加”,定位到备份数据库所在的文件夹并选择中它,如图4所示:

选择要还原的数据库

图4

 

  6、单击两次“确定”返回“数据库还原”窗口,勾选“刚才选择的数据库”,如图5所示:

勾选还原数据库

图5

 

  7、单击“选项”,如图6所示:

勾选待还原数据库选项

图6

 

  8、如果之前输入的“数据库名称”已有数据库存在,则勾选“覆盖现有数据库”,单击“确定”,如果“还原为”下面的路径正确,将会成功,如果路径不正确,将弹出如图7所示提示窗口:

数据库还原失败

图7

 

  说明路径不正确,因为数据库备份文件放在G盘,所以把路径改为如图8所示路径:

修改还原数据库路径

图8

 

  9、数据库还原成功,如图9所示:

数据库还原成功

图9

 

  二、mssql数据库还原之附加

  附加数据库主要用于直接保存数据库的数据(.mdf)和日志(.ldf)两个文件的备份数据库,步骤如下:

  1、右键“数据库” →附加(见图2),打开“附加数据库”窗口,单击“添加”并定位到备份数据库所在文件夹,如图10所示:

附加数据库

图10

  2、选中 mdf 文件,单击“确定”返回“附加数据库”窗口,如图11所示:

选择的备份数据库

图11

 

  3、单击“确定”附加成功,如图12所示:

数据库附加成功

图12

 

 

  三、mssql数据库还原语句(用 T-Sql命令还原数据库)

  如果是 mssql Server 2005 以上版本数据库,单击 Microsoft SQL Server Management Studio Express 左上角的“新建查询”就可以在打开的窗口中输入命令;如果是 mssql Server 2000,则依次选择“开始” → 所有程序 → Microsoft SQL Server → 查询分析器。

  把下面命令复制到“查询分析器”:

  RESTORE DATABASE newwebdb--新数据库名

  FROM DISK ='G:\xq\webdb'--待还原数据库路径

  WITH

    MOVE 'webdb_dat' TO 'd:\Program Files\Microsoft SQL Server\MSSQL\Data\webdb.mdf',

    MOVE 'webdb_log' TO 'd:\Program Files\Microsoft SQL Server\MSSQL\Data\webdb.ldf'

 

  webdb_dat:备份数据库数据名称;

  webdb_log:备份数据库日志名称;

  d:\Program Files\Microsoft SQL Server\MSSQL\Data\webdb.mdf:还原后的数据库数据文件; 

  d:\Program Files\Microsoft SQL Server\MSSQL\Data\webdb.ldf:还原后的数据库日志文件; 

 

  执行以下语句可查看备份数据库的 LogicalName(逻辑名),如例中的 webdb_dat 和 webdb_log

  RESTORE FILELISTONLY from disk='G:\xq\webdb.bak'

 

  以上分享的三种 mssql数据库还原方法,可根据备份数据库的类型选用;如果对 T-Sql 语句比较熟悉,也可以用第三种方法,毕竟用数据库还原语句速度比较快,操作也简单。

本文浓缩标签:sql数据库还原