Processamento de transações MySQL
- A transação é colocar um grupo de instruções SQL no mesmo lote para executar
- Se uma instrução SQL falhar, todo o SQL no lote será cancelado
Características de transação
- Atomicidade
- Consistência
- Isolamento
- Durabilidade
Método de realização de transação MySQL
SET AUTOCOMMIT
- Use a instrução SET para alterar o modo de envio automático
SET AUTOCOMMIT = 0; # 关闭自动提交模式 SET AUTOCOMMIT = 1; # 开启自动提交模式
- O padrão é o envio automático em MySQL
- Desligue o auto-commit primeiro ao usar transações
Nota
开启事务
SHOW VARIABLES LIKE 'event_scheduler';
设置数据库支持事务
SET GLOBAL event_scheduler=ON;
Método de implementação de transação MySQL
INICIAR TRANSAÇÃO
Inicie uma transação, marque o ponto de partida da transação
COMPROMETE
Envie uma transação para o banco de dados
ROLLBACK
Reverta a transação e retorne os dados ao estado inicial da transação
SET AUTOCOMMIT = 1;
Habilitar envio automático de banco de dados MySQL
Etapas de processamento de transações MySQL
Índice de banco de dados
efeito
- Melhore a velocidade da consulta para garantir a exclusividade dos dados
- Pode acelerar a conexão entre a mesa e a mesa para alcançar a integridade referencial entre a mesa e a mesa
- Ao usar cláusulas de agrupamento e classificação para recuperação de dados, o tempo para agrupamento e classificação pode ser significativamente reduzido
- Campo de pesquisa de texto completo para otimização de pesquisa
classificação
- Índice de chave primária (PRIMARY KEY)
- Índice único (UNIQUE)
- Índice Regular (INDEX)
- Índice de texto completo (FULLTEXT
Índice de chave primária
Um determinado atributo ou combinação de atributos pode identificar exclusivamente um registro
Tal como: tabela do aluno (número do aluno, nome, classe, gênero, etc.), o número do aluno é identificado exclusivamente e pode ser usado como a chave primária
Recursos
- Os tipos de índice mais comuns
- Garanta a exclusividade dos registros de dados
- Determine a localização de registros de dados específicos no banco de dados
Índice único (UNIQUE)
efeito
Evite a duplicação de valores em uma coluna de dados na mesma tabela
A diferença com o índice de chave primária
Só pode haver um índice de chave primária
e vários índices exclusivos
Índice Regular (INDEX)
efeito: Localize dados específicos rapidamente
Nota
Tanto o índice quanto as palavras-chave podem ser definidas para índices regulares, que
devem ser adicionados ao campo de condição de pesquisa. Não é
aconselhável adicionar muitos índices regulares, o que afetará as operações de inserção, exclusão e modificação de dados
Índice de texto completo (FULLTEXT)
efeito: Localize dados específicos rapidamente
Nota
Só pode ser usado para tabelas de dados do tipo MyISAM
Só pode ser usado para tipos de coluna de dados CHAR, VARCHAR, TEXT
Adequado para grandes conjuntos de dados
Gerenciar índice
Criar índice
- Adicionar ao criar tabela
- Anexar após a criação da tabela
ALERT TABLE 表名 ADD 索引类型(数据列名)
Excluir índice
DROP INDEX 索引名 ON 表名
ALTER TABLE 表名 DROP INDEX 索引名
ALTER TABLE 表名 DROP PRIMARY KEY
Exibir índice
SHOW INDEX(或KEYS) FROM 表名
Diretrizes de índice
- Os índices não são tantos quanto possíveis
- Não indexe dados que mudam com frequência
- Recomenda-se não adicionar índices para tabelas com pequenos volumes de dados
- O índice geralmente deve ser adicionado ao campo de condição de pesquisa
Backup do MySQL
Necessidade de backup de banco de dados
Certifique-se de que dados importantes não sejam perdidos
. Transferência de dados
Método de backup de banco de dados MySQL
Ferramenta de backup do mysqldump Ferramentas de
gerenciamento de banco de dados, como SQLyog
copia diretamente arquivos de banco de dados e arquivos de configuração relacionados
backup do banco de dados mysqldump
efeito
Despejar banco de dados,
coletar banco de dados para backup,
transferir dados para outro servidor SQL (não necessariamente serviço MySQL)
mysqldump -h 主机名 –u 用户名 –p [options] 数据库名
[ table1 table2 table3 ] > path/filename.sql
# 备份myschool数据库如:
> mysqldump -u root -p myschool > d:/myschool.sql
EnterPassword: *****
opções comuns do mysqldump Método um de
recuperação do banco de dados MySQL Use a sintaxe SOURCE
SOURCE /path/db_name.sql;
/ path / é um caminho absoluto e deve ser um arquivo que o usuário que está executando o mysql tenha permissão para ler
SOURCE Execute na linha de comando do MySQL
Método dois
usa cliente mysql
mysql –u root –p dbname < /path/db_name.sql;
Exportar e importar dados usando instruções SQL
Exportar
SELECT * INTO OUTFILE 'file_name'
FROM tbl_name
Importar
LOAD DATA INFILE 'file_name '
INTO TABLE tbl_name[FIELDS]