2015-09-28 42 views
0

我已經在mysql 5.1上覆制了我的數據庫到mariadb 10.0。我已經在從服務器上安裝mariadb 10.0,在mysql 5.1上進行備份,在有mariadb 10.0的從服務器上傳輸備份。並設置複製。一切順利。但奴隸卡在delete_row_event。 我做了RCA,發現這個表上有一些類型的數據不匹配。下面是表的結構:從MySQL 5.1複製到mariadb 10.0

CREATE TABLE gsfdata_on_date日期DEFAULT NULL, record_timestamp時間戳NULL DEFAULT CURRENT_TIMESTAMP, WAODate VARCHAR(25)DEFAULT NULL, CardNbr VARCHAR(255)DEFAULT NULL, TranAmt浮DEFAULT NULL, TranCode VARCHAR(255)DEFAULT NULL, InvoiceNbr VARCHAR(255)DEFAULT NULL, MerNo VARCHAR(255)DEFAULT NULL, BatchNo VARCHAR(255)DEFAULT NULL, GoeRefNum VARCHAR(255)DEFAULT NULL, GoeOrderID VARCHAR(255)DEFAULT NULL, KEY InvoiceNbrInvoiceNbr) )ENGINE = MyISAM的默認字符集= LATIN1 我

我雖然,這可能是由於一些誤在我的最後配置複製。所以,我決定採取這張桌子的轉儲並且恢復它。 然後,我從從屬表中刪除了表,並從主服務器獲取了只有此表的完整轉儲並存儲在從服務器中。但在這裏我也面臨同樣的問題。這裏的數據並不完全相同,這次我並不期待。

在主,我執行:

的MySQL>從GSF選擇record_timestamp其中record_timestamp = 1443078738; 空集,1個警告(0.38秒)

mysql> show warnings; + --------- + ------ + ------------------------------- ------------------------------------------------ + |級別|代碼|留言| + --------- + ------ + ------------------------------- ------------------------------------------------ + |警告| 1292 |不正確的日期時間值:'1443078738'在第1行的'record_timestamp'列中 + --------- + ------ + ------------------------------- ------------------------------------------------ +

在從屬設備上,我執行相同的查詢並返回,

record_timestamp | + --------------------- + | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | | 0000-00-00 00:00:00 | + --------------------- + 設置10行,1條警告(0。29秒)

顯示警告; + --------- + ------ + ------------------------------- --------- + |級別|代碼|留言| + --------- + ------ + ------------------------------- --------- + |警告| 1292 |錯誤的日期時間值:'1443078738'|

我認爲mariadb 10上的配置變量正在影響我的數據。

請在這方面幫助我。

從mysql 5.1創建slave到mariadb 10.0是否可行?

回答

0

TIMESTAMP字段預期格式爲'2015-09-24 07:12:18'。這就是爲什麼你會在MySQL和MariaDB中得到警告。以正確的格式運行查詢,並且結果對於兩個DB都是相同的 - 假設導入也沒有警告。

使用FROM_UNIXTIME()自1970年以來,從秒轉換爲時間戳格式:

SELECT FROM_UNIXTIME('1443078738') AS `timestamp`; 

timestamp 
......... 
2015-09-24 07:12:18 

據我瞭解,MySQL和瑪麗亞不確認剩餘兼容。如果二進制日誌不兼容,我不會感到驚訝。您可以使用更新版本的MySQL還是較舊的MariaDB版本進行測試。