当前位置:首页 » 编程语言 » 怎样使用sql清理ldf文件
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

怎样使用sql清理ldf文件

发布时间: 2022-05-06 19:41:44

Ⅰ ldf文件可以删除吗

1、ldf文件是sql server数据库的日志文件。
2、可以通过日志文件进行数据的恢复。
3、如果ldf过大,可以将数据库属性中的模式设置为简单,然后右键收缩数据库进行日志文件清理,清理完成后再将数据库模式改回原模式。

Ⅱ sql误删除ldf文件

摘要 G.下面执行真正的恢复操作,重建数据库日志文件

Ⅲ sql数据库怎么清理

思路:1,把数据库文件路径找到。2,分离数据库。3,删除对应数据库文件的日志文件.ldf。4,附加对应数据库文件.mdf。 详解:先看“jita” 数据库文件放在什么地方在D:\Data路径下。再把“jita” 数据库分离 然后把日志.ldf 删除,再附加数据.mdf 此时sql server会重新生成一个很小的.ldf 日志。

Ⅳ 如何清理sql server 已满的数据库日志

具体方法有3种。
方法一:
第一步:
backup
log
database_name
with
no_log
或者
backup
log
database_name
with
truncate_only
--
no_log和truncate_only是在这里是同义的,随便执行哪一句都可以。
第二步:
1.收缩特定数据库的所有数据和日志文件,执行:
dbcc
shrinkdatabase
(database_name,[,target_percent])
--
database_name是要收缩的数据库名称;target_percent是数据库收缩后的数据库文件中所要的剩余可用空间百分比。
2.收缩一次一个特定数据库中的数据或日志文件,执行
dbcc
shrinkfile(file_id,[,target_size])
--
file_id是要收缩的文件的标识
(id)
号,若要获得文件
id,请使用
file_id
函数或在当前数据库中搜索
sysfiles;target_size是用兆字节表示的所要的文件大小(用整数表示)。如果没有指定,dbcc
shrinkfile
将文件大小减少到默认文件大小。两个dbcc都可以带上参数notruncate或truncateonly,具体意思查看联机帮助.
方法二:
第一步:
先备份整个数据库以备不测

第二步:
备份结束后,在query
analyzer中执行如下的语句:
exec
sp_detach_db
yourdbname,true
--卸除这个db在mssql中的注册信息
第三步:
到日志的物理文件所在的目录中去删除该日志文件或者将该日志文件移出该目录
第四步:
在query
analyzer中执行如下的语句:
exec
sp_attach_single_file_db
yourdbname,'
d:\mssql\data\yourdbname_data.mdf
'
--以单文件的方式注册该db,如果成功则mssql将自动为这个db生成一个500k的日志文件。
方法三:
1.
进入企业管理器,选中数据库,比如demo
2.
所有任务->分离数据库
3.
到数据库文件的存放目录,将muonline_log.ldf文件删除,以防万一,你可以拷出去
4.
企业管理器->附加数据库,选muonline,这个时候你会看见日志文件这项是一个叉,不要紧,继续,此时数据库就会提示你该数据库无日志是否创建一个新的,确定就是了。
5.
记得数据库重新附加后用户要重新设置一下。
如果以后,不想要它变大:
sql2000下使用:
在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。
或用sql语句:
alter
database
数据库名
set
recovery
simple

Ⅳ sql2000备份数据ldf文件太大怎么处理

一般有两种方法,一种是用命令把日志文件压缩清空,一种就是直接删除日志文件:
1、命令行实现
第一步:清空日志DUMP TRANSACTION databasename WITH NO_LOG -- 第二步:截断事务日志BACKUP LOG databasename WITH NO_LOG -- 第三步:收缩数据库DBCC SHRINKDATABASE(databasename)

2、直接删除日志文件方法:
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库

b.在我的电脑中找到数据库文件的路径,删除LOG文件

c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库

这样将生成新的LOG文件,大小只有500多K

Ⅵ SQL Server里的templog.ldf文件超大,已经10G了,我要怎么样安全的删除它呀

建议更改数据库的事务日志,限制文件增长的最大值和定期备份日志和数据。在以下处理之前,最好整体备份整个数据库:

1:由小的事务引起日志溢出,系统能正常启动。

解决办法:

扩大数据库日志空间:
alter database 数据库名 on 设备名=数量(M为单位)

sp_logdevice 数据库名,设备名

清除日志
mp transaction 数据库名 with no_log(no_truncate)

2:由大的事物引起日志溢出,系统较长时间内无法正常启动或数据库无法恢复

解决办法:

强行清空日志。
在实在无法恢复数据库或有近期备份的情况下,可采用强行清空日志的方法。采取这种方法的后果有可能彻底破坏数据库。执行步骤如下:

Ⅰ 以-v 方式启动SQL SERVER(不检测日志)

Ⅱ 修改数据库状态为-32768(阻塞状态)

update sysdatabases set status=-32768 where name=数据库名

Ⅲ 授权sybase_ts_role权限(sybase_ts_role为SQL SERVER特殊管理员权限,在日常的数据库管理中,不需要这个角色)

sp_role “grant”,”sybase_ts_role”,sa

set role “sybase_ts_role”

Ⅳ 清除日志

dbcc rebuild_log(数据库名,1,1)

完成以上步骤后,重新启动SQL SERVER即可。如果数据库能正常启动,数据库就恢复完成;如果无法启动,只能重新创建数据库。

Ⅶ SQL数据库如何删除日志ldf

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 数据库太大了,能把ldf文件删除吗

直接删除是不行的,将他“重置”就可以了。解决方法如下:

1、首先,打开SQL查询窗口,输入删除关键字Drop。

Ⅸ SQL2000里面的日记怎么删除就是格式为LDF 我的数据库bak的还原后,为什么MDF和LDF都这么大

1、LDF文件是SQL数据库的一部分,不能进行删除,但是可以对它日志进行清除,即对日志文件进行Shrink操作。
2、MDF文件这么大,而生成的备份这么小,一的原因是备份文件在存储的时候就考虑了压缩,二可能是你的表设计的问题,例如用了很多的CHAR类型,三可能是数据库的表进行很多的DELETE操作,存在很多空闲空间。
3、对于上面的第三点,你也可以对MDF文件进行Shrink,这样也能减掉很多空间。
4、要对远程的SQLSERVER进行操作,你只要在本机安装一个SQLSERVER的个人版,将远程机加入你的节点,这样你就能像操作本机一样操作远程机。