SQL数据库如何删除日志ldf

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL数据库如何删除日志ldf相关的知识,希望对你有一定的参考价值。

参考技术A 1、确定SQL数据库的安装路径与所用的SQL数据库名称。
2、点击开始--程序--Microsoft
SQL
Server--查询分析器--确定,进入软件里,点击菜单帮助--Transact-sql帮助(S)--索引--输入(sp_attach_single_file_db),在右边对话框里找到以下的命令或者在空白处直接输入以下的命令:
EXEC
sp_detach_db
@dbname
=
'pubs'returnEXEC
sp_attach_single_file_db
@dbname
=
'pubs',
@physname
=
'c:\Program
Files\Microsoft
SQL
Server\MSSQL\Data\pubs.mdf'
注意:return是加入的命令语名,将数据库(*.LDF与*.MDF)分离,再将数据库名改回所要选的,即是pubs改为J2002。即是:
EXEC
sp_detach_db
@dbname
=
'
J2002'returnEXEC
sp_attach_single_file_db
@dbname
=
'
J2002',
@physname
=
'c:\Program
Files\Microsoft
SQL
Server\MSSQL\Data\
J2002.mdf'
3、输入命令后,点击菜单查询--执行,下面对话框出现命令"命令已成功完成"。
4、删除命令(EXEC
sp_detach_db
@dbname
=
'
J2002'
return),进入安装SQL数据库路径里将J2002.ldf文件重命名。
5、接着第3点开始,点击菜单查询--执行,下面对话框出现命令"设备激活错误。物理文件名
'C:\Program
Files\Microsoft
SQL
Server\MSSQL\Data\J200188.ldf'
可能有误。已创建名为
'c:\Program
Files\Microsoft
SQL
Server\MSSQL\Data\j200188_log.LDF'
的新日志文件"。

SQL Server2008 如何附加没有日志文件ldf的数据库mdf?

SQL Server2008 如何附加没有日志文件ldf的数据库mdf?

可以直接附加,如果只有mdf文件没有日志文件,系统会自动产生一个日志文件。 参考技术A DB:Microsoft SQL Server 2008 R2 (10.50.1600)
现象:SQL Server 2008 R2 版本的数据库没有ldf文件,直接附加mdf文件。

解决步骤:
1.使用默认方式建立一个供恢复使用的数据库(如dbname)。
2.停止数据库实例服务。
3.将刚才生成的数据库的日志文件dbname_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据库数据文件dbname.mdf。
4.启动数据库服务器。此时会看到数据库dbname不可访问。
5. ALTER DATABASE <dbname> SET EMERGENCY
6. ALTER DATABASE <dbname> SET SINGLE_USER
7. ALTER DATABASE <dbname> REBUILD LOG ON (NAME=dbname_log, FILENAME='E:\XXX\xxx\dbname_log.ldf')
执行后,会有警告信息“警告: 数据库 'dbname' 的日志已重新生成。已失去事务的一致性。RESTORE 链已断开,服务器不再有以前的日志文件的上下文,因此您需要了解它们的内容。应运行 DBCC CHECKDB 验证物理一致性。数据库已置于 dbo-only 模式。在准备使数据库可用时,需要重置数据库选项,并删除所有多余的日志文件。”
8. DBCC CHECKDB(<dbname>, REPAIR_ALLOW_DATA_LOSS)
9 ALTER DATABASE <dbname> SET MULTI_USER
10. ALTER DATABASE <dbname> SET ONLINE
大功告成!
参考技术B 新建一个数据库,把名字和这个MDF文件一样,停止数据库,将mdf覆盖你的新建的数据库,然后重新启动 参考技术C 附加的时候删除日志连接就行了

以上是关于SQL数据库如何删除日志ldf的主要内容,如果未能解决你的问题,请参考以下文章

如何删除SQL SERVER中的日志文件

sql server 2008 日志文件删除后怎么附加

sqlserver 2005中文版如何清除.LDF的日志文件

SQL数据库的日记ldf文件变得好大有17G,排除空间不够用的情况下,对数据库运作有没有影响

如何从 Sql Server 2005 Express 版本的日志文件(.ldf)中查询?

数据库日志文件(databasename_log.ldf)太大 如何清除