Portál AbcLinuxu, 15. května 2025 19:22

Dotaz: Jak bezpečně zastavit Mysql

30.8.2012 23:14 JUra
Jak bezpečně zastavit Mysql
Přečteno: 272×
Odpovědět | Admin
Ahoj. Poradí někdo, jak můžu bezpečně vypnout databázi Mysql? Určitě vás hned napadne příkaz
/etc/init.d/mysql stop
jenže nechci přerišit ukládání dat do Mysql, chtěl bych ji vypnout s nějakou jistotou že se do ní nezapisuje.. Díky za tip
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

mess avatar 31.8.2012 00:21 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
Rozbalit Rozbalit vše Re: Jak bezpečně zastavit Mysql
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud nejdřív vypneš všechny aplikace, co jsou k té databázi připojené, tak nebude problém. Pokud to není ve tvých silách, tak není jiná možnost, než je nějak utnout.

Pokud nevěříš, že MySQL při ukončení nechá databázi v konzistentním stavu (což by mělo), lze doporučit uzamčení tabulek
FLUSH TABLES WITH READ LOCK;

-- Tabulky jsou nyní zamčené a nelze do nich zapisovat.
-- V tomto místě zřejmě přijde vypnutí tvého serveru.

UNLOCK TABLES;
-- Tabulky je zase potřeba odemknout.
-- Nevím, jestli jsou tabulky zamčené i po restartu, musíš vyzkoušet.
Dále doporučím MySQL manuál, konkrétně témata FLUSH Syntax a LOCK TABLES and UNLOCK TABLES Syntax.

Po zamčení tabulek lze očekávat, že selžou všechny právě aktivní transakce, aby byla zachována konzistence dat. To může způsobit problémy v aplikacích, které budou zrovna s databází něco provádět.

Samozřejmě stav, v jakém se DB bude nacházet, bude nejvíce záležet na tom, jaká sis definoval integritní omezení.
Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
David Watzke avatar 31.8.2012 00:27 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Jak bezpečně zastavit Mysql
Jen doplním, že read lock rozhodně nepřežije restart DB; je to věc, která zanikne s konkrétním spojením do DB, které jej vyžádalo. Ani není potřeba dávat unlock, stačí jen ^D v klientovi.

A zároveň toto vůbec není potřeba, protože se to provede automaticky.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
mess avatar 31.8.2012 00:33 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
Rozbalit Rozbalit vše Re: Jak bezpečně zastavit Mysql
Vždyť to píšu, že by to MySQL mělo zvládat samo.
Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.