dbForge Data Compare for MySQL入門(mén)教程:數(shù)據(jù)同步過(guò)程概述
已知的數(shù)據(jù)比較問(wèn)題
比較MySQL數(shù)據(jù)庫(kù)時(shí)存在以下問(wèn)題。這些問(wèn)題是由MySQL或表引擎限制引起的。
- 插入BLACKHOLE引擎的數(shù)據(jù)實(shí)際上并未插入任何地方,BLACKHOLE表始終不包含任何數(shù)據(jù)。因此,如果您將BLACKHOLE表的數(shù)據(jù)與其他表同步,它將保持為空。
- 無(wú)法使用EXAMPLE表引擎將數(shù)據(jù)插入表中。如果您嘗試將EXAMPLE表的數(shù)據(jù)與其他表同步,則會(huì)收到錯(cuò)誤消息。
- 如果一個(gè)表在MySQL 6.0服務(wù)器上而另一個(gè)表在早期的MySQL服務(wù)器上,那么不會(huì)比較沒(méi)有NOT NULL選項(xiàng)的TIMESTAMP列表。
- 在某些情況下,可以將相等的浮點(diǎn)值視為不同的。
- 如果第一個(gè)表列具有TIMESTAMP類(lèi)型且沒(méi)有顯式默認(rèn)值,那么它與CURRENT_TIMESTAMP不同,在插入或更新記錄時(shí),MySQL會(huì)為它們?cè)O(shè)置CURRENT_TIMESTAMP值。如果此列具有主要或唯一約束,則無(wú)法同時(shí)插入或更新多個(gè)記錄。執(zhí)行數(shù)據(jù)同步時(shí),只能同時(shí)為此表同步第一條記錄。其他記錄違反了約束。
比較數(shù)據(jù)后dbForge Data Compare for MySQL為您提供了一種簡(jiǎn)單方便的數(shù)據(jù)同步方式。
您可以手動(dòng)指定要同步的表甚至哪些記錄。使用數(shù)據(jù)比較文檔網(wǎng)格的第一列中的復(fù)選框包括或排除要同步的對(duì)象。
請(qǐng)注意,強(qiáng)烈建議在數(shù)據(jù)同步之前備份目標(biāo)數(shù)據(jù)庫(kù)。
如果使用不同的數(shù)據(jù)類(lèi)型同步數(shù)據(jù),則可能會(huì)遇到同步警告。它們顯示在“ Summary”,“ Data Synchronization”向?qū)е小H绻腥魏瓮骄妫瑒t表示在同步數(shù)據(jù)期間,由于舍入,截?cái)嗟仍颍赡軙?huì)遇到錯(cuò)誤或數(shù)據(jù)丟失。有關(guān)同步警告的詳細(xì)信息,請(qǐng)閱讀同步警告主題。
該Data Synchronization向?qū)г试S您可以立即應(yīng)用更新或創(chuàng)建目標(biāo)數(shù)據(jù)庫(kù)的更新腳本,并將其保存到一個(gè)文件中。有關(guān)更多信息,請(qǐng)?jiān)L問(wèn)“ Synchronizing Databases ”主題。在開(kāi)始同步之前,您可以查看包含將在同步期間執(zhí)行的所有操作的操作計(jì)劃。操作計(jì)劃表示同步腳本結(jié)構(gòu),因此如果您已選擇立即執(zhí)行腳本,則在生成或執(zhí)行此腳本之前對(duì)其進(jìn)行分析是很好的。操作計(jì)劃顯示在“ Data Synchronization ” 向?qū)У?ldquo; Summary ”頁(yè)面上。