Eu costumava ter um sistema Linux (LMDE) com MySQL. O sistema usou innodb_file_per_table na maioria dos bancos de dados. (não tenho certeza da versão, seja qual for a "mais recente" no LMDE)
Agora estou em um novo sistema (Manjaro / Arch) com o MariaDB.
$ mysql --version
mysql Ver 15.1 Distrib 10.0.15-MariaDB, for Linux (x86_64) using readline 5.1
O sistema antigo tinha muitos bancos de dados grandes, que eu realmente preferiria não ter que copiar com o mysqldump. Eu preferiria muito copiar a pasta / var / lib / mysql do sistema antigo.
Isso é possível?
mysql
arch-linux
mariadb
Don Quixote
fonte
fonte
Respostas:
Sim, é possível. (Eu descobri isso enquanto escrevia a pergunta)
Faça suas alterações no /etc/mysql/my.cnf. Por exemplo, innodb_file_per_table.
(mais disso está fora do escopo desta pergunta)
sudo systemctl stop mysqld
.(Você quer parar nos dois servidores, mas no meu caso o outro já estava desativado)
sudo chown -R mysql:mysql /var/lib/mysql
sudo systemctl start mysqld
.->
Job for mysqld.service failed. See "systemctl status mysqld.service" and "journalctl -xe" for details.
sudo systemctl status mysqld
.-> Isso mostra que o serviço está sendo executado, mas algumas coisas estão dando errado. É para isso que serve o mysql_upgrade.
mysql_upgrade -u root -p
Notas:
sudo systemctl restart mysqld
.CAVEAT: Aparentemente, você não pode fazer o downgrade para uma versão mais baixa do MySQL. Tentei migrar meus bancos de dados para o MySQL 5.5 (ou melhor, o MariaDB correspondente) e o servidor não foi iniciado. Eu tive que instalar o MySQL 5.6. (o MariaDB correspondente ao MySQL 5.6 não está disponível na minha distribuição Linux).
fonte
/etc/my.cnf
.