本文介紹mysql binlog的使用,包括開啟,關閉,查看狀態,刷新,清空,查看執行的sql語句等操作。並對5.7及舊版的設定加以說明,方便大家學習。
mysql binlog 介紹
binlog就是binary log,二進位日誌文件,記錄了mysql所有的dml操作。
根據mysql binlog文件,我們可以查看執行了什麼sql語句,進行資料恢復,主從同步複製等操作。
binlog檔案對於一個資料庫的處理和復原有很重要的作用。
1.mysql binlog 開啟與關閉
查看mysql binlog設定
show global variables like '%log_bin%'; +---------------------------------+-------+| Variable_name | Value | +---------------------------------+-------+| log_bin | OFF | | log_bin_basename | | | log_bin_index | | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF |+---------------------------------+-------+
binlog 目前是關閉的。
開啟binlog
開啟my.cnf或my.ini加入以下語句,重啟mysql
log_bin=ONlog_bin_basename=/usr/local/var/mysql/mysql-binlog_bin_index=/usr/local/var/mysql/mysql-bin.index
log_bin
ON表示開啟binlog日誌,關閉改為OFF。
log_bin_basename
表示binlog日誌的基本檔名,後面會追加標識來區分每一個檔案。
log_bin_index
指定binlog文件的索引文件,這個文件管理了所有binlog文件的目錄。
如果是mysql5.7以下,這樣設定就可以了,如果是5.7以上,需要按以下設定
log_bin=mysql-binserver_id=123456
log_bin # 表示自訂binlog檔案名稱。
server_id 表示隨機指定一個與其他叢集機器不重名的字串,設定mysql replication需要定義,不能和canal的slaveId重複。
重啟後再次查看mysql binlog配置
show global variables like '%log_bin%'; +---------------------------------+--------------------------------------+| Variable_name | Value | +---------------------------------+--------------------------------------+| log_bin | ON | | log_bin_basename | /usr/local/var/mysql/mysql-bin | | log_bin_index | /usr/local/var/mysql/mysql-bin.index | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF |+---------------------------------+--------------------------------------+
可以看到binlog已開啟。
2.查看binlog日誌檔案清單
show master logs; +------------------+-----------+| Log_name | File_size | +------------------+-----------+| mysql-bin.000001 | 177 | | mysql-bin.000002 | 177 | | mysql-bin.000003 | 177 | | mysql-bin.000004 | 177 | | mysql-bin.000005 | 177 | | mysql-bin.000006 | 177 | | mysql-bin.000007 | 201 | | mysql-bin.000008 | 201 | | mysql-bin.000009 | 201 || mysql-bin.000010 | 154 | +------------------+-----------+
3.查看目前正在寫入的binlog日誌
show master status; +------------------+----------+--------------+------------------+-------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+| mysql-bin.000010 | 154 | | | | +------------------+----------+--------------+------------------+-------------------+
4.刷新binlog日誌檔案
flush logs;
5.清空日誌檔案
reset master;
6.查看binglog日誌檔案內容
查看binlog日誌文件,查看執行了哪些sql語句,我們可以使用mysqlbinlog 工具進行處理。
首先根據log_bin_basename,找到存放binlog檔案的目錄,然後使用mysqlbinlog工具查看對應的binlog檔案。
例如:
mysqlbinlog -v mysql-bin.000001 > mysql-bin-1.log
然後查看mysql-bin-1.log,可以查看執行過的sql語句。
BINLOG ' Xq1HWhNA4gEAPAAAAGQBAAAAAPEEAAAAAAEACXRlc3RfdXNlcgAGY3NfdGFnAAUDDwEDAwL9AgBa WZlG Xq1HWh5A4gEANwAAAJsBAAAAAPEEAAAAAAEAAgAF/+ACAAAABABjc2RuAf2LG1r9ixtaIS88ZA== '/*!*/;### INSERT INTO `test_user`.`cs_tag`### SET### @1=2### @2='csdn'### @3=1### @4=1511754749### @5=1511754749# at 411
使用mysqlbinlog時需要注意一下幾點
#1.不要查看目前正在寫入的binlog文件,可以先把文件複製到其他目錄,再執行查看。
2.不要加force參數強制存取。
3.如果binlog格式是row模式的,請加-vv參數。
本篇文章解釋了mysql binlog的使用方法,更多相關知識請關注php中文網。
相關推薦:
講解php 基於redis使用令牌桶演算法實現流量控制的相關內容
以上是講解mysql binlog的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了PHP數據對象(PDO),這是PHP中數據庫訪問的擴展名。它通過準備好的語句及其對MySQLI的好處,包括數據庫抽象和更好的錯誤處理,強調了PDO在增強安全性方面的作用。

memcache和memcached是通過減少數據庫負載加快Web應用程序的PHP緩存系統。可以在仔細的密鑰管理的項目之間共享一個實例。

本文討論了JavaScript和PHP如何通過HTTP請求間接相互作用,因為它們的環境不同。它涵蓋了將數據從JavaScript發送到PHP的方法

文章討論了PHP從1995年的“個人主頁工具”到1998年的“ PHP:超文本預處理器”的演變,這反映了其超越個人網站的擴展使用。

防止會話固定攻擊的有效方法包括:1.在用戶登錄後重新生成會話ID;2.使用安全的會話ID生成算法;3.實施會話超時機制;4.使用HTTPS加密會話數據,這些措施能確保應用在面對會話固定攻擊時堅不可摧。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3漢化版
中文版,非常好用

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中