
本文将帮助您将数据库从 MySQL 迁移到 MariaDB,因为迁移过程中 MySQL 到 MariaDB 的二进制兼容性非常简单。
Oracle 收购 MySQL 后,社区推动了此类运动的成果,并开发了一个名为 MariaDB 的新数据库。 MariaDB 是开源的并且与 MySQL 兼容。大多数Linux发行版(RH、CentOS、Fedora)已经开始使用MariaDB的支持作为MySQL的直接替代品。
如果我们想将数据库从MySQL迁移到MariaDB,那么这文章会有所帮助。
准备 MySQL 数据库和表
我们创建一个测试 MySQL 数据库和总体表用于演示目的。如果环境中有数据库和表,则可以跳过此步骤。
使用 MySQL root 用户和 root 用户密码从终端登录 MySQL。
# mysql -uroot -p
创建一个数据库和表
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)
此外,我们将添加一些记录来测试数据
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: 0Then quit from the MySQL.
MySQL 数据库的备份
我们需要使用命令 – MySQL dump 来备份 MySQL 数据库
# mysqldump --all-databases --user=root --password --master-data > backupDB.sql
出于安全原因,我们将在系统的其他位置获取 MySQL 的一些配置文件
# cp /etc/mysql/my.cnf /opt/my.cnf.bak
卸载 MySQL 软件包
我们将使用以下命令卸载 MySQL –
# service mysqld stop# yum remove mysql-server mysql-client mysql-common
安装 MariaDB 软件包
在所有主要 Linux 发行版官方存储库上,MariaDB 已替换为 MySQL。即使您使用的是旧版本的Linux也可以添加官方存储库。
在yum repos目录中创建文件
如知AI笔记
如知笔记——支持markdown的在线笔记,支持ai智能写作、AI搜索,支持DeepseekR1满血大模型
27 查看详情
# sudo vi /etc/yum.repos.d/MariaDB.repo
将以下内容添加到文件中并保存
[mariadb]name = MariaDBbaseurl = http://yum.mariadb.org/5.5/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1
要安装 Maria-DB 服务器和客户端,请运行以下命令。
# yum install MariaDB-server MariaDB-clientLoaded plugins: fastestmirror, langpacksbase | 3.6 kB 00:00extras | 3.4 kB 00:00mariadb | 2.9 kB 00:00updates | 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 ResolutionDependencies 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.el7Installing 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 kTransaction Summary========================================================================================Install 3 Packages (+8 Dependent packages)Total download size: 51 MIs this ok [y/d/N]: yDownloading 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: NOKEYPublic 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:12warning: /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: NOKEYPublic 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:01Total download size: 51 MRunning transaction checkRunning transaction testTransaction test succeededRunning 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/12Installed: 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.centosDependency 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.el7Replaced: mariadb-libs.x86_64 1:5.5.35-3.el7Complete!
安装完所有必需的软件包后,我们需要为 root 用户帐户设置密码。 root 密码恢复从 MySQL 备份的配置文件。
# cp /opt/my.cnf /etc/mysql/
现在,我们需要运行以下命令来重新启动 MariaDB 服务。
# service mariadb start
导入MySQL数据库
我们必须将我们从MySQL备份的数据库导入到MariaDB
# mysql -u root -p < backupDB.sql
输入root用户的密码,然后数据库就会导入到MariaDB
我们需要检查数据库是否正确恢复。
请按照以下命令操作 –
# mysql -u root -pMariaDB [(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)
现在从MySQL到MariaDB的迁移已经成功完成。
在我们运行命令并按照教程操作后,我们可以通过简单的步骤将数据库从MySQL迁移到MariaDB,其中MariaDB有一个与 MySQL 相比,有很多新功能。在上面的教程中我使用了一个简单的场景来测试迁移配置。
以上就是如何在 Linux 上将 MySQL 迁移到 MariaDB?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/325114.html
微信扫一扫
支付宝扫一扫