sql >> Databáze >  >> RDS >> Mysql

znakové sady v replikaci MySQL

replikace mezi servery, kde se globální parametry character_set_% a collation% liší, není podporována.

http://dev.mysql.com/doc /refman/5.6/en/replication-features-charset.html

-- on both servers check the output of...
SHOW VARIABLES LIKE 'char%';
SHOW VARIABLES LIKE 'collat%';

replikace může nejen selhat, pokud jsou sady a porovnávání odlišné, ale může mít za následek různé pořadí řazení a ztrátu znaků během převodních sad/kolací. pořadí řazení může ovlivnit věci, jako je vložení/aktualizace, pokud používáte replikaci založenou na příkazech.

nejlepší je nakonfigurovat nový server tak, aby používal stejné sady a kolace jako starý server. to zajistí, že replikace bude fungovat správně. budete se také chtít ujistit, že databáze, tabulky a sloupce mají mezi hlavním a podřízeným zařízením stejné řazení. jakmile migrujete na nový server, můžete upravit sadu a řazení pomocí nástrojů, jako je online změna schématu 5.6 nebo pt-online-schema-change ze sady nástrojů percona.

Doporučuji také spustit kontrolní součet pt-table-checksum percona, abyste se ujistili, že se vaše tabulky během replikace nebo počátečního exportu/importu nerozcházely.

více informací o dopadu rozdílů naleznete zde:

pro každého, kdo používá Amazon RDS, mějte na paměti, že výchozí nastavení mysql 5.6 používá smíšené utf8(mb3) a latin1 (pro server a databázi). měli byste je přepsat vlastní skupinou parametrů, pokud se replikuje z RDS do/z RDS (odpovídající zdrojové/cílové servery).



  1. Převeďte skript MySQL na SQL Server

  2. Jak nastavit heslo root na null

  3. dosáhnout limitu paměti se smyčkou uvnitř smyčky uvnitř smyčky

  4. Potenciální vylepšení pro aktualizace statistik:MAXDOP