mysql數據庫中,flush logs


在mysql數據庫,如果數據庫啟動的時候,啟用了log-bin選項,那么,

所有對於數據庫的修改都會記錄在binary log中,binary log可以用於數據庫的恢復。

     1.查看my.cnf中配置的log-bin參數

[mysql@redhat6 ~]$ grep "log-bin" /etc/my.cnf 
log-bin=/mysql/data/mysql-bin/mysql-bin   #定義binary log所在的目錄及bin log以什么名字開始。
2.查看binary log在操作系統上生成的文件
[mysql@redhat6 ~]$ cd /mysql/data/mysql-bin/
[mysql@redhat6 mysql-bin]$ ls -l
total 969552
-rw-rw----. 1 mysql mysql     27693 Jan 18 17:15 mysql-bin.000001
-rw-rw----. 1 mysql mysql   1133097 Jan 18 17:15 mysql-bin.000002
-rw-rw----. 1 mysql mysql       264 Jan 18 17:20 mysql-bin.000003
-rw-rw----. 1 mysql mysql     26636 Jan 18 17:24 mysql-bin.000004
-rw-rw----. 1 mysql mysql   1133097 Jan 18 17:24 mysql-bin.000005
-rw-rw----. 1 mysql mysql       126 Jan 18 17:34 mysql-bin.000006
-rw-rw----. 1 mysql mysql       126 Jan 18 17:36 mysql-bin.000007
-rw-rw----. 1 mysql mysql       126 Jan 18 17:38 mysql-bin.000008
-rw-rw----. 1 mysql mysql       126 Jan 18 17:40 mysql-bin.000009
-rw-rw----. 1 mysql mysql       126 Jan 19 09:59 mysql-bin.000010
-rw-rw----. 1 mysql mysql       126 Jan 19 10:03 mysql-bin.000011
-rw-rw----. 1 mysql mysql       126 Jan 19 10:05 mysql-bin.000012
-rw-rw----. 1 mysql mysql       126 Jan 19 10:06 mysql-bin.000013
-rw-rw----. 1 mysql mysql      8428 Jan 19 17:57 mysql-bin.000014
3.mysql-bin.index文件是所有bin log文件的列表(列出所有binary log所在路徑和名字,./表示的是data目錄)
[mysql@redhat6 mysql-bin]$ cat mysql-bin.index 
./mysql-bin.000001
./mysql-bin.000002
./mysql-bin.000003
./mysql-bin.000004
./mysql-bin.000005
./mysql-bin.000006
./mysql-bin.000007
./mysql-bin.000008
./mysql-bin.000009
./mysql-bin.000010
 4.查看當前數據庫binary log的位置
mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000089 |      107 |              |                  |
+------------------+----------+--------------+------------------+
當前使用的bin log是“mysql-bin.000089”,位置是107
5.執行flush logs命令
mysql> flush logs;
Query OK, 0 rows affected (0.04 sec)

mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000090 |      107 |              |                  |
+------------------+----------+--------------+------------------+
通過執行flush logs命令之后,再次查詢binary log信息,發現已經使用了一個新的bin log文件了。
flush logs命令的作用就是關閉當前使用的binary log,然后打開一個新的binary log文件,binlog文件的序號遞增加1。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM