昨天帮一个朋友恢复了sql server 数据库 现在把过程写出来 大家一起分享
我那个哥们是从别人那拷了一个数据库的数据文件 (c:\mssql \data 目录下的文件)
最初我是用的
在一台好的机器上重新安装SQL Server 建立相同的数据库设备(大小) 和数据库
停掉SQL Server 用拷贝出来的数据库文件覆盖刚建立的数据库文件 再重新启动
SQL Server 但一直不可以 我猜关键是无法建立相同的数据库设备(大小)
后来采用了
系统存储过程
sp_attach_db // 附加数据库文件到服务器
或
sp_attach_db_single_file // 附加数据库的单个文件到服务器
具体的sql 语句就是
例如
EXEC sp_attach_single_file_db pubs e:\data\pubs mdf sp_attach_db @dbname= conmis @filename = d:\ \conmis _data mdf @filename = d:\ \conmis _log ldf
如何附加数据库文件到服务器(即 通过 mdf ldf 文件修复数据库)
另外查找资料时看到也可以通过日志恢复以前的数据 不知那位哥们看看是不是可以
用日志恢复
restore log {data_name|@database_name_var}fromwith [norecovery\recovery\standby_undo_file_name][ ][stopat={data_time|@data_time_var}
例如 库名为database 日志为database _log 要求恢复 / / : 前的数据
lishixinzhi/Article/program/SQL/201311/16392
1、打开SQL Server Management Studio,连接数据库,找到“本地” - “数据库”。
2、右键单击“还原数据库”或“还原文件和文件组”。
3、在“还原文件和文件组”界面上,输入目标数据库名称,选择“源设备”,然后单击“浏览”以选择要还原的文件。
4、您可以添加多个备份文件,选择恢复文件,单击“确定”。
5、检查要恢复的bak备份文件,单击OK,开始恢复 *** 作,根据数据量,恢复所需的时间不同,请耐心等待。
6、等待还原完成,单击“确定”,刷新数据库列表,可以看到刚恢复的数据库。此时,bak备份文件已恢复到数据库。
百度知道
SQL数据库怎么还原 用友SQL SERVER恢复数据库展开
千锋教育
做真实的自己 用良心做教育
关注
成为第14位粉丝
SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件:
1 至少有一个误删除之前的数据库完全备份。
2 数据库的恢复模式(Recovery mode)是“完整(Full)”。
针对这两个前提条件,会有三种情况:
情况一、如果这两个前提条件都存在,通过SQL语句只需三步就能恢复(参考文章),无需借助第三方工具。
a) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO disk= N'备份文件名' WITH NORECOVERY
b) 恢复一个误删除之前的完全备份:RESTORE DATABASE [数据库名] FROM DISK = N'完全备份文件名' WITH NORECOVERY, REPLACE
c) 将数据库恢复至误删除之前的时间点:RESTORE LOG [数据库] FROM DISK = N'第一步的日志备份文件名' WITH STOPAT = N'误删除之前的时间点' , RECOVERY
1、要进行还原数据库 *** 作我们先需要有一个数据库,这里直接打开SQL Server Management Studio,然后打开实例,在左侧按照下图中红色箭头指示右键点击数据库,然后点击 新建数据库,如下图:
2、在新建数据库的对话框中 修改数据库名称,然后其他都保持默认即可,然后点击确定即可,如下图:
3、然后就可以在SQL Server Management Studio的左侧看到新建的数据库了,如下图:
4、然后开始还原 *** 作,右键点击新建的数据库,然后依次点击 任务->还原->数据库如下图:
5、在d出的还原数据库对话框中,选择 源设备,然后选择右面的两个点,如下图:
6、然后就会d出 指定备份 的对话框,然后点击添加,如下图:
7、然后这里添加备份的数据库备份文件,数据库备份文件后缀名为bak,如下图:
8、然后按照下图中红色箭头指示位置 勾选数据库备份,然后点击 选项,如下图:
9、然后进入还原数据库 的 选项 页,这里首先勾选一下 覆盖现有数据库,然后开始选择下面的 将数据库文件还原为,如下图:
10、然后选择和数据库备份文件在一个文件夹下的mdf 文件,如下图:
11、然后选择和数据库备份文件在一个文件夹下的dlf 文件,如下图:
12、只有bak文件,这两个文件不是备份出来的,这两个文件是小编直接创建的文本文档然后直接改后缀名得到的,选择好这两个文件之后直接点击确定,如下图
13、稍等片刻之后就会看到数据库还原 *** 作成功完成,如下图:
14、然后就可以回到之前创建的数据库中看到,所有的表格已经还原了,如下图:
方法1:
在
master
中执行
exec
sp_detach_db
'fj20070116',
'true'
接下来到相应的数据库文件目录下删除log文件
exec
sp_attach_db
@dbname
=
n'fj20070116',
@filename1
=
n'f:\microsoft
sql
server\mssql\data\fj20070116_datamdf'
执行结果如下(表明删除日志成功,并重建数据库日志文件):
设备激活错误。物理文件名
'f:\microsoft
sql
server\mssql\data\fj20070116_logldf'
可能有误。
已创建名为
'f:\microsoft
sql
server\mssql\data\fj20070116_logldf'
的新日志文件。
方法2:
选中要分离的数据库,先将其分离。
删除对应的日志文件。
数据库--所有任务--附加数据库--在附加数据库的d出框中选择mdf
选择是即可完成创建新的数据库日志文件。对数据库 *** 作没有任何影响。
以上两个方法生成的log文件只有504kb。
1、确保备份下的master数据库与要恢复的SQL SERVER的版本一致性。
2、关闭打开SQL Server Management Studio,打开服务器管理器,点击“配置”-“服务”,找到SQL SERVER服务,右键点击出快捷菜单。点击“停止”停止MSSQLSERVER服务。
3、以管理员账户打开cmd,输入以下的命令:net start mssqlserver /m。
4、打开SQL Server Management Studio,出现连接到服务器的窗口,点击取消。
5、点击“新建查询”,出现连接到服务器的窗口,点击确定。因为是单用户模式,因此只能有一个链接进入。
6、在查询窗口输入以下的命令。
7、重新启动SQL SERVER(MSSQLSERVER)服务,右键点击出快捷菜单。点击“启动”启动服务就可以了。
以上就是关于如何恢复数据库的内容全部的内容,包括:如何恢复数据库的内容、怎么把sql server 2008 备份文件bak还原、数据库恢复sql语句未选择数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)