查询已知MDF文件的关联LDF文件 SQL2000 现有数据库已经被分离。。已知MDF文件路径及名称。求怎么得到相关联的LDF文件所在路径及名称,还有该数据库的原数据库名。新人分少。给50 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 恢复MDF存在LDF不存在的数据库 问题原因:MDF文件保存完好(已拷出来),LDF已丢失。使用:EXEC sp_attach_single_file_db @dbname = 'TyBusiness', @physname = 'E:\Help\TyBusiness.MDF'报如下错误:未能打开新数据库 'TyBusiness'。CREATE DATABASE 将终止。设备激活错误。物理文件名 'd:\Program Files\Microsoft SQL Server\MSSQL\TyBusiness_log.ldf' 可能有误。解决办法:1、先建一个与你要恢复的数据库名称一样的数据库。2、停止sql server,把你的数据库替换这个数据库。3、重起sql server,把数据库设成紧急状态(在查询分析器里面进行):sp_configure 'allow',1reconfigure with overrideupdate sysdatabases set status=32768 where name='yourdata'4、重建日志文件dbcc rebuild_log('yourdata','your data path\newdata_log.ldf')5、取消紧急模式update sysdatabases set status=0 where name='yourdata'restore sysdatabases yourdata with recoverysp_configure 'allow',0reconfigure with override6、重起sql server7、OK! 楼上两位GG看清楚题意,呵呵,LZ这个问题之前好像问过,你最好问问老大看看. 只要存在一个历史备份的话:--try:RESTORE FILELISTONLY返回由备份集内包含的数据库和日志文件列表组成的结果集。 大哥没懂小弟意思。。我就是想知道这个MDF的原来的数据库名。以及原来的日志。 要是直接附加不就都变了吗 只要存在一个历史备份的话: --try: RESTORE FILELISTONLY 返回由备份集内包含的数据库和日志文件列表组成的结果集。 这个可以 和这个帖子是一个问题,http://topic.csdn.net/u/20080713/10/5f368acb-105f-41d6-8b23-f432ef4f117e.html?seed=2029168046http://topic.csdn.net/u/20080713/11/b050007e-0d54-4232-ab9b-8e8e573b6b88.html dbcc checkprimaryfile(N'd:\a.mdf',0)dbcc checkprimaryfile(N'd:\a.mdf',1)dbcc checkprimaryfile(N'd:\a.mdf',2)dbcc checkprimaryfile(N'd:\a.mdf',3) 补充 0 为验证MDF文件是否存在 1 可以得到物理地址及逻辑名 2 可以得到原数据库名 3 可以得到MDF及LDF状态 用JAVA怎么实现SQL数据库备份和还原啊(请高手指教!) sql 字段长度是否影响查询速度 请教一个SQL2000安装的小问题 不同数据库间复制表的结构? SQL语句求助! 急!VFP在一个FORM下控制多个表的问题。送分!! 关于数据库的设计的疑惑 如何将查询结果保存成一个数据文件(如DBF) 提高数据库的查询效率都有哪些方法? sql 2000 查询问题 请大家帮忙看看SQL的安全问题 问一个简单sql
问题原因:
MDF文件保存完好(已拷出来),LDF已丢失。使用:
EXEC sp_attach_single_file_db @dbname = 'TyBusiness',
@physname = 'E:\Help\TyBusiness.MDF'
报如下错误:
未能打开新数据库 'TyBusiness'。CREATE DATABASE 将终止。
设备激活错误。物理文件名
'd:\Program Files\Microsoft SQL Server\MSSQL\TyBusiness_log.ldf' 可能有误。解决办法:
1、先建一个与你要恢复的数据库名称一样的数据库。
2、停止sql server,把你的数据库替换这个数据库。
3、重起sql server,把数据库设成紧急状态(在查询分析器里面进行):
sp_configure 'allow',1
reconfigure with override
update sysdatabases set status=32768 where name='yourdata'
4、重建日志文件
dbcc rebuild_log('yourdata','your data path\newdata_log.ldf')
5、取消紧急模式
update sysdatabases set status=0 where name='yourdata'
restore sysdatabases yourdata with recovery
sp_configure 'allow',0
reconfigure with override
6、重起sql server
7、OK!
呵呵,
LZ这个问题之前好像问过,
你最好问问老大看看.
--try:
RESTORE FILELISTONLY
返回由备份集内包含的数据库和日志文件列表组成的结果集。
大哥没懂小弟意思。。我就是想知道这个MDF的原来的数据库名。以及原来的日志。 要是直接附加不就都变了吗
--try:
RESTORE FILELISTONLY
返回由备份集内包含的数据库和日志文件列表组成的结果集。
这个可以
http://topic.csdn.net/u/20080713/10/5f368acb-105f-41d6-8b23-f432ef4f117e.html?seed=2029168046http://topic.csdn.net/u/20080713/11/b050007e-0d54-4232-ab9b-8e8e573b6b88.html
dbcc checkprimaryfile(N'd:\a.mdf',1)
dbcc checkprimaryfile(N'd:\a.mdf',2)
dbcc checkprimaryfile(N'd:\a.mdf',3)
1 可以得到物理地址及逻辑名
2 可以得到原数据库名
3 可以得到MDF及LDF状态