mysql日志满了怎么办 mysql57日志

数据库事物日志已满这个问题怎么解决?先提供一种复杂的方法压缩日志及数据库文件如下:
1.清空日志
dump transaction 库名 with no_log
2.截断事务日志:
backup log 数据库名 with no_log
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了
也可以用sql语句来完成
--收缩数据库
dbcc shrinkdatabase(客户资料)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
dbcc shrinkfile(1)
4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除log文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的log,大小只有500多k
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器 。
a.分离
e x e c sp_detach_db @dbname = 'pubs'
b.删除日志文件
c.再附加
e x e c sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\program files\microsoft sql server\mssql\data\pubs.mdf'
5.为了以后能自动收缩,做如下设置:
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--sql语句设置方式:
e x e c sp_dboption '数据库名', 'autoshrink', 'true'
6.如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xm(x是你允许的最大数据文件大小)
--sql语句的设置方式:
alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)
mysql在linux下日志满了怎么办你指的是哪个日志?
一、
二进制日志,
办法1:
【mysql日志满了怎么办 mysql57日志】PURGE
MASTER
LOGS
TO
‘mysql-bin.000021′;
将序号为000021之前的日志全部删除
办法2:
PURGE
MASTER
LOGS
BEFORE
’2010-03-22
00:00:00′;
将日期为2010-03-22之前的日志删除
二、慢查,错误、无索引日志等可以直接拷贝到其他目录 , 或者手动删除
SqServer2000数据库日志满了怎么办一、简单方法
1、右键数据库→属性→选项→故障还原模型→设为简单→确定;
2、右键数据库→所有任务→收缩数据库→确定;
3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定 。
二、复杂方法
1、清空日志 DUMP TRANSACTION 库名 WITH NO_LOG
2、截断事务日志 BACKUP LOG 数据库名 WITH NO_LOG
3、收缩数据库文件(如果不压缩,数据库mysql日志满了怎么办的文件不会减小) 企业管理器--右键mysql日志满了怎么办你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以mysql日志满了怎么办了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成 --收缩数据库 DBCC SHRINKDATABASE(客户资料) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles DBCC SHRINKFILE(1)。

推荐阅读