丢失LDF文件怎么办?
如何在SQL2005EE里导入 mdf ldf
2010-05-16 11:38:30| 分类: 服务器|字号 订阅
方法一:
在sql server 2005 数据库中,一次误操作,分离数据库后,直接将日志文件删除掉了,后进行附加出错,无法附加上去,经过如下解决方案,数据库附加成功,操作如下:第一步:先建立一个同名数据库,停止SQL SERVER2005,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库。第三步:在查询分析器中运行如下代码: alter database 你的.mdf文件名 set emergency '--将数据库设置为紧急状态 use master declare @databasename varchar(255) set @databasename='你的.mdf文件名' '--你的.mdf文件文件名 exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态 dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态 以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码 。
方法二:在SQL Server Mangement Studio 里连接上数据后,选择新建查询,然后执行语句EXEC sp_attach_db @dbname = N 'DBNAME' , ->生成一个数据库的名字@filename1 = N 'D:\filename.mdf',@filename1 = N 'D:\filename.ldf',如果数据库为只读属性:打开SQL Server Configuration Manger 打开SQL Server EXPRESS属性把内置帐号网络服务-〉本地系统 重新启动sql server 2005 express 方法三:
EXEC sp_attach_db @dbname = N’Sql2005DB’,
@filename1 = N’D:\Sql2000DB.mdf’,
@filename2 = N’D:\Sql2000DB.ldf’
数据就可以导入sqlserver2005了。
2 、直接拷贝数据文件
把数据库的数据文件(*.mdf)和日志文件(*.ldf)都拷贝到目的服务器,在SQL Server Query Analyzer中用语句进行恢复:
EXEC sp_attach_db @dbname = ’test’,
@filename1 = ’d:mssql7datatest_data.mdf’,
@filename2 = ’d:mssql7datatest_log.ldf’
这样就把test数据库附加到SQL Server中,可以照常使用。如果不想用原来的日志文件,可以用如下的命令:
EXEC sp_detach_db @dbname = ’test’
EXEC sp_attach_single_file_db @dbname = ’test’,
@physname = ’d:mssql7datatest_data.mdf’
这个语句的作用是仅仅加载数据文件,日志文件可以由SQL Server数据库自动添加,但是原来的日志文件中记录的数据就丢失了。
3 、附加的方法
在SQL 2005控制台 右击“数据库” 然后选择附加。
4 、SQL2000的数据库一般就只有两个文件:MDF和一个LDF,你直接将文件加载到SQL2005去就可以了,SQL2005会自动加一些东西进去。
将数据库从SQL2000迁移到SQL2005时,无法查看关系图的解决办法
选中这个数据库,新建一个查询,输入下面的脚本:
EXEC sp_dbcmptlevel database_name, 90
USE database_name
EXEC sp_changedbowner ’sa’
其中,database_name是此数据库的名称.
运行可能需要一段时间,运行完成后,点击"关系图",刷新,应该就可以看到关系图了.
MSSQL2000 数据库文件迁移到 MSSQL2005 可能要用的一些命令2008-03-11 17:39--修改对象所有者
EXEC sp_changeobjectowner ’user_database’, ’dbo’;
exec sp_changedbowner ’sa’
--检查空用户
sp_change_users_login ’report’
--修复空用户
sp_change_users_login ’Auto_Fix’, ’mydb’, NULL, ’mydb’
--合并物理文件,删除文件,清除活动事务
--和空, 文件进行收缩数据或信息文件中运行以下 Transact-SQL 语句:
DBCC SHRINKFILE (’逻辑 < 文件名 >’, EMPTYFILE )
--要从数据库, 删除文件运行以下 Transact-SQL 语句:
ALTER DATABASE <数据库名称> REMOVE FILE <逻辑文件名>
--重命名逻辑文件
--要修改的数据文件或日志文件, 逻辑名称指定要通过使用 Name 参数, 命名逻辑文件名称, 然后通过使用 NewName 参数指定文件的新逻辑名称。 重命名该逻辑文件, 运行下列 Transact-SQL 语句:
ALTER DATABASE <数据库名称> MODIFY FILE ( NAME = <current_logical_name>, NEWNAME = <new_logical_name>)
丢失LDF文件怎么办?相关推荐
- LDF文件丢失, 如何仅用MDF文件恢复数据库呢?
笔者的一个大小为2 TB的SQL Server的database的LDF文件在玩存储盘映射的过程中莫名其妙的丢失了. 好在MDF文件还在. 笔者慌了, Bruce Ye告诉笔者, 不用着急, 光用MD ...
- SqlServer的LDF文件丢失, 如何仅用MDF文件恢复数据库呢?(已解决)
笔者的一个大小为2 TB的SQL Server的database的LDF文件在玩存储盘映射的过程中莫名其妙的丢失了. 好在MDF文件还在. 笔者慌了, Bruce Ye告诉笔者, 不用着急, 光用MD ...
- 丢失日志文件的风险与对策
实验背景: 在备份与恢复数据库时,偶尔使用分离/附加的方法.如果在附加时丢失了或者删除了日志文件(LDF),可能会有哪些风险呢?下面通过实验来验证. 一.搭建环境 1. 创建数据库 CREATE DA ...
- sql Server ldf文件过大
今天公司服务器上的Redis突然报错,上去一看服务器上的Redis文件磁盘爆满了.后来一查看,发现是数据库的一个ldf文件占了300G,导致Redis的缓存没法持久化. 后来就一直找办法处理这个已经占 ...
- 解决SQL SERVER LDF文件过大的问题
我的SQL server数据库仅用作分析用, 不需要考虑数据备份和恢复的问题. 每天都会增长大量的数据, 现在碰到的问题是, ldf 文件增长的非常厉害, 需要压一压. 参考文章: http:// ...
- ORACLE基础学习-RMAN应用之(归档模式无备份,丢失数据文件的恢复)
二.归档模式无备份,丢失数据文件的恢复: 首先要意识到,这种恢复是有条件的,只有在某些特定条件下,才有可能在没有备份的情况下恢复丢失的数据文件. 同时又需意识到不是所有丢失的文件都是可以被成功恢复的. ...
- lin通信ldf文件解析_详细步骤讲解如何在CANoe中创建一个LIN通讯工程(多图+详解)...
本文首发自微信公众号"汽车技术馆"! CANoe可以实现基于CAN通讯的通讯测试和仿真,同时也可以支持基于LIN通讯的通讯测试和仿真,如何在CANoe中建立一个基于LIN通讯的工程 ...
- 丢失控制文件,有旧的备份控制文件,之后有drop表空间和create表空间的操作恢复。...
一.实验说明: 本实验是基于: <丢失控制文件恢复实验记录--1(当前的控制文件损坏,使用旧控制文件进行恢复(旧控制文件之后DROP了表空间的情况))> 和 <丢失控制文件恢复实验记 ...
- mdf与ldf文件如何还原到SQLserver数据库
现在又如下两个文件 需要用这两个文件还原数据库 那么该怎么去还原呢? 首先在D盘目录下建立一个文件夹test,然后将上图中的文件粘贴到该文件夹中. 接着在数据库中执行如下代码: EXEC sp_att ...
最新文章
- 斯诺克之星 - 白沙台球杆 官方 及 派蔻台球杆 官方 www.snkstar.com - 最专业的台球杆销售网站...
- Django中提供的6种缓存方式
- 全球最美的15座数据中心
- mysql之数据库主从复制配置报错1677
- linux whois rpm,CentOS系统安装whois命令的方法
- python selenium 鼠标移动到指定元素,并点击对应的元素
- iphone闪退修复工具_iOS14 beta5公测版更新:问题基本修复,已更新ios14的用户一定要更新!...
- iOS iOS9下实现app间的跳转
- onenote设置默认新建页面颜色非白色
- 12.2 asmca fails with 'ORA-00845'
- 在emacs里用w3m浏览网页
- 电脑桌面云便签怎么登录便签账号?
- 5.WireShark学习-WireShark中的时间显示
- 使用搜狗翻译实现网页多国语言转换
- 打印机扫描显示服务器拒绝访问,怎么解决打印机拒绝访问问题?打印机拒绝访问的解决方法...
- 基于Android+Springboot+Mybatis+Mysql的个人生活APP设计 说明书+项目源码
- vue预览word,excel,pptx,pdf文件
- 鼠标点击网页空白处出现手机号
- 安装tensorflow出现 Cannot uninstall 'wrapt'. It is a distutils installed project and thus we cannot accu
- utools快速上手心得