2011-09-01 57 views
0

我有一些腳本在MySQL主服務器上創建一個表,使用數據填充它,對數據執行一些操作,然後再次刪除表。CREATE TABLE不在MySQL主機上覆制到從服務器

我不希望所有這些都被複制到奴隸身上,因爲這是浪費時間。有什麼辦法可以告訴slave與這張表無關,要麼是在CREATE TABLE語句本身做一些巧妙的事情,要麼是設置一個配置命令來表示類似「不復制任何以temp_開頭的表」 「(表名是動態的,允許多個用戶,但始終以temp_開頭)。

當然,使用合適的臨時表將是完美的,但不幸的是我需要在一個查詢中多次引用該表,這是MySQL不允許的。

+0

你可以做同樣爲從上而不是主(節省一些麻煩) – ajreal

+1

通常我會,但我們的SQL類發送給主機的所有更新和插入(ETC)(爲你」想象),並告訴它做其他事情需要相當多的工作。 –

回答

1

有此一option
但我不相信你會喜歡這個(需要重新啓動)

告訴從SQL線程不要複製更新指定表的任何語句,即使任何其他表可能會被同一語句更新。要指定多個要忽略的表,請多次使用此選項,每個表使用一次。

details

+0

這導致我複製野外忽略表,它允許完美的通配符。重啓不是問題,因爲我們還沒有活着。乾杯! –

1

你可以把表放在另一個數據庫中。

然後做如下語句:

SELECT a.field1, b.field2 FROM table1 a 
INNER JOIN db2.tablex b 
..... 
+0

嗯,這是一個好主意。如果沒有內置的方法去做,那可能是我要做的。 –

相關問題