Použijte --single-transaction
abyste se vyhnuli uzamčení tabulek na tabulkách InnoDB.
S MyISAM nemůžete ve skutečnosti nic dělat, i když byste opravdu neměli používat MyISAM. Nejlepším řešením je vytvořit repliku pro čtení a vytvořit z ní zálohy, aby zámky neovlivnily aplikaci.
Měli byste zjistit, že zatímco záloha běží, READ LOCAL
zámek je držen na tabulkách v jediné databázi, která je právě zálohována, což znamená, že z tabulek můžete číst, ale zápisy (vložení/aktualizace/smazání) budou blokovány kromě určité vložky na MyISAM, kterých lze dosáhnout bez narušení zámku. Ty mohou být povoleny. Nejjednodušší způsob, jak zjistit, jak se to děje, je opakovaně dotazovat SHOW FULL PROCESSLIST;
najít vlákna, která blokují.