Chinaunix首页 | 论坛 | 博客
  • 博客访问: 880207
  • 博文数量: 254
  • 博客积分: 5350
  • 博客等级: 大校
  • 技术积分: 2045
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-27 13:27
文章分类

全部博文(254)

文章存档

2015年(1)

2014年(9)

2013年(17)

2012年(30)

2011年(150)

2010年(17)

2009年(28)

2008年(2)

分类: Mysql/postgreSQL

2011-07-14 11:28:27

mysql 日记设置参数

mysqld在每个二进制日志名后面添加一个数字扩展名。每次你启动服务器或刷新日志时该数字则增加。如果当前的日志大小达到 max_binlog_size,还会自动创建新的二进制日志。如果你正使用大的事务,二进制日志还会超过max_binlog_size:事务全写入一 个二进制日志中,绝对不要写入不同的二进制日志中。

my.ini中有两个设置:
#expire_logs_days = 10
#max_binlog_size = 100M

Expire_logs_days :定义了mysql清除过期日志的时间。
二进制日志自动删除的天数。默认值为0,表示“没有自动删除”。启动时和二进制日志循环时可能删除。
max_binlog_size

如果二进制日志写入的内容超出给定值,日志就会发生滚动。你不能将该变量设置为大于1GB或小于4096字节。 默认值是1GB

如果你正使用大的事务,二进制日志还会超过max_binlog_size-------上次一个小弟导入24G的sql文件,sql_log_bin没有关闭,差点杯具

set session sql_log_bin=0;
SET SESSION SQL_LOG_BIN=0 语句禁止将自己的语句记入二进制日志文件binlog中
2007-07-09 15:20

SET SESSION SQL_LOG_BIN=0 语句禁止将自己的语句写入mysql二进制日志文件binlog中

比NO_WRITE_TO_BINLOG好多了

set session sql_log_bin=0;

alter table …

set session sql_log_bin=1;

此特性用于在线0停机升级。


mysqladmin flush-logs 也可以重新开始新的binary log

log-bin[=file_name]

max_binlog_size=

binlog-do-db=db_name

binlog-ignore-db=db_name

query log:   log[=fina_name] 记录所有的query log,

slow query log: log-slow-queries[=file-name]

--log-bin-index[=file_name]选项更改二进制日志索引文件的文件名


innodb log

innodb_log_group_home_dir = /var/log/mysql
innodb_log_files_in_group=3


innodb_log_file_size参数及 调整日记组中文件数量时 调整要慎之又慎!!!

如果innodb_log_file_size以前是256M,现在要调整到512M,那么更改配置后,你将无法启动mysql,这个参数调整特别是有数据时需要慎之又慎!!!发这篇个文章主要是为了提醒我自己,以前吃过这方面的亏,还好当时是测试服务器。

那万一碰到后怎么办呢?

先改回去试试,能成功启动的话再导出数据做备份。再:
要STOP服务先,然后再删除原来的文件………
打开/var/lib/mysql
删除ib_logfile0, ib_logfile1……..ib_logfilen
再开启选项,成功启动。

阅读(958) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~