START SLAVE語法 |
發布時間: 2012/8/26 16:12:38 |
START SLAVE [thread_type [, thread_type] ... ] 計算機愛好者www.boydavid.com
START SLAVE [SQL_THREAD] UNTIL
MASTER_LOG_FILE = 'log_name', MASTER_LOG_POS = log_pos 電腦入門www.boydavid.com
START SLAVE [SQL_THREAD] UNTIL 電腦入門www.boydavid.com
RELAY_LOG_FILE = 'log_name', RELAY_LOG_POS = log_pos
thread_type: IO_THREAD | SQL_THREAD 電腦常識www.boydavid.com
不含選項的START SLAVE會同時啟動兩個從屬服務器線程。I/O線程從主服務器中讀取查詢,并把它們存儲在中繼日志中。SQL線程讀取中繼日志并執行查詢。START SLAVE要求SUPER權限。
如果START SLAVE成功地啟動了從屬服務器線程,則會返回,不會出現錯誤。但是,即使在此情況下,也有可能出現這樣的現象——服務器線程啟動了,然后又停止了(例如,因為它們沒有成功地連接到主服務器上,或者沒有能讀取二進制日志,或者出現了其它問題)。START SLAVE對此不會發出警告。您必須檢查從屬服務器的錯誤日志,查看是否有由從屬服務器線程產生的錯誤消息,或者使用SHOW SLAVE STATUS檢查它們是否運行正常。 計算機愛好者www.boydavid.com 您可以把IO_THREAD和SQL_THREAD選項添加到語句中,指明哪些線程將要啟動。 計算機愛好者www.boydavid.com 可以添加一個UNTIL子句,指定從屬服務器應啟動并運行,直到SQL線程達到主服務器二進制日志中的一個給定點為止。當SQL線程達到此點時,它會停止。如果在該語句中指定了SQL_THREAD選項,則它只會啟動SQL線程。否則,它會同時啟動兩個從屬服務器線程。如果SQL線程正在運行,則UNTIL子句被忽略,并發布一個警告。 電腦入門www.boydavid.com 對于一個UNTIL子句,您必須同時指定一個日志文件名和位置。不要把主服務器和中繼日志選項混合在一起。電腦知識www.boydavid.com UNTIL條件由一個后續的STOP SLAVE語句,或一個不包括UNTIL子句的START SLAVE語句,或一個服務器重啟命令重新設置。
UNTIL子句對于調試復制操作是有用的,或者可用于促使復制操作繼續,直到接近一個特定的點時為止,在此點,您想要避免讓從屬服務器復制一個語句。舉例說明,如果在主服務上執行了一個不明智的DROP TABLE語句,您可以使用UNTIL來告知從屬服務器,執行到此點就停止,不要再繼續了。要查找該事件是什么,需對主服務器日志或從屬中繼日志使用 本文出自:億恩科技【www.endtimedelusion.com】 |