centos7 安装 mariadb 及 utf8 配置

  • 2016-03-12
  • 浏览 (160)

在centos7里安装mysql报了这个错误:Yum: No package mysql-server available in Cent OS 7

CentOS 6 或早期的版本中提供的是 MySQL 的服务器/客户端安装包,但 CentOS 7 已使用了 MariaDB 替代了默认的 MySQL。MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

安装命令:

yum install mariadb-server mariadb-libs mariadb
启动mysql服务:
service mariadb start 

#或者用systemctl命令
systemctl start mariadb.service
成立于2009年,MySQL之父Michael “Monty” Widenius用他的新项目MariaDB完成了对MySQL的“反戈一击”。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将 MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。 过去一年中,大型互联网用户以及Linux发行商纷纷抛弃MySQL,转投MariaDB阵营。MariaDB是目前最受关注的MySQL数据库衍生版, 也被视为开源数据库MySQL的替代品。
MariaDB虽然被视为MySQL数据库的替代品,但它在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL。而且从MySQL迁移到MariaDB也是非常简单的:
  1. 数据和表定义文件(.frm)是二进制兼容的
  2. 所有客户端API、协议和结构都是完全一致的
  3. 所有文件名、二进制、路径、端口等都是一致的
  4. 所有的MySQL连接器,比如PHP、Perl、Python、Java、.NET、MyODBC、Ruby以及MySQL C connector等在MariaDB中都保持不变
  5. mysql-client包在MariaDB服务器中也能够正常运行
  6. 共享的客户端库与MySQL也是二进制兼容的

也就是说,在大多数情况下,你完全可以卸载MySQL然后安装MariaDB,然后就可以像之前一样正常的运行。


现在大多数系统用的都是utf8,mariadb设置utf8和mysql有点差异,下面是我的/etc/my.cnf的配置,请参考:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
max_allowed_packet=29777216
character-set-server=utf8
character-set-filesystem = utf8

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
character-set-server=utf8
character-set-filesystem = utf8

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[client]
default-character-set=utf8

正文到此结束