当前位置:嗨网首页>书籍在线阅读

11-启动二进制日志

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

14.3.1 启动二进制日志

二进制日志记录了所有对数据库数据的修改操作,所以MySQL数据库默认情况下是不开启二进制日志文件的,可通过查看命令查看,如下图所示。

Figure-0369-265.jpg 根据实际需要,可以通过以下步骤手动启用二进制日志。

⑴打开MySQL安装目录\my.ini(Windows系统是my.ini文件,Linux是my.cnf文件)。

⑵找到[mysqld]这个标签,在此标签下面一行,添加如下语句。

log-bin=[filename]

在该语句中,log-bin说明要开启二进制日志文件;filename是二进制日志文件的名字。如果没有指定[filename],默认为主机名后面跟-bin作为文件名,默认存放在DATADIR目录中。笔者指定了文件名为binary_log。

如果只对制定数据库生成二进制日志,则需要添加如下语句。如果不对制定数据库生成二进制日志,则需要添加如下语句。

Binlog-do-db=db_name(数据库名称)

Binlog-ignore-db=db_name(数据库名称)

⑶重启MySQL服务。可以在MySQL安装目录\data 文件夹下看到“binary_log.数字编号”文件,如binary_log.000001。以后每重启一次MySQL服务,都会重新生成二进制日志文件,文件名中的数字编号依次递增。

如果日志长度超过了max_binlog_size的上限(默认是1G=1073741824B)也会创建一个新的日志文件,通过SHOW命令可以查看二进制日志的上限。

mysql> show variables like 'max_binlog_size'; +-----------------+------------+ |Variable_name |Value | +-----------------+------------+ | max_binlog_size | 1073741824 | +-----------------+------------+ 1 row in set (0.00 sec)

使用flush logs(MySQL命令符)或者执行mysqladmin–u –p flush-logs(Windows命令提示符)也会创建一个新的日志文件。

完成以上操作后再次查看二进制日志相关信息如下。从以上的查询结果可以看出,log_bin变量的值已经为“ON,”表明二进制日志打开成功。

mysql> show variables like 'log_bin%'\G 1.row Variable_name: log_bin Value: ON 2.row Variable_name: log_bin_basename Value: E:\mysql-5.6.22-winx64\data\binary_log 3.row Variable_name: log_bin_index Value: E:\mysql-5.6.22-winx64\data\binary_log.index 4.row Variable_name: log_bin_trust_function_creators Value: OFF 5.row Variable_name: log_bin_use_v1_row_events Value: OFF 5 rows in set (0.00 sec)

技巧 重启MySQL服务操作:首先退出mysql,输入“net stop mysql”;提示服务停止后,再次输入“net start mysql”即可重启服务。