用SQL语句的方法还原数据库

本文详细介绍了如何使用SQL语句进行数据库备份文件的逻辑文件名查看及数据库恢复,包括指定备份文件路径、数据库名、逻辑数据文件名及其物理路径等关键步骤。同时,文章还提醒了在备份和恢复过程中需要注意的事项,如备份设置、媒体处理方式、备份方式、数据文件路径和孤立用户等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

restore filelistonly from disk='D:\website\db_backup\bmfn.bak'

restore database BMFN
from disk='D:\website\db_backup\bmfn.bak'
with move 'BMFN_Data' to 'D:\website\db_backup\BMFN_Data.MDF'
    ,move 'BMFN_Log' to 'D:\website\db_backup\BMFN_Log.LDF'

  

用SQL语句的方法(假设你的备份文件名为: c:\xx.bak

--列出备份文件中的逻辑文件名
restore filelistonly from disk='c:\xx.bak'


--用语句恢复,根据上面列出的逻辑文件名使用move选项
restore database 恢复后的数据库名
from disk='c:\xx.bak'
with move '逻辑数据文件名1' to 'c:\物理数据文件名1'
    ,move '逻辑数据文件名2' to 'c:\物理数据文件名2'
...
    ,move '逻辑数据文件名n' to 'c:\物理数据文件名n'


没有什么要特别注意的,和企业版之间的备份/还原要注意的东西一样:

1.要注意备份时的设置问题,不要指定多个备份文件,否则还原时也要指定多个备份文件

2.要注意备份的媒体处理方式问题,用重写,而不是追加,否则还原的时候要指定备份号

3.要注意备份的方式,用完全备份,而不是其他备份方式,否则还原时还要其他备份文件支持

4.还原时要注意数据文件路径的问题,如果两个系统的数据文件目录不一致,要重新指定

5.还原后要注意孤立用户的问题(即两个系统中的SQL用户不同,解决方式参考sql联机帮助)


可能的原因:

1.你还原后的数据库的数据文件所放的磁盘空间不够
  解决的办法是把数据文件放在空间足够的分区

2.你的磁盘分区采用的是FAT16/FAT32,前者限制了最大文件大小为2G,后者最大为4G
  解决的办法是改磁盘分区格式为NTFS

转载于:https://www.cnblogs.com/songxiii/archive/2012/09/07/2674508.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值