国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysqldump+mysqlbinlog執行備份與復原

2024-07-24 12:32:06
字體:
來源:轉載
供稿:網友
        服務器的二進制日志文件由用來描述修改數據庫內容的事件組成。服務器以二進制方式來寫這些文件。為了以文本格式來顯示這些內容,可以使用mysqlbinlog工具。也可以使用mysqlbinlog來顯示在復制環境中由從從slave服務器所寫入中relay日志文件中的內容,因為其格式與二進制日志文件格式一樣。
      mysqlbinlog的使用語法如下:
      Usage: mysqlbinlog [options] log-files
 
      下面的命令用來顯示名為binlog.000001的二進制日志文件的內容:
 
[mysql@localhost ~]$ mysqlbinlog  /mysqldata/mysql/binlog.000001
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#191115 15:39:01 server id 1  end_log_pos 123 CRC32 0x2d9d7b4f  Start: binlog v 4, server v 5.7.26-log created 191115 15:39:01 at startup
# Warning: this binlog is either in use or was not closed properly.
ROLLBACK/*!*/;
BINLOG '
FVbOXQ8BAAAAdwAAAHsAAAABAAQANS43LjI2LWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAVVs5dEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA
AU97nS0=
 
# at 736
#191115 15:51:45 server id 1  end_log_pos 801 CRC32 0xc2c892b8  Anonymous_GTID  last_committed=2        sequence_number=3       rbr_only=no
SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
# at 801
#191115 15:51:45 server id 1  end_log_pos 882 CRC32 0x51a9cd5c  Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804305/*!*/;
BEGIN
/*!*/;
# at 882
# at 914
#191115 15:51:45 server id 1  end_log_pos 914 CRC32 0x40a98fae  Intvar
SET INSERT_ID=2/*!*/;
#191115 15:51:45 server id 1  end_log_pos 1082 CRC32 0x3396c40d         Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804305/*!*/;
insert into person(last_name,first_name,birth,death) values('yan','huang','1990-08-25',null)
/*!*/;
# at 1082
#191115 15:51:45 server id 1  end_log_pos 1164 CRC32 0xf6f6efad         Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804305/*!*/;
COMMIT
/*!*/;
# at 1164
#191115 15:51:53 server id 1  end_log_pos 1229 CRC32 0x55b50dbe         Anonymous_GTID  last_committed=3        sequence_number=4       rbr_only=no
SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
# at 1229
#191115 15:51:53 server id 1  end_log_pos 1310 CRC32 0xd0f6a335         Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804313/*!*/;
BEGIN
/*!*/;
# at 1310
# at 1342
#191115 15:51:53 server id 1  end_log_pos 1342 CRC32 0xfad94baf         Intvar
SET INSERT_ID=3/*!*/;
#191115 15:51:53 server id 1  end_log_pos 1508 CRC32 0x26c5b3bb         Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804313/*!*/;
insert into person(last_name,first_name,birth,death) values('yali','ye','1994-12-23',null)
/*!*/;
# at 1508
#191115 15:51:53 server id 1  end_log_pos 1590 CRC32 0xbb6a2b4c         Query   thread_id=2     exec_time=0     error_code=0
SET TIMESTAMP=1573804313/*!*/;
COMMIT
/*!*/;
SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/;
DELIMITER ;
# End of log file
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
     上面輸出了binlog.000001二進制日志文件中所包含的內容。對于基于語句的日志,事件信息包括SQL語句,執行語句的服務器ID,語句被執行的時間戳,執行時間等。對于基于行記錄的日志,事件信息指示行的改變而不是SQL語句。
 
# at 486
#191115 15:51:38 server id 1  end_log_pos 486 CRC32 0xb746cd30  Intvar SET INSERT_ID=1/*!*/;
#191115 15:51:38 server id 1  end_log_pos 654 CRC32 0x0e926042  Query   thread_id=2
exec_time=0     error_code=0 SET TIMESTAMP=1573804298/*!*/;
      第一行,at后面的數字指示事件在二進制日志文件中的偏移量或開始位置。
 
      第二行是以日期和時間開始指示語句開始執行的時間。對于復制來說,這個時間戳將傳播到從屬服務器。server id是事件起源服務器的server_id值。end_log_pos指示下一個事件開始的位置(它是當前事件的終止位置+1)。thread_id那個線程來執行這個事件。exec_time是在主服務器上執行事件所花費的時間。在從屬服務器上,它是從屬服務器上執行結束時間減去主服務器上的執行開始時間的差值。這種差值可以作為一種指示來表示復制進程落后于主服務器多長時間。error_code指示執行事件的結果。零意味著沒有出現錯誤。
 
mysqlbinglog的輸出可以用來重新執行日志文件中的語句(例如,通過使用mysql工具)。這在服務器崩潰時用來恢復是很有用的。
 
二進制日志文件備份要求在調用mysqlbinlog時最少要使用兩個選項:
.--read-from-remote-server(或-R)選項來告訴mysqlbinlog連接到一個服務器并讀取它的二進制日志文件(這類似于一個從屬復制服務器連接到它的主服務器).
 
.--raw選項告訴mysqlbinlog以原始(二進制)格式輸出,而不是文本格式。
 
與--read-from-remote-server一起通常還指定其它選項:--host指示服務器運行在哪里,并且可能需要指定連接選項--user和password。
 
與--raw聯合使用的幾個其它選項:.--stop-never:在讀取到最后日志文件后保持對服務器的連接并繼續讀取新的事件。
 
.--stop-never-slave-server-id=id:當--stop-never被使用時mysqlbinlog報告的服務器ID,缺省值65535。這可以避免與從屬服務器或其它的mysqlbinlog進程的ID沖突。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海原县| 大冶市| 蒙山县| 铜川市| 织金县| 会泽县| 吴旗县| 凤凰县| 乌拉特中旗| 淮阳县| 樟树市| 吐鲁番市| 新乡县| 长宁县| 开原市| 明光市| 封开县| 京山县| 应用必备| 清徐县| 南乐县| 临清市| 焦作市| 微山县| 永吉县| 旌德县| 富源县| 临高县| 康定县| 徐闻县| 全州县| 吉木萨尔县| 临桂县| 崇仁县| 昌图县| 古浪县| 德江县| 鲜城| 新田县| 武川县| 桂林市|