Heim  >  Artikel  >  Datenbank  >  Wie migriere ich MySQL zu MariaDB unter Linux?

Wie migriere ich MySQL zu MariaDB unter Linux?

PHPz
PHPznach vorne
2023-08-31 09:13:02898Durchsuche

如何在 Linux 上将 MySQL 迁移到 MariaDB?

Dieser Artikel hilft Ihnen bei der Migration Ihrer Datenbank von MySQL zu MariaDB, da die Binärkompatibilität von MySQL zu MariaDB während des Migrationsprozesses sehr einfach ist.

Nachdem Oracle MySQL übernommen hatte, trieb die Community die Ergebnisse einer solchen Bewegung voran und entwickelte eine neue Datenbank namens MariaDB. MariaDB ist Open Source und kompatibel mit MySQL. Die meisten Linux-Distributionen (RH, CentOS, Fedora) haben damit begonnen, MariaDB-Unterstützung als Ersatz für MySQL zu verwenden.

Wenn wir eine Datenbank von MySQL nach MariaDB migrieren möchten, ist dieser Artikel hilfreich.

MySQL-Datenbank und -Tabellen vorbereiten

Wir erstellen eine Test-MySQL-Datenbank und Gesamttabellen zu Demonstrationszwecken. Wenn Ihre Umgebung über eine Datenbank und Tabellen verfügt, können Sie diesen Schritt überspringen.

Melden Sie sich vom Terminal aus mit dem MySQL-Root-Benutzer und dem Root-Benutzerkennwort bei MySQL an.

# mysql -uroot -p

Erstellen Sie eine Datenbank und Tabellen

mysql> Create database test1;
mysql> use test1;
mysql> create table tab1(name varchar(30), owner varchar(30), species varchar(20), sex char(1));
Query OK, 0 rows affected (0.02 sec)

Außerdem werden wir einige Datensätze hinzufügen, um die Daten zu testen

mysql> insert into tab1 values('Chandra','Prakash','Kadarla','m'),('Srinvas','Kadarla','Chary','m');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
Then quit from the MySQL.

Sicherung der MySQL-Datenbank

Wir müssen die MySQL-Datenbank mit dem Befehl „MySQL dump“ sichern

# mysqldump --all-databases --user=root --password --master-data > backupDB.sql

Aus Sicherheitsgründen , wir erhalten einige Konfigurationsdateien für MySQL an anderer Stelle im System

# cp /etc/mysql/my.cnf /opt/my.cnf.bak

MySQL-Paket deinstallieren

Wir werden MySQL mit dem folgenden Befehl deinstallieren –

# service mysqld stop
# yum remove mysql-server mysql-client mysql-common

MariaDB-Paket installieren

MariaDB ist in allen wichtigen offiziellen Repositorys der Linux-Distribution verfügbar. Ersetzt durch MySQL. Sie können das offizielle Repository auch dann hinzufügen, wenn Sie eine ältere Linux-Version verwenden.

Datei im Yum-Repos-Verzeichnis erstellen

# sudo vi /etc/yum.repos.d/MariaDB.repo

Fügen Sie den folgenden Inhalt zur Datei hinzu und speichern Sie

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Um den Maria-DB-Server und -Client zu installieren, führen Sie die folgenden Befehle aus.

# yum install MariaDB-server MariaDB-client
Loaded plugins: fastestmirror, langpacks
base                                  | 3.6 kB 00:00
extras                                | 3.4 kB 00:00
mariadb                               | 2.9 kB 00:00
updates                               | 3.4 kB 00:00
   --> Restarting Dependency Resolution with new changes.
   --> Running transaction check
   ---> Package MariaDB-shared.x86_64 0:5.5.49-1.el7.centos will be obsoleting
   ---> Package mariadb-libs.x86_64 1:5.5.35-3.el7 will be obsoleted
   --> Finished Dependency Resolution
Dependencies Resolved
========================================================================================
Package                         Arch          Version                      Repository    Size
========================================================================================
Installing:
   MariaDB-client             x86_64          5.5.49-1.el7.centos          mariadb          8.6 M
   MariaDB-server             x86_64          5.5.49-1.el7.centos          mariadb          40 M
   MariaDB-shared             x86_64          5.5.49-1.el7.centos          mariadb          1.0 M
      replacing mariadb-libs.x86_64 1:5.5.35-3.el7
Installing for dependencies:
   MariaDB-common             x86_64          5.5.49-1.el7.centos          mariadb          23 k
   perl-Compress-Raw-Bzip2    x86_64          2.061-3.el7                  base             32 k
   perl-Compress-Raw-Zlib     x86_64          1:2.061-4.el7                base             57 k
   perl-DBI                   x86_64          1.627-4.el7                  base             802 k
   perl-Data-Dumper           x86_64          2.145-3.el7                  base             47 k
   perl-IO-Compress           noarch          2.061-2.el7                  base             260 k
   perl-Net-Daemon            noarch          0.48-5.el7                   base             51 k
   perl-PlRPC                 noarch          0.2020-14.el7                base             36 k
Transaction Summary
========================================================================================
Install 3 Packages (+8 Dependent packages)
Total download size: 51 M
Is this ok [y/d/N]: y
Downloading packages:
warning: /var/cache/yum/x86_64/7/mariadb/packages/MariaDB-5.5.49-centos7-x86_64-common.rpm: Header V4 DSA/SHA1 Signature, key ID 1bb943db: NOKEY
Public key for MariaDB-5.5.49-centos7-x86_64-common.rpm is not installed
(1/11): MariaDB-5.5.49-centos7-x86_64-common.rpm             | 23 kB 00:00:01
(2/11): MariaDB-5.5.49-centos7-x86_64-client.rpm             | 8.6 MB 00:00:12
warning: /var/cache/yum/x86_64/7/base/packages/perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64.rpm is not installed
(3/11): perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64.rpm       | 32 kB 00:00:00
(4/11): perl-Compress-Raw-Zlib-2.061-4.el7.x86_64.rpm        | 57 kB 00:00:00
(5/11): perl-Data-Dumper-2.145-3.el7.x86_64.rpm              | 47 kB 00:00:00
(6/11): perl-IO-Compress-2.061-2.el7.noarch.rpm              | 260 kB 00:00:00
(7/11): perl-Net-Daemon-0.48-5.el7.noarch.rpm                | 51 kB 00:00:00
(8/11): perl-DBI-1.627-4.el7.x86_64.rpm                      | 802 kB 00:00:00
(9/11): perl-PlRPC-0.2020-14.el7.noarch.rpm                  | 36 kB 00:00:00
(10/11): MariaDB-5.5.49-centos7-x86_64-shared.rpm            | 1.0 MB 00:00:01
Total download size: 51 M
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
   Installing : MariaDB-common-5.5.49-1.el7.centos.x86_64          1/12
   Installing : perl-Data-Dumper-2.145-3.el7.x86_64                2/12
   Installing : MariaDB-client-5.5.49-1.el7.centos.x86_64          3/12
   Installing : 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64        4/12
   Installing : perl-Net-Daemon-0.48-5.el7.noarch                  5/12
   Installing : perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64         6/12
   Installing : perl-IO-Compress-2.061-2.el7.noarch                7/12
   Installing : perl-PlRPC-0.2020-14.el7.noarch                    8/12
   Installing : perl-DBI-1.627-4.el7.x86_64                        9/12
Installed:
   MariaDB-client.x86_64 0:5.5.49-1.el7.centos       MariaDB-server.x86_64 0:5.5.49-1.el7.centos
   MariaDB-shared.x86_64 0:5.5.49-1.el7.centos
Dependency Installed:
   MariaDB-common.x86_64 0:5.5.49-1.el7.centos       perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7
   perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7       perl-DBI.x86_64 0:1.627-4.el7
   perl-Data-Dumper.x86_64 0:2.145-3.el7             perl-IO-Compress.noarch 0:2.061-2.el7
   perl-Net-Daemon.noarch 0:0.48-5.el7               perl-PlRPC.noarch 0:0.2020-14.el7
Replaced:
   mariadb-libs.x86_64 1:5.5.35-3.el7
Complete!

Nach der Installation aller erforderlichen Pakete müssen wir ein Passwort für das Root-Benutzerkonto festlegen. Wiederherstellung des Root-Passworts aus MySQL-Sicherungskonfigurationsdateien.

# cp /opt/my.cnf /etc/mysql/

Jetzt müssen wir den folgenden Befehl ausführen, um den MariaDB-Dienst neu zu starten.

# service mariadb start

MySQL-Datenbank importieren

Wir müssen die von MySQL gesicherte Datenbank in MariaDB importieren

# mysql -u root -p < backupDB.sql

Geben Sie das Passwort des Root-Benutzers ein, dann wird die Datenbank in MariaDB importiert

Wir müssen überprüfen, ob die Datenbank gesichert wurde korrekt wiederhergestellt.

Bitte folgen Sie dem folgenden Befehl – ​​

# mysql -u root -p
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test1              |
+--------------------+
3 rows in set (0.00 sec)
MariaDB [(none)]> use test1;
MariaDB [test01]> select * from tab1;
select * from tab1;
+---------+---------+---------+------+
| name    | owner   | species | sex  |
+---------+---------+---------+------+
| Chandra | Prakash | Kadarla |    m |
| Srinvas | Kadarla | Chary   |    m |
+---------+---------+---------+------+
2 rows in set (0.00 sec)

Jetzt ist die Migration von MySQL zu MariaDB erfolgreich abgeschlossen.

Nachdem wir den Befehl ausgeführt und dem Tutorial gefolgt sind, können wir die Datenbank in einfachen Schritten von MySQL zu MariaDB migrieren, wobei MariaDB im Vergleich zu MySQL viele neue Funktionen bietet. Im obigen Tutorial habe ich ein einfaches Szenario verwendet, um die Migrationskonfiguration zu testen.

Das obige ist der detaillierte Inhalt vonWie migriere ich MySQL zu MariaDB unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen