CentOS 7.2 之 MySQL 到 MariaDB 的迁移

阅读 1008
收藏 34
2017-01-29
原文链接:www.yhspy.com

CentOS 自从 7.0 以后,其操作系统默认的数据库系统从之前的 MySQL 变成了 MariaDB。MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可 MariaDB 的目的是完全兼容 MySQL,包括 API 和命令行,使之能轻松成为 MySQL 的代替品。

MariaDB 由 MySQL 的创始人 Michael Widenius 主导开发,他早前曾以10亿美元的价格,将自己创建的公司 MySQL AB 卖给了 SUN,此后,随着SUN 被甲骨文收购,MySQL 的所有权也落入 Oracle 的手中。开发这个分支的原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源的潜在风险,因此社区采用分支的方式来避开这个风险。 过去一年中,大型互联网用户以及 Linux 发行商(比如这里的 CentOS)纷纷抛弃 MySQL,转投MariaDB 阵营。MariaDB 是目前最受关注的 MySQL 数据库衍生版,也被视为开源数据库 MySQL 的替代品。

MariaDB 默认的存储引擎是 Maria,不是 MyISAM。Maria 可以支持事务,但是默认情况下没有打开事务支持,因为事务支持对性能会有影响。

MariaDB 的安装与配置流程:

1、检测当前 CentOS 系统版本

lsb_release -a LSB Version

2、安装 MariaDB

yum install mariadb*

3、启动 MariaDB

systemctl enable mariadb
systemctl start mariadb

4、配置管理员用户权限

mysqladmin -u root password 'your@password'

5、设置远程连接的数据库账户

mysql -u root -p 'your@password'

> use mysql;

> insert into user(Host, User, Password) values ('localhost', 'remote', password('your@password'));

> flush privileges;

> create database dbname;

> grant all privileges on dbname.* to 'remote'@'%' identified by 'your@password';

> flush privileges;

接下来便可以通过 SQLyog 等数据库远程连接工具以‘remote’用户登陆 MariaDB。我们仍然可以使用 service 命令来查看当前数据库的状态或者停止\启动数据库,在使用 service 执行对应的命令时,该命令会被自动跳转到对应的 systemctl 命令进行执行。

service mariadb status

service mariadb stop

service mariadb start 

service mariadb restart

对应于实际执行的命令:

systemctl status mariadb.service

systemctl stop mariadb.service

systemctl start mariadb.service

systemctl restart mariadb.service
评论