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

důsledky změny úložiště mysql, když aplikace běží v produkci

Jakékoli změny provedené pomocí ALTER TABLE který vyžaduje kopii tabulky uzamkne tabulku. Toto je nejdůležitější problém aplikací. Tabulka bude nepřístupná z dotazů jakékoli aplikace.

Jak dlouho toto uzamčení trvá, závisí na velikosti tabulky a výkonu vašeho serveru a další zátěži, pod kterou se server nachází.

Změny můžete provádět s minimálními prostoji, pokud použijete online nástroj pro změnu schématu, jako je pt-online-schema-change .

Další strategií je provádět změny v tabulkách v replikované instanci databáze. Je v pořádku, že tabulky mají na replice jiný úložný modul než na předloze. Nezajímá vás, že jsou tabulky uzamčeny, pouze to způsobí zpoždění replikace, a když jsou změny provedeny, replikace by měla dohnat. Až bude vše hotovo, můžete přepnout aplikaci tak, aby používala repliku, a poté vyřadit z provozu bývalou instanci hlavní databáze.




  1. ORDER BY Color s Hex kódem jako kritériem v MySQL

  2. mysql date_sub pomocí pole jako interval

  3. Knex.js vynutí opětovné použití relace pro 4 následující dotazy

  4. Pole Mysql nefunguje