MySQL 5.7 主要特性:原生支持 Systemd更好的性能:

对于多核 CPU、固态硬盘、锁有着更好的优化更好的 InnoDB 存储引擎更为健壮的复制功能:

复制带来了数据完全不丢失的方案,传统金融客户也可以选择使用MySQL 数据库。

注:mysql-5.6.3 已经支持了多线程的主从复制

新增 sys 库:以后这会是 DBA 访问最频繁的库

 

环境:Centos7.2

编译安装mysql5.7所需的软件包 :

bison-3.0.4.tar.gz

boost_1_59_0.tar.gz

cmake-3.5.2.tar.gz

mysql-5.7.18.tar.gz

ncurses-5.9.tar.gz

一、准备工作

1.   安装gcc编译器

[[email protected] ~]#yum install gcc  gcc-c++ -y      我这边已经安装好了

Centos7编译安装mysql5.7.18

 

2.   在Centos7.2中默认安装了mysql的分支mariadb,所以卸载掉

[[email protected] ~]# rpm -emariadb-libs –nodeps

 

Centos7编译安装mysql5.7.18

 

 

二、安装mysql

1.下载安装cmake编译器

下载cmake 3.5.tar.gz http://www.cmake.org/download/

1)编译安装(过程稍长

[[email protected]]# tar zxf cmake-3.5.2.tar.gz

[[email protected]]# cd cmake-3.5.2/

[[email protected]]# ./bootstrap && gmake && gmake install

 

Centos7编译安装mysql5.7.18

 

 

安装完成后查看cmake版本

[[email protected] cmake-3.5.2]# cmake –version

 

Centos7编译安装mysql5.7.18

 

 

安装ncurses

[[email protected] src]# tar zxfncurses-5.9.tar.gz

[[email protected] src]# cd ncurses-5.9/

[[email protected] ncurses-5.9]#./configure && make && make install

 

Centos7编译安装mysql5.7.18

 

 

安装bison

[[email protected] src]# tar zxfbison-3.0.4.tar.gz

[[email protected] src]# cd bison-3.0.4/

[[email protected] bison-3.0.4]#./configure && make && make install

 

Centos7编译安装mysql5.7.18

 

 

安装boost

[[email protected] src]# tar zxfboost_1_59_0.tar.gz

[[email protected] src]# mv boost_1_59_0/usr/local/boost

2)创建mysql用户&用户组及目录

[[email protected] src]# groupadd -rmysql && useradd -r -g mysql -s /bin/false -M mysql

[[email protected] src]# mkdir/usr/local/mysql     //创建目录

[[email protected] src]# mkdir/usr/local/mysql/data   //数据库目录

3)编译安装mysql

1.解压mysql源码包

[[email protected] src]# tar zxfmysql-5.7.18.tar.gz

[[email protected] src]# cd mysql-5.7.18/

[[email protected] mysql-5.7.18]# cmake-DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc-DDEFAULT_CHARSET=UTF8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1-DWITH_INNOBASE_STORAGE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1-DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_SYSTEMD=1 -DWITH_BOOST=/usr/local/boost

 

Centos7编译安装mysql5.7.18

 

 

确定了以上输入没有错误后make && make install (以下过程需要等待很久)

 

Centos7编译安装mysql5.7.18

 

 

安装结束后优化mysql执行路径

[[email protected] ~]# echo "exportPATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

[[email protected] ~]# source/etc/profile

设置权限并初始化mysql

[[email protected] ~]# cd /usr/local/mysql/

[[email protected] mysql]# chown -R mysql:mysql/usr/local/mysql/

[[email protected] mysql]# mysqld --initialize --user=mysql--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

 

Centos7编译安装mysql5.7.18

 

 

以上方框生成一个随机密码(注意保存待会登陆时需要用的到)

创建mysql配置文件

[[email protected] mysql]# vim/etc/my.cnf

 

Centos7编译安装mysql5.7.18

 

重新载入 systemd,扫描新的或有变动的单元

[[email protected] mysql]# systemctldaemon-reload

配置mysql自动启动

[[email protected] mysql]# cp/usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system

在mysql.service把默认的pid文件指定到了/var/run/mysqld/目录因此需要手动建立该目录并把权限给mysql用户

[[email protected] mysql]# mkdir /var/run/mysqld

[[email protected] mysql]# chown -R mysql:mysql/var/run/mysqld/

最后启动mysql服务

[[email protected] mysql]# systemctl start mysqld

[[email protected] mysql]# netstat -anpt | grep mysqld

tcp6       0     0 :::3306                :::*                    LISTEN      99777/mysqld

登陆mysql数据库

 

Centos7编译安装mysql5.7.18

 

 

第一次登陆后查询数据时会报出以下错误,提示需要更改密码

 

Centos7编译安装mysql5.7.18

 

 

我们更改密码后再次进入数据库测试

[[email protected] ~]# mysqladmin -uroot-p'JnoUT%&cg28p' password pwd123

Centos7编译安装mysql5.7.18

 

此时mysql5.7已经正式安装完成

Centos7编译安装mysql5.7.18

 

 

 

 

相关文章: