mysqldump --skip-lock-tables
cara-palma bem no topo da página do manual
Eu estou tentando criar um dump de um banco de dados mysql armazenado procedimentos e 'formas' de tabela sem bloquear nenhuma linha.
mysqldump -uread_only -p --routines -d --skip-add-locks the_db_name
Isso não funciona porque não tenho permissão para bloquear a tabela. Eu não deveria precisar, pois não quero copiar os dados em si. Os procedimentos armazenados só mudam a cada ano, então eu teria o azar de pegar um conflito!
Muito obrigado.
mysqldump --skip-lock-tables
cara-palma bem no topo da página do manual
Por favor, tenha em mente que você tem que fazer isso porque Stored Procedures (SP) vive em mysql.proc. Essa é uma tabela MyISAM. SELECTs contra mysql.proc criam um bloqueio implícito. Outros bancos de dados podem ter SPs que precisam ser alterados (possibilidade pequena, mas possível, no entanto).
Para garantir que nenhum atributo sobre qualquer SP seja alterado, um bloqueio explícito é emitido contra o mysql.proc. Fazer --skip-lock-tables
é aceitável, desde que você saiba que nenhum outro SP está sendo alterado.
Tags mysql