Como instalar com segurança
Sempre será complicado.
Por favor, leia a página de compatibilidade 5.5 / 5.6 antes de fazer qualquer coisa. Mente 1 grande diferença entre os 2:
Começando com o MySQL 5.6.6, vários parâmetros do servidor MySQL têm padrões diferentes das versões anteriores. A motivação para essas alterações é fornecer melhor desempenho imediato e reduzir a necessidade de o administrador do banco de dados alterar as configurações manualmente. Essas alterações estão sujeitas a uma possível revisão em versões futuras à medida que obtemos feedback.
Uma das grandes mudanças é que 5.5 usa 1 arquivo grande como log de transações e 5.6 usa vários:
Portanto, se você estiver atualizando uma instalação existente do MySQL, ainda não alterou os valores desses parâmetros dos padrões anteriores, e a compatibilidade com versões anteriores é uma preocupação, convém definir explicitamente esses parâmetros para os padrões anteriores. Por exemplo, coloque estas linhas no arquivo de opções do servidor:
[mysqld]
innodb_file_per_table=0
innodb_checksum_algorithm=INNODB
binlog_checksum=NONE
Se você usa replicação, preste atenção a esta parte do link:
Para atualizar os servidores usados para replicação, atualize primeiro os escravos, depois o mestre. A replicação entre o mestre e seus escravos deve funcionar, desde que todos usem o mesmo valor de specific_defaults_for_timestamp:
Derrube os escravos, atualize-os, configure-os com o valor desejado de specific_defaults_for_timestamp e traga-os de volta.
Os escravos reconhecerão, no formato dos logs binários recebidos do mestre, que o mestre é mais antigo (antecede a introdução de specific_defaults_for_timestamp) e que as operações nas colunas TIMESTAMP provenientes do mestre usam o antigo comportamento do TIMESTAMP.
Desative o mestre, atualize-o e configure-o com o mesmo valor explícito_defaults_for_timestamp usado nos escravos, e traga-o de volta.
Se este for um servidor de produção, aconselho que tente primeiro fazer isso em uma máquina de teste. Tivemos uma transição bastante difícil do 5.5 para o 5.6 e optamos por instalar outra máquina instalada com o 5.6 e usar o mysldump para criar backups e carregá-los em nossos bancos de dados nessa máquina. Lembre-se de que isso levará muito tempo se você tiver um banco de dados grande (devido à recriação dos arquivos de transações do innodb).
Um método geral:
- use o mysqldump para criar backups do seu banco de dados (usuários, estrutura trable e dados da tabela) e do seu arquivo de configuração (provavelmente /etc/mysql/my.cnf)
- Remova 5.5. Após remover o 5.5, verifique se os arquivos de transações innodb foram removidos (ibdata1, ib_logfile0 e ib_logfile1). Como a versão 5.6 usa a melhor versão de transação, presumo que você também usaria isso ...
- Instalar 5.6
- Mude o novo arquivo de configuração e adicione o que você mudou para 5.5 (lembre-se do link acima e verifique se alguma das alterações se tornou inválida).
- Carregue seu backup no 5.6 (primeiro usuários). Lembre-se de que isso pode demorar um pouco, pois irá recriar novos arquivos de transação.
Nos comandos (depois de fazer o backup):
sudo apt-get remove mysql-server
sudo apt-get autoremove
sudo apt-get install mysql-client-5.6 mysql-client-core-5.6
sudo apt-get install mysql-server-5.6
sudo apt-get remove mysql-server;sudo apt-get autoremove;sudo apt-get install mysql-client-5.6 mysql-client-core-5.6;sudo apt-get install mysql-server-5.6