Skip to content

MySQL Commands Cheat Sheet

Backup com mysqldump

Com bloqueio de tabelas (Lock Tables)

mysqldump -u [USER] -p [PASSWORD] --lock-tables [DATABASE] > backup.sql

Notas: Bloqueia tabelas durante o backup. Use em ambientes onde as tabelas podem ser bloqueadas sem impactar a produção.

Sem bloqueio (Usando transações)

mysqldump -u [USER] -p --single-transaction --no-tables-lock [DATABASE] > backup.sql

Notas: Ideal para sistemas em produção. Utiliza transações para evitar bloqueios.

Gerenciamento de Usuários

Criar Usuário

CREATE USER 'user'@'localhost' IDENTIFIED BY 'senha_forte';

Dica: Restrinja o acesso ao 'localhost' para conexões locais.

Alterar Senha

ALTER USER 'user'@'localhost' IDENTIFIED BY 'nova_senha';

Limitar Conexões

ALTER USER 'user'@'localhost' WITH MAX_USER_CONNECTIONS 50;

Nota: Limita a 50 conexões simultâneas para o usuário.

Privilegios de Banco

Conceder Acesso Completo

GRANT ALL PRIVILEGES ON db.* TO 'user'@'%';

Cuidado: ALL PRIVILEGES concede acesso total. Use com restrições.

Acesso Personalizado

GRANT SELECT, INSERT ON db.* TO 'user'@'%';

Prática: Restrinjir privilégios ao necessário (ex: apenas SELECT, INSERT).

Revogar Privilégios

REVOKE INSERT ON db.* FROM 'user'@'%';

Comandos para SysAdmin

Monitorar Processos

SHOW PROCESSLIST;

Matar Processo Bloqueante

KILL [process_id];

Ajustar Variáveis Globais

SET GLOBAL max_connections = 200;

Visualizar Configurações

SHOW VARIABES LIKE 'max_connections';