一、MySQL 服务基础
1.简介
MySQL 是一个真正的多线程、多用户的 SQL 数据库服务,凭借其高性能、高可靠和易于使用的特点,成为服务器领域中最受欢迎的开源数据库系统
在 2008 年以前,MySQL 项目由 MySQL AB 公司进行开发、发布和支持,之后历经 Sun 公司收购 MySQL,Oracle 公司收购 Sun 公司的过程,目前 MySQL 项目由 Oracle 公司负责运营和维护
2.商业版与社区版
MySQL 商业版是由 MySQL AB 公司负责开发与维护,需要付费才能使用
MySQL 社区版是由分散在世界各地的 MySQL 开发者、爱好者一起开发与维护,可以免费使用
两者区别
商业版组织管理与测试环节更加严格,会比社区版更稳定
商业版不遵守 GPL,社区版遵从 GPL 可以免费使用
商业版可获得 7*24 小时的服务,社区版则没有
3.产品阵营
第一阵营:5.0-5.1 阵营,可说是早期产品的延续
第二阵营:5.4-5.7 阵营,整合了 MySQL AB 公司、社区和第三方公司开发的存储引擎,从而提高性能
第三阵营:6.0-7.1 阵营,就是 MySQL Cluster 版本,为适应新时代对数据库的集群需求而开发
4.源码编译安装
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake
useradd -M -s /sbin/nologin mysql
cd /opt
mysql-boost-5.7.20.tar.gz
tar zxvf mysql-boost-5.7.20.tar.gz
cd mysql-5.7.20/
cmake \
-DCMAKE_INSTALL_PREFIX= /usr/local/mysql \
-DMYSQL_UNIX_ADDR= /usr/local/mysql/mysql.sock \
-DSYSCONFDIR= /etc \
-DSYSTEMD_PID_DIR= /usr/local/mysql \
-DDEFAULT_CHARSET= utf8 \
-DDEFAULT_COLLATION= utf8_general_ci \
-DWITH_EXTRA_CHARSETS= all \
-DWITH_INNOBASE_STORAGE_ENGINE= 1 \
-DWITH_ARCHIVE_STORAGE_ENGINE= 1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE= 1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE= 1 \
-DMYSQL_DATADIR= /usr/local/mysql/data \
-DWITH_BOOST= boost \
-DWITH_SYSTEMD= 1
make -j 4 && make install
vim /etc/my.cnf
[ client]
port = 3306
socket= /usr/local/mysql/mysql.sock
[ mysqld]
user = mysql
basedir= /usr/local/mysql
datadir= /usr/local/mysql/data
port = 3306
character-set-server= utf8
pid-file = /usr/local/mysql/mysqld.pid
socket= /usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_c