mysql向mariadb平滑过渡的步骤详解

所属分类: 数据库 / Mysql 阅读数: 1713
收藏 0 赞 0 分享

一、mariadb与mysql简介

1、mariadb简介

MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。

2、mariadb产生的原因

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。

3、mariadb的优势

  • 可免费商业使用(被oracle收购后,MySQL便有了社区版和企业版之分)
  • Maria 存储引擎
  • PBXT 存储引擎
  • XtraDB 存储引擎
  • FederatedX 存储引擎
  • 更快的复制查询处理
  • 线程池
  • 更少的警告和bug
  • 运行速度更快
  • 更多的 Extensions
  • 更好的功能测试
  • 数据表消除
  • 慢查询日志的扩展统计
  • 支持对 Unicode 的排序

4、已经开始使用mariadb

google,twitter,facebook这个大公司也已经,或者开始从mysql转向mariadb
redhat,archlinux,opensuse,slackware,fedora新版本已经,或者已宣布将mariadb代替mysql做为默认数据库。
个人一直把google做为技术的风向标,google在oracle收购mysql没多久就转投到mariadb门下了,可见mysql前途暗淡。

二、安装mariadb

1、mariadb源

[root@node1 tank]# cat /etc/yum.repos.d/mariadb.repo //32位系统 
[mariadb] 
name=MariaDB 
baseurl=http://yum.mariadb.org/5.5/centos6-x86 
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB 
gpgcheck=1 
 
[root@node1 tank]# cat /etc/yum.repos.d/mariadb.repo //64位系统 
[mariadb] 
name=MariaDB 
baseurl=http://yum.mariadb.org/5.5/centos6-amd64 
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB 
gpgcheck=1 

2、删除mysql

本人测试过,mysql5.1,mysql5.5可以平滑转到mariadb,mysql5.6.X并没有测试。不放心的可以先用mysqldump进行备份一下。不删除mysql是装不了mariadb

# yum remove mysql mysql-server 

3、安装mariadb

# yum install MariaDB-server MariaDB-client 
 
# yum install MariaDB-Galera-server MariaDB-client galera //具有同步多主集群特性 

三、启动并测试mariadb

1、启动mariadb

# /etc/init.d/mysql start 

2、测试mariadb

[root@node1 ~]# mysql 
Welcome to the MariaDB monitor. Commands end with ; or \g. 
Your MariaDB connection id is 207 
Server version: 5.5.40-MariaDB-wsrep MariaDB Server, wsrep_25.11.r4026 
 
Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. 
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 
 
MariaDB [(none)]> show engines; 
+--------------------+---------+----------------------------------------------------------------------------+--------------+------+------------+ 
| Engine  | Support | Comment         | Transactions | XA | Savepoints | 
+--------------------+---------+----------------------------------------------------------------------------+--------------+------+------------+ 
| MRG_MYISAM  | YES | Collection of identical MyISAM tables     | NO  | NO | NO  | 
| CSV  | YES | CSV storage engine        | NO  | NO | NO  | 
| BLACKHOLE  | YES | /dev/null storage engine (anything you write to it disappears)  | NO  | NO | NO  | 
| MyISAM  | YES | MyISAM storage engine       | NO  | NO | NO  | 
| FEDERATED  | YES | FederatedX pluggable storage engine     | YES  | NO | YES | 
| ARCHIVE  | YES | Archive storage engine       | NO  | NO | NO  | 
| InnoDB  | DEFAULT | Percona-XtraDB, Supports transactions, row-level locking, and foreign keys | YES  | YES | YES | 
| PERFORMANCE_SCHEMA | YES | Performance Schema        | NO  | NO | NO  | 
| MEMORY  | YES | Hash based, stored in memory, useful for temporary tables   | NO  | NO | NO  | 
| Aria  | YES | Crash-safe tables with MyISAM heritage     | NO  | NO | NO  | 
+--------------------+---------+----------------------------------------------------------------------------+--------------+------+------------+ 
10 rows in set (0.03 sec) 

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

更多精彩内容其他人还在看

MySQL优化之表结构优化的5大建议(数据类型选择讲的很好)

很多人都将 数据库设计范式 作为数据库表结构设计“圣经”,认为只要按照这个范式需求设计,就能让设计出来的表结构足够优化,既能保证性能优异同时还能满足扩展性要求
收藏 0 赞 0 分享

MySQL的表分区详解

这篇文章主要介绍了MySQL的表分区,例如什么是表分区、为什么要对表进行分区、表分区的4种类型详解等,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL基本命令、常用命令总结

这篇文章主要介绍了MySQL基本命令、常用命令总结,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql 强大的trim() 函数

这篇文章主要介绍了mysql 强大的trim() 函数使用方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL函数大全及用法示例分享

这篇文章主要介绍了MySQL的一些函数及用法示例,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL不支持INTERSECT和MINUS及其替代方法

这篇文章主要介绍了MySQL不支持INTERSECT和MINUS情况下的替代方法,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql修改数据库编码(数据库字符集)和表的字符编码的方法

Mysql数据库是一个开源的数据库,应用非常广泛。以下是修改mysql数据库的字符编码的操作过程和将表的字符编码转换成utf-8的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql远程登录出错的解决方法

mysql远程登录出错的情况,先比很多朋友都有遇到过吧,下面有个不错的解决方法,大家可以参考下
收藏 0 赞 0 分享

mysql通过查看跟踪日志跟踪执行的sql语句

在SQL SERVER下跟踪sql采用事件探查器,而在mysql下如何跟踪sql呢,下面有个不错的方法,大家可以参考下
收藏 0 赞 0 分享

MySQL错误代码大全

本章列出了当你用任何主机语言调用MySQL时可能出现的错误。首先列出了服务器错误消息。其次列出了客户端程序消息
收藏 0 赞 0 分享
查看更多