我在 CentOS 上运行 MySQL 5.1.47。如何检查 InnoDB 的二进制日志记录是否处于活动状态?如果未启用,如何启用二进制日志记录?赶紧跑?
mysqld --log-bin
检查二进制日志是否处于活动状态:
mysql> show variables like '%bin%';
+---------------------------------+----------------------+
| Variable_name | Value |
+---------------------------------+----------------------+
| binlog_cache_size | 32768 |
| binlog_format | STATEMENT |
| innodb_locks_unsafe_for_binlog | OFF |
| log_bin | ON |
| log_bin_trust_function_creators | OFF |
| log_bin_trust_routine_creators | OFF |
| max_binlog_cache_size | 18446744073709547520 |
| max_binlog_size | 419430400 |
| sql_log_bin | ON |
| sync_binlog | 0 |
+---------------------------------+----------------------+
10 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
这里的关键部分是,log_bin ON但其他结果也可能很有趣/很重要。
您还应该在datadir命名的主机名-bin.00001 中看到一堆文件。您可以使用mysqlbinlog <filename>来查看二进制日志中的查询。
打开它, mysql> SET GLOBAL log_bin = ON;
您还需要编辑您的文件,my.cnf以便log_bin = ON下次重新启动 MySQL 时。