Come rimuovere completamente Mysql e installare MariaDB 10

Abbiamo alcuni popolari strumenti di database che sono indipendenti e comunemente usati. Normalmente, puoi utilizzare due diversi sistemi di gestione di database relazionali (RDBMS) sullo stesso server se non utilizzano la stessa porta, ma non è consigliabile se desideri utilizzare le risorse massime del tuo server. Normalmente si consiglia di installare ciascun RDBMS su ciascun server o disinstallare l’RDBMS non necessario dopo aver salvato i dati, se necessario, e installare quello nuovo.
L’ultimo punto non funziona nemmeno con due RDBMS che sono MariaDB e MySql. Potrebbe essere necessario rimuovere MySql per installare MariaDB, ma a volte potresti riscontrare problemi durante la disinstallazione di MySQL sulla tua macchina Linux.
In questo tutorial, ti mostrerò come eseguire una disinstallazione completa e corretta di MySQL per installare MariaDB 10 sul tuo server Centos 7.
Comprendi il problema
Se rimuoviamo semplicemente i pacchetti MySQL e proviamo a installare MariaDB, il tuo sistema proverà a reinstallare MySQL. Riceverai un messaggio di errore che indica che MariaDB non è aggiornato e il tuo sistema proverà a reinstallare MySql:
# yum install MariaDB-server MariaDB-client -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.linode.com
* epel: mirrors.kernel.org
* extras: mirrors.linode.com
* rpmforge: mirrors.evowise.com
* updates: mirrors.linode.com
Resolving Dependencies
--> Running transaction check
---> Package MariaDB-client.x86_64 0:10.1.26-1.el7.centos will be installed
--> Processing Dependency: MariaDB-common for package: MariaDB-client-10.1.26-1.el7.centos.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.1)(64bit) for package: MariaDB-client-10.1.26-1.el7.centos.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.4)(64bit) for package: MariaDB-client-10.1.26-1.el7.centos.x86_64
...............................
...............................
Dependencies Resolved
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Installing:
MariaDB-client x86_64 10.1.26-1.el7.centos mariadb 39 M
MariaDB-server x86_64 10.1.26-1.el7.centos mariadb 103 M
MariaDB-shared x86_64 10.1.26-1.el7.centos mariadb 1.3 M
replacing mariadb-libs.x86_64 1:5.5.52-1.el7
mysql-community-libs x86_64 5.6.37-2.el7 mysql56-community 2.0 M
replacing mariadb-libs.x86_64 1:5.5.52-1.el7
Installing for dependencies:
MariaDB-common x86_64 10.1.26-1.el7.centos mariadb 123 k
boost-program-options x86_64 1.53.0-26.el7 base 156 k
galera x86_64 25.3.20-1.rhel7.el7.centos mariadb 8.0 M
jemalloc x86_64 3.6.0-1.el7 epel 105 k
libaio x86_64 0.3.109-13.el7 base 24 k
mysql-community-common x86_64 5.6.37-2.el7 mysql56-community 257 k
Transaction Summary
........................
........................
Total 2.7 MB/s | 3.5 MB 00:00:01
Running transaction check
Running transaction test
Transaction check error:
file /usr/share/mysql/charsets/Index.xml conflicts between attempted installs of mysql-community-common-5.6.37-2.el7.x86_64 and MariaDB-common-10.1.26-1.el7.centos.x86_64
file /usr/share/mysql/charsets/armscii8.xml conflicts between attempted installs of mysql-community-common-5.6.37-2.el7.x86_64 and MariaDB-common-10.1.26-1.el7.centos.x86_64
file /usr/share/mysql/charsets/ascii.xml conflicts between attempted installs of mysql-community-common-5.6.37-2.el7.x86_64 and MariaDB-common-10.1.26-1.el7.centos.x86_64
In questo caso, dobbiamo prima disinstallare completamente MySQL dal sistema ed eliminare tutte le impostazioni della vecchia installazione e poi installare MariaDB aggiungendo il proprio repository.
1) Disinstallare completamente mysql
Per prima cosa dobbiamo disinstallare correttamente MySql con tutte le sue dipendenze
# yum list installed | grep mysql
mysql-community-client.x86_64 5.6.37-2.el7 @mysql56-community
mysql-community-common.x86_64 5.6.37-2.el7 @mysql56-community
mysql-community-libs.x86_64 5.6.37-2.el7 @mysql56-community
mysql-community-release.noarch el7-5 installed
mysql-community-server.x86_64 5.6.37-2.el7 @mysql56-community
Per rimuovere un pacchetto con le sue dipendenze, devi installare il plugin yum chiamato: remove-with-leaves. Per installarlo digitare:
# yum install yum-plugin-remove-with-leaves
Ora per rimuovere un pacchetto con le sue dipendenze: yum remove nome_pacchetto –remove-leaves come sotto
# yum remove mysql-server --remove-leaves
Loaded plugins: fastestmirror, remove-with-leaves
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-server.x86_64 0:5.6.37-2.el7 will be erased
--> Finished Dependency Resolution
removing libaio-0.3.109-13.el7.x86_64. It is not required by anything else.
removing mysql-community-client-5.6.37-2.el7.x86_64. It is not required by anything else.
removing mysql-community-libs-5.6.37-2.el7.x86_64. It is not required by anything else.
removing mysql-community-common-5.6.37-2.el7.x86_64. It is not required by anything else.
--> Running transaction check
---> Package libaio.x86_64 0:0.3.109-13.el7 will be erased
---> Package mysql-community-client.x86_64 0:5.6.37-2.el7 will be erased
---> Package mysql-community-common.x86_64 0:5.6.37-2.el7 will be erased
---> Package mysql-community-libs.x86_64 0:5.6.37-2.el7 will be erased
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Removing:
libaio x86_64 0.3.109-13.el7 @base 38 k
mysql-community-client x86_64 5.6.37-2.el7 @mysql56-community 89 M
mysql-community-common x86_64 5.6.37-2.el7 @mysql56-community 2.1 M
mysql-community-libs x86_64 5.6.37-2.el7 @mysql56-community 9.2 M
mysql-community-server x86_64 5.6.37-2.el7 @mysql56-community 251 M
Dobbiamo anche disinstallare il repository mysql-community-release
# yum remove mysql-community-release-el7-5
Loaded plugins: fastestmirror, remove-with-leaves
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-release.noarch 0:el7-5 will be erased
--> Finished Dependency Resolution
2) Rimuovere la directory MySQL
Ora dobbiamo rimuovere la directory dei dati MySQL predefinita /var/lib/mysql
dal nostro sistema. Se non vedi la directory nella posizione predefinita, è cambiata in un’altra posizione in cui puoi trovarla /etc/my.cnf
file variabile datadir.
Nel nostro caso, elimineremo /var/lib/mysql
directory sul tuo sistema, ma potresti preferire rinominarla per mantenere un backup dei tuoi file esistenti. Puliremo completamente la nostra directory di installazione.
# rm -rf /var/lib/mysql/
# rm -rf /etc/my.cnf
3) Installa MariaDB 10
Per installare MariaDB 10, dobbiamo aggiungere il repository al tuo server. Creeremo un file repository MariaDB sotto /etc/yum.repos.d/MariaDB.repo
con il contenuto sottostante
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
ora possiamo installare i nostri pacchetti
# yum install MariaDB-server MariaDB-client
Loaded plugins: fastestmirror, remove-with-leaves
Loading mirror speeds from cached hostfile
* base: mirrors.linode.com
* epel: mirrors.kernel.org
* extras: mirrors.linode.com
* rpmforge: mirrors.evowise.com
* updates: mirrors.linode.com
Resolving Dependencies
--> Running transaction check
---> Package MariaDB-client.x86_64 0:10.1.26-1.el7.centos will be installed
--> Processing Dependency: MariaDB-common for package: MariaDB-client-10.1.26-1.el7.centos.x86_64
---> Package MariaDB-server.x86_64 0:10.1.26-1.el7.centos will be installed
--> Processing Dependency: galera for package: MariaDB-server-10.1.26-1.el7.centos.x86_64
--> Running transaction check
---> Package MariaDB-common.x86_64 0:10.1.26-1.el7.centos will be installed
---> Package galera.x86_64 0:25.3.20-1.rhel7.el7.centos will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Installing:
MariaDB-client x86_64 10.1.26-1.el7.centos mariadb 39 M
MariaDB-server x86_64 10.1.26-1.el7.centos mariadb 103 M
Installing for dependencies:
MariaDB-common x86_64 10.1.26-1.el7.centos mariadb 123 k
galera x86_64 25.3.20-1.rhel7.el7.centos mariadb 8.0 M
Transaction Summary
======================================================================================================================================================
Install 2 Packages (+2 Dependent packages)
Total size: 150 M
Total download size: 150 M
Installed size: 647 M
Is this ok [y/d/N]: y
Downloading packages:
(1/3): MariaDB-10.1.26-centos7-x86_64-client.rpm | 39 MB 00:00:02
(2/3): galera-25.3.20-1.rhel7.el7.centos.x86_64.rpm | 8.0 MB 00:00:01
(3/3): MariaDB-10.1.26-centos7-x86_64-server.rpm | 103 MB 00:00:12
------------------------------------------------------------------------------------------------------------------------------------------------------
Total 12 MB/s | 150 MB 00:00:12
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : MariaDB-common-10.1.26-1.el7.centos.x86_64 1/4
Installing : MariaDB-client-10.1.26-1.el7.centos.x86_64 2/4
Installing : galera-25.3.20-1.rhel7.el7.centos.x86_64 3/4
Installing : MariaDB-server-10.1.26-1.el7.centos.x86_64
Puoi controllare lo stato come di seguito
# yum list installed | grep mariadb
MariaDB-client.x86_64 10.1.26-1.el7.centos @mariadb
MariaDB-common.x86_64 10.1.26-1.el7.centos @mariadb
MariaDB-server.x86_64 10.1.26-1.el7.centos @mariadb
MariaDB-shared.x86_64 10.1.26-1.el7.centos @mariadb
Non puoi avere MySQL e MariaDB installati sullo stesso server. Quindi è necessario eseguire una disinstallazione completa. Dovresti notare che quando hai installato MariaDB, se devi rimuoverlo per installare MySQL, ricordati di rimuovere il repository, altrimenti MySQL non sarà in grado di essere installato.
Lettura correlata: 2 modi per installare MariaDB su CentOS 7