MySQL 5.7開啟并查看biglog的詳細教程
biglog簡介
binlog 就是binary log,二進制日志文件,這個文件記錄了MySQL所有的DML操作。通過binlog日志我們可以做數(shù)據(jù)恢復(fù),增量備份,主主復(fù)制和主從復(fù)制等等。
binlog使用詳細步驟
1.修改mysql配置文件
vi /etc/my.cnf
[mysqld]下增加如下配置
log-bin=mysql-bin server-id=1
說明:log-bin指定了binlog的前綴名,server-id必須唯一且不同于其他MySQL服務(wù)器
2.重啟mysql
centos重啟示例
systemctl restart mysqld
3.操作數(shù)據(jù)庫
往數(shù)據(jù)庫中的某個表新增一條記錄或者創(chuàng)建表都會往biglog文件中寫入內(nèi)容
4.查看binglog
cd /var/lib/mysql/mysql-bin ll -la
可以看到會有類似mysql-bin.000001的文件生成
drwxr-x--x. 6 mysql mysql 4096 3月 13 22:44 . drwxr-xr-x. 27 root root 4096 8月 29 2023 .. -rw-r-----. 1 mysql mysql 56 8月 29 2023 auto.cnf -rw-------. 1 mysql mysql 1680 8月 29 2023 ca-key.pem -rw-r--r--. 1 mysql mysql 1112 8月 29 2023 ca.pem -rw-r--r--. 1 mysql mysql 1112 8月 29 2023 client-cert.pem -rw-------. 1 mysql mysql 1680 8月 29 2023 client-key.pem -rw-r-----. 1 mysql mysql 283 3月 13 22:40 ib_buffer_pool -rw-r-----. 1 mysql mysql 12582912 3月 13 22:42 ibdata1 -rw-r-----. 1 mysql mysql 50331648 3月 13 22:42 ib_logfile0 -rw-r-----. 1 mysql mysql 50331648 8月 29 2023 ib_logfile1 -rw-r-----. 1 mysql mysql 12582912 3月 13 22:42 ibtmp1 drwxr-x---. 2 mysql mysql 4096 8月 29 2023 mysql -rw-r-----. 1 mysql mysql 962 3月 13 22:42 mysql-bin.000001 -rw-r-----. 1 mysql mysql 19 3月 13 22:40 mysql-bin.index srwxrwxrwx. 1 mysql mysql 0 3月 13 22:40 mysql.sock -rw-------. 1 mysql mysql 5 3月 13 22:40 mysql.sock.lock drwxr-x---. 2 mysql mysql 8192 8月 29 2023 performance_schema -rw-------. 1 mysql mysql 1680 8月 29 2023 private_key.pem -rw-r--r--. 1 mysql mysql 452 8月 29 2023 public_key.pem -rw-r--r--. 1 mysql mysql 1112 8月 29 2023 server-cert.pem -rw-------. 1 mysql mysql 1680 8月 29 2023 server-key.pem drwxr-x---. 2 mysql mysql 8192 8月 29 2023 sys drwxr-x---. 2 mysql mysql 58 3月 13 22:41 test
直接查看binlog可以看到有很多亂碼
正確查看方式是使用命令查看
4.1mysqlbinlog示例:
mysqlbinlog -v /var/lib/mysql/mysql-bin.000001
也可以把內(nèi)容寫入到文件中
4.2mysqlbinlog將biglog寫入文件示例:
mysqlbinlog -v /var/lib/mysql/mysql-bin.000001 > /opt/mysql-bin-000001.txt
示例中將binlog寫入了文件 /opt/mysql-bin-000001.txt中
此時,查看文件/opt/mysql-bin-000001.txt就沒有亂碼了,但是和執(zhí)行sql還是有差異的
4.2.1創(chuàng)建表生成的biglog示例:
#240313 22:41:55 server id 1 end_log_pos 667 CRC32 0x5b0f29d8 Query thread_id=3 exec_time=0 error_code=0 use `test`/*!*/; SET TIMESTAMP=1710340915/*!*/; CREATE TABLE `test`.`t_table` (^M `id` int(0) NOT NULL,^M `name` varchar(255) NULL,^M `address` varchar(255) NULL,^M `create_time` datetime(0) NULL,^M `update_time` datetime(0) NULL,^M PRIMARY KEY (`id`)^M )
說明,第一行是時間戳,240313表示2024年3月13日
22:41:55表示具體時間
下面是創(chuàng)建表語句
4.2.2插入表生成的biglog示例
#240313 22:42:19 server id 1 end_log_pos 931 CRC32 0x038eed84 Write_rows: table id 101 flags: STMT_END_F BINLOG ' S7vxZRMBAAAAPAAAAGADAAAAAGUAAAAAAAEABHRlc3QAB3RfdGFibGUABQMPDxISBv8A/wAAAB7D vV1G S7vxZR4BAAAAQwAAAKMDAAAAAGUAAAAAAAEAAgAF/+ABAAAACHpoYW5nc2FuB2JlaWppbmeZsttq jpmy22qRhO2OAw== '/*!*/; ### INSERT INTO `test`.`t_table` ### SET ### @1=1 ### @2='zhangsan' ### @3='beijing' ### @4='2024-03-13 22:42:14' ### @5='2024-03-13 22:42:17' # at 931 #240313 22:42:19 server id 1 end_log_pos 962 CRC32 0xb2c0a6e7 Xid = 62 COMMIT/*!*/;
4.2.3更新表biglog示例
#240313 23:04:34 server id 1 end_log_pos 1558 CRC32 0xfbe11994 Update_rows: table id 102 flags: STMT_END_F BINLOG ' gsDxZRMBAAAAPAAAAKUFAAAAAGYAAAAAAAEABHRlc3QAB3RfdGFibGUABQMPDxISBv8A/wAAAB6l yfEH gsDxZR8BAAAAcQAAABYGAAAAAGYAAAAAAAEAAgAF///gAQAAAAh6aGFuZ3NhbgdiZWlqaW5nmbLb ao6ZsttqkeABAAAADHpoYW5nc2FuLTg4OBBiZWlqaW5nLWNoYW95YW5nmbLbao6ZsttxIpQZ4fs= '/*!*/; ### UPDATE `test`.`t_table` ### WHERE ### @1=1 ### @2='zhangsan' ### @3='beijing' ### @4='2024-03-13 22:42:14' ### @5='2024-03-13 22:42:17' ### SET ### @1=1 ### @2='zhangsan-888' ### @3='beijing-chaoyang' ### @4='2024-03-13 22:42:14' ### @5='2024-03-13 23:04:34'
特別說明:where與set之間都是原始值,set后面都是更新后的值
到此這篇關(guān)于MySQL 5.7開啟并查看biglog的詳細教程的文章就介紹到這了,更多相關(guān)MySQL 5.7開啟并查看biglog內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql kill進程后出現(xiàn)killed死鎖問題及解決
這篇文章主要介紹了mysql kill進程后出現(xiàn)killed死鎖問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
MySQL中l(wèi)ower_case_table_names作用及使用小結(jié)
在使用DataEase連接外部數(shù)據(jù)庫時,可能會遇到啟動報錯的問題,官方文檔指出,修改數(shù)據(jù)庫配置文件中的lower_case_table_names=1參數(shù)可以解決此問題,此參數(shù)控制表名大小寫敏感性,感興趣的可以了解一下2024-09-09
mysql 8.0.15 版本安裝教程 連接Navicat.list
這篇文章主要為大家詳細介紹了mysql 8.0.15 版本安裝教程,連接Navicat.list,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08

