删除系统中的mariadb
[root@MySql ~]# find / -name mariadb*
/etc/ld.so.conf.d/mariadb-x86_64.conf
/usr/share/doc/mariadb-libs-5.5.56
[root@MySql ~]# rpm -e mariadb-libs-5.5.56 --nodeps
[root@MySql ~]# find / -name mariadb*
安装依赖
yum -y install make gcc-c++ cmake bison-devel libaio libaio-devel ncurses-devel
下载源码包并解压,这里下载的是带boost的包,MySQL5.7.5之后需要boost库支持,所以这里直接下载带boost的源码包
[root@MySql ~]# wget -c https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.22.tar.gz
[root@MySql ~]# tar zxvf mysql-boost-5.7.22.tar.gz
[root@MySql ~]# cd mysql-5.7.22/
编译,生成makefile
cmake \
-DBUILD_CONFIG=mysql_release \ #使用该选项,可以促使编译器按照oracle生成官方版本的选项来编译程序
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #[MySQL安装的根目录]
-DMYSQL_DATADIR=/data/mysql \ #[MySQL数据库文件存放目录]
-DSYSCONFDIR=/etc \ #[MySQL配置文件所在目录]
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ #[MySQL的sock文件目录]
-DEXTRA_CHARSETS=all \ #[使MySQL支持所有的扩展字符]
-DDEFAULT_CHARSET=utf8 \ #[设置默认字符集为utf8]
-DDEFAULT_COLLATION=utf8_general_ci \ #[设置默认字符校对]
-DWITH_BOOST=boost \ #[指定boost安装路径]
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \ #[MySQL的监听端口]
-DENABLED_LOCAL_INFILE=1 \ #[启用加载本地数据]
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_EMBEDDED_SERVER=OFF \
然后
make -j 2 #此过程时间过长
make install
创建mysql用户,并更改权限
[root@MySql ~]# groupadd -g 1000 mysql
[root@MySql ~]# useradd -g 1000 -M -s /sbin/nologin -u 1000 mysql
[root@MySql ~]#