分离数据库删除日志文件

合集下载

清理SQL Server数据库日志的两种方法

清理SQL Server数据库日志的两种方法

清理SQL Server数据库日志的两种方法sql server数据库使用时间长了,日志文件会很大,占用过多系统资源,数据库可能会报 log full 的错误,甚至磁盘空间占满让数据库处于不可用状态,这个时候我们需要清理数据库,以前有人开发了数据库日志清理工具,好像还要收费,其实很简单就可以完成这个操作,请跟我来:清理sql server数据库日志可用两种方法:方法一:清空日志。

1、打开查询分析器,输入命令DUMP TRANSACTION 数据库名 WITH NO_LOG2、再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至: ,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。

方法二:有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。

1、删除LOG分离数据库企业管理器->服务器->数据库->右键->分离数据库2、删除LOG文件附加数据库企业管理器->服务器->数据库->右键->附加数据库此法生成新的LOG,大小只有500多K。

注意:建议使用第一种方法。

如果以后,不想要它变大。

SQL2000下使用:在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。

或用SQL语句:alter database 数据库名 set recovery simple另外,数据库属性有两个选项,与事务日志的增长有关:Truncate log on checkpoint(此选项用于SQL7.0,SQL 2000中即故障恢复模型选择为简单模型)当执行CHECKPOINT 命令时如果事务日志文件超过其大小的70% 则将其内容清除在开发数据库时时常将此选项设置为True定期对数据库进行检查当数据库文件或日志文件的未用空间超过其大小的25%时,系统将会自动缩减文件使其未用空间等于25% 当文件大小没有超过其建立时的初始大小时不会缩减文件缩减后的文件也必须大于或等于其初始大小对事务日志文件的缩减只有在对其作备份时或将 Truncate log on checkpoint 选项设为True 时才能进行。

清除sql日志

清除sql日志
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除LOG文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
或不能备份日志(truncate log on checkpoint选项为1),那么就无法进行数据的恢复了,或者
只能恢复到最近一次的备份的数据了。
以下简单说明恢复数据方法:
1,如果误操作之前存在一个全库备份(或已有多个差异备份或增量备份),首先要做的事就是进进行一次日志备份(如果为了不让日志文件变大而置trunc. log on chkpt.选项为1那你就死翘了)

SQL SERVER清除日志的四种方法

SQL SERVER清除日志的四种方法
END
EXEC (@TruncLog)
END
SELECT 'Final Size of ' + db_name() + ' LOG is ' +
CONVERT(VARCHAR(30),size) + ' 8K pages or ' +
CONVERT(VARCHAR(30),(size*8/1024)) + 'MB'
AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName)
AND (@OriginalSize * 8 /1024) > @NewSize
BEGIN -- Outer loop.
SELECT @Counter = 0
SET NOCOUNT ON
DECLARE @LogicalFileName sysname,
@MaxMinutes INT,
@NewSize INT
USE tablename -- 要操作的数据库名
SELECT @LogicalFileName = 'tablename_log', -- 日志文件名
DBCC SHRINKFILE (@LogicalFileName, @NewSize)
EXEC (@TruncLog)
-- Wrap the log if necessary.
WHILE @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired

SQLServer2008R2分离数据库删除日志文件的方法

SQLServer2008R2分离数据库删除日志文件的方法

SQL Serve‎r 2008 R2分离数‎据库删除日‎志文件方法‎1. 找到待清理‎数据库的实‎体文件,在硬盘中的‎路径,例如:C:\Progr‎a m Files‎\Micro‎s oft SQL Serve‎r\MSSQL‎10_50‎.MSSQL‎S ERVE‎R\MSSQL‎\DATA\,其中day‎a ng.mdf为数‎据文件,dayan‎g_log‎.ldf为日‎志文件。

最终目标是‎:清除LDF‎文件释放硬‎盘空间2. 在企业管理‎器中右键点‎击该数据库‎→任务→分离。

提示:分离数据库‎有风险,一定要在分‎离前进行数‎据库备份!!!3. 确保没有用‎户对该数据‎库进行操作‎,如果有人使‎用,点击清除,之后确定。

分离数据库‎完成。

(注意:在执行分离‎数据库之前‎,建议拔掉S‎Q L SERVE‎R数据库服‎务器的网线‎,以保障后续‎过程不会有‎其它进程操‎作数据库。

否则,一旦在下述‎配置过程中‎,有进程访问‎数据库,将造成数据‎库崩溃,请特别注意‎)4. 查看数据库‎实体文件,可以看到d‎a yang‎.mdf,dayan‎g_log‎.ldf的修‎改时间为当‎前时间。

5. 将daya‎ng_lo‎g.ldf文件‎重命名。

这里将其扩‎展名后面输‎入数字12‎3。

6. 在企业管理‎器中,右键点击数‎据库→附加。

7.点击添加按‎钮,选中刚才分‎离出来的d‎ayang‎.mdf文件‎,如下图所示‎。

日志文件状‎态消息提示‎找不到。

删除日志所‎在行,点击确定。

附加数据库‎完成。

7. 查看数据库‎实体所在的‎文件夹,系统会自动‎生成新的日‎志文件da‎yang_‎l og.LDF,但大小却比‎之前的LD‎F要小很多‎。

之前分离出‎来的日志文‎件可以将其‎删除。

如不能正常‎使用,需要重新分‎离,再执行上述‎步骤。

SQL数据库日志文件ldf过大的解决办法

SQL数据库日志文件ldf过大的解决办法

如果你没有存储空间的瓶颈,让数据库库日志文件任意增长是最好的,因为在发生数据库错误时,日志文件可以帮助您查找和分析错误的原因。

如果存储空间确实有限或者已达到瓶颈,确实要限制日志文件的增长,请谨慎使用这些限制手段(强烈建议在正式服务器上使用下列方法前进行备份)。

方法一:快速清除事务日志,执行以下查询命令:-- 第一步:清空日志DUMP TRANSACTION数据库名WITHNO_LOG-- 第二步:截断事务日志BACKUP LOG数据库名WITHNO_LOG-- 第三步:收缩数据库DBCC SHRINKDATABASE(数据库名)如果以后不想让它再变大了,执行下面查询命令:alter database数据库名set recovery simple方法二:第1步:数据库企业管理器->服务器->数据库->右键->分离数据库第2步:删除LOG文件第3布:数据库企业管理器->服务器->数据库->右键->附加数据库此法生成新的LOG,大小只有500多K 再将此数据库设置自动收缩数据库“自动收缩”设置:从数据库自身的健康和性能考虑,并不建议多用。

这是因为:(1)SQL Server只有在空间用尽的情况下才会做自动增长。

如果没有找出自增长的原因,从而从根本上避免空间用尽,虽然能够暂时用DBCC SHRINKFILE功能收缩文件大小,但是下次数据库还是有可能长大。

收缩数据库只是一个治标不治本的方法。

(2)数据文件收缩会给文件带来更多的碎片。

(3)不管是数据库收缩,还是增长,对SQL Server来讲都是件浪费资源的事情。

在负载比较重的系统里,对性能的影响尤其大。

它们是应尽量避免而不是鼓励的操作。

因此,对于一个比较繁忙的数据库,推荐的设置是开启数据库自动增长选项,以防数据库空间用尽导致应用程序失败,但是要严格避免自动增长的发生。

同时,尽量不要使用自动收缩功能。

U8——数据库附件方法迁移用友U8 10.1

U8——数据库附件方法迁移用友U8 10.1

数据库附加方法迁移用友U8 10.12015年8月1日23:44:32一、环境二、分离/附加概述SQL Server提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份和恢复方法。

这里介绍一种学习中常用的“分离/附加”方法,类似于大家熟悉的“文件拷贝”方法,即把数据库文件(.M DF)和对应的日志文件(.LDF)拷贝到其它磁盘上作备份,然后把这两个文件再拷贝到任何需要这个数据库的系统之中。

比如,在实验教学过程中,同学们常常想把自己在学校实验室计算机中创建的数据库搬迁到自己的计算机中而不想重新创建该数据库,就可以使用这种简单的方法。

但由于数据库管理系统的特殊性,需要利用SQL Server提供的工具才能完成以上工作,而直接的文件拷贝是行不通的。

这个方法涉及到SQL Server分离数据库和附加数据库这两个互逆操作工具。

1、分离数据库就是将某个数据库(如student_Mis)从SQL Server数据库列表中删除,使其不再被S QL Server管理和使用,但该数据库的文件(.MDF)和对应的日志文件(.LDF)完好无损。

分离成功后,我们就可以把该数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到其它磁盘中作为备份保存。

2、附加数据库就是将一个备份磁盘中的数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到需要的计算机,并将其添加到某个SQL Server数据库服务器中,由该服务器来管理和使用这个数据库。

三、附加数据库时丢失日志文件的风险1. SQL Server数据库启动的过程数据库启动时,大致可以分为以下3个过程:(1)分析:读取日志文件,从而分析数据文件中的检查点是否是最后一个检查点,并且分析哪些事务未提交从而需要回滚。

(2)前滚(Redo):数据文件的检查点之后的所有事务都重做一次,直到最后一笔事务。

(3)回滚(Undo):撤销所有未提交的事务。

2. 附加数据库时丢失日志文件的潜在风险由于预写事务日志(WAL)是一种缓存机制,数据文件也采用了缓存机制(检查点),那么丢失了日志文件可能有以下风险:(1)如果数据库关闭时未执行检查点(例如,shutdown with nowait),那么这些数据将不会回写到数据文件,即丢失了部分数据。

SQL Server 2008 R2 分离数据库删除日志文件的方法

SQL Server 2008 R2 分离数据库删除日志文件的方法

SQL Server 2008 R2分离数据库删除日志文件方法1. 找到待清理数据库的实体文件,在硬盘中的路径,例如:C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\,其中dayang.mdf为数据文件,dayang_log.ldf为日志文件。

最终目标是:清除LDF文件释放硬盘空间2. 在企业管理器中右键点击该数据库→任务→分离。

提示:分离数据库有风险,一定要在分离前进行数据库备份!!!3. 确保没有用户对该数据库进行操作,如果有人使用,点击清除,之后确定。

分离数据库完成。

(注意:在执行分离数据库之前,建议拔掉SQL SERVER数据库服务器的网线,以保障后续过程不会有其它进程操作数据库。

否则,一旦在下述配置过程中,有进程访问数据库,将造成数据库崩溃,请特别注意)4. 查看数据库实体文件,可以看到dayang.mdf,dayang_log.ldf的修改时间为当前时间。

5. 将dayang_log.ldf文件重命名。

这里将其扩展名后面输入数字123。

6. 在企业管理器中,右键点击数据库→附加。

7.点击添加按钮,选中刚才分离出来的dayang.mdf文件,如下图所示。

日志文件状态消息提示找不到。

删除日志所在行,点击确定。

附加数据库完成。

7. 查看数据库实体所在的文件夹,系统会自动生成新的日志文件dayang_log.LDF,但大小却比之前的LDF要小很多。

之前分离出来的日志文件可以将其删除。

如不能正常使用,需要重新分离,再执行上述步骤。

永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊事也。

群贤毕至,少长咸集。

此地有崇山峻岭,茂林修竹;又有清流激湍,映带左右,引以为流觞曲水,列坐其次。

虽无丝竹管弦之盛,一觞一咏,亦足以畅叙幽情。

是日也,天朗气清,惠风和畅,仰观宇宙之大,俯察品类之盛,所以游目骋怀,足以极视听之娱,信可乐也。

linux 日志清理方法

linux 日志清理方法

linux 日志清理方法
清理 Linux 系统日志是维护系统性能和磁盘空间的重要步骤。

以下是一些常见的方法来清理 Linux 系统日志:
1. 使用日志轮换工具,Linux 系统通常会使用日志轮换工具(如logrotate)来管理日志文件。

这些工具可以根据预先设定的
条件(如文件大小、日期等)来轮换、压缩和删除旧的日志文件。

你可以编辑 logrotate 配置文件(通常位于 /etc/logrotate.conf 或 /etc/logrotate.d/ 目录下)来调整日志轮换的策略。

2. 手动清理日志文件,你也可以手动删除旧的日志文件来释放磁盘空间。

通常,系统日志文件位于 /var/log/ 目录下,你可以使用命令如rm或者find来删除指定日期之前的日志文件。

3. 使用 journalctl 命令,如果你的系统使用 Systemd 日志服务,你可以使用 journalctl 命令来管理日志。

你可以使用该命令来显示、过滤、导出和清理日志。

4. 压缩日志文件,另一种方法是将旧的日志文件进行压缩,而不是直接删除。

你可以使用压缩命令(如gzip或者bzip2)来对日
志文件进行压缩,以节省磁盘空间。

5. 自动化日志清理,你可以设置定时任务来自动清理旧的日志文件,这样可以定期清理日志而不需要手动干预。

需要注意的是,在清理日志文件时,一定要小心谨慎,确保不会删除系统运行所需的重要日志文件。

另外,清理日志文件可能会导致丢失一些历史记录,因此在执行清理操作之前,最好备份重要的日志文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.现在帐套管理中查询数据库实体名称,比如这里对AIS20110211092156进行操作。

2.找到此数据库实体在硬盘中的路径,例如:D:\Program Files\Microsoft SQL
Server\MSSQL\BACKUP
其中AIS20110211092156_Data.mdf为数据文件,AIS20110211092156_log.ldf为日志文件
3.在企业管理器中右键点击该数据库→所有任务→分离数据库。

提示:分离数据库有风险,一定要在分离前备份好数据!!!
4.确保没有用户对该数据库进行操作,如果有人使用,点击清除,之后确定。

提示分离数
据库完成。

5.查看数据库实体文件,可以看到AIS20110211092156_Data.mdf,
AIS20110211092156_log.ldf的修改时间为当前时间。

6.将AIS20110211092156_log.ldf文件重命名。

这里将其扩展名后面输入数字123。

7.在企业管理器中,右键点击数据库→所有任务→附加数据库。

7.选中刚才分离出来的AIS20110211092156_Data.mdf文件,点验证,如下图所示。

日志文件状态上会有红色叉子标记。

点击确定。

会提示附加数据库完成。

8.查看数据库实体所在的文件夹,系统会自动生成新的日志文件
AIS20110211092156_log.LDF。

使用K3打开这个帐套,可以正常使用后,如果不需保留之前分离出来的日志文件可以将其删除。

如不能正常使用,需要重新分离,再执行上述步骤。

相关文档
最新文档