1. 程式人生 > 實用技巧 >【轉】【Salesforce】Apex 的異常處理

【轉】【Salesforce】Apex 的異常處理

mysqlbinlog會偽裝成一個slave,連線主庫請求指定的binlog file,
主庫接收到這個請求之後建立一個binlog dump執行緒推送binlog給mysqlbinlog server。

[root@wallet01 ~]# mysql -uroot -pabcd.1234
mysql> grant replication slave on *.* to 'repl'@'%' identified by 'repl';
Query OK, 0 rows affected (0.08 sec)

mysql> flush privileges; 
Query OK, 0 rows affected (0.03 sec)

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |  67152168 |
| mysql-bin.000002 |  67138954 |
| mysql-bin.000003 |  67133196 |
| mysql-bin.000004 |  67146060 |
| mysql-bin.000005 |  67172089 |
| mysql-bin.000006 |  12159668 |
+------------------+-----------+
6 rows in set (0.03 sec)

[root@wallet02 ~]# su - mysql
[mysql@wallet02 ~]$ mkdir binlog

[mysql@wallet02 ~]$ nohup mysqlbinlog -R --raw --host=192.168.40.34 --user=repl --password=repl --port=3306 \
--stop-never mysql-bin.000001 -r /home/mysql/binlog/&

[mysql@wallet02 ~]$ cd binlog
[mysql@wallet02 binlog]$ ls -lh
total 340M
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000001
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000002
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000003
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000004
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000005
-rw-r----- 1 mysql mysql 20M Sep 17 14:06 mysql-bin.000006

引數解析
-R, --read-from-remote-server: 代表從遠端mysql伺服器上讀取binlog。 

--raw: requires -R. 被複制過來的binlog以二進位制的格式存放,如果不加該引數則為text格式。

--stop-never: mysqlbinlog可以只從遠端伺服器獲取指定的幾個binlog,也可將不斷生成的binlog儲存到本地。
指定此選項,代表只要遠端伺服器不關閉或者連線未斷開,mysqlbinlog就會不斷的複製遠端伺服器上的binlog。 

--to-last-log:代表mysqlbinlog不僅能夠獲取指定的binlog,還能獲取其後生成的binlog,獲取完了,才終止。
如果指定了--stop-never選項則會隱式開啟--to-last-log選項。

mysql-bin.000091:代表從哪個binlog開始複製。

--stop-never-slave-server-id:在備份遠端伺服器的binlog時,mysqlbinlog本質上就相當於一個從伺服器,
該選項就是用來指定從伺服器的server-id。

-r, --result-file=name: 用於設定遠端伺服器的binlog,儲存到本地的字首。
例如對於mysql-bin.000001,如果指定--result-file=/test/backup-,則儲存到本地後的檔名為/test/backup-

mysql-bin.000001。
注意:如果將--result-file設定為目錄,則一定要帶上目錄分隔符“/”。
例如--result-file=/test/,而不是--result-file=/test,否則儲存到本地的檔名為/testmysql-bin.000001。