1,准备安装包
boost_1_59_0.tar.gz
https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
cmake-2.8.12.2.tar.gz
https://cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
mysql-5.7.37.tar.gz
https://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-5.7.37.tar.gz
中国科技大学开源:https://mirrors.ustc.edu.cn/mysql-ftp/Downloads/
2,准备目录
创建/home/tools目录,将所有的软件包放在一起
[root@localhost ~]#mkdir -p /home/tools/
[root@localhost ~]cd /home/tools/
[root@localhost tools]# ll
-rw-r--r--. 1 root root 83709983 Apr 19 22:07 boost_1_59_0.tar.gz
-rw-r--r--. 1 root root 732664114 May 11 21:33 mysql-5.7.37-el7-x86_64.tar.gz
-rw-r--r--. 1 root root 56248775 May 11 22:21 mysql-5.7.37.tar.gz
3,安装cmake安装包
[root@localhost tools]#tar xf cmake-2.8.12.2.tar.gz
[root@localhost tools]#cd cmake-2.8.12.2
[root@localhost cmake-2.8.12.2]#./configure
[root@localhost cmake-2.8.12.2]#gmake && gmake install
每一步结束后,可以使用ehco $?
,当返回值为0时,说明编译过程正常
4,将boost库解压到/usr/local/目录
[root@localhost tools]#tar xf boost_1_59_0.tar.gz -C /usr/local/
[root@localhost tools]#cd /usr/local/
[root@localhost tools]#mv boost_1_59_0/ boost
5,安装依赖包
[root@localhost tools]#yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++
6,创建MySQL文件存放目录,用户和组
[root@localhost tools]#mkdir -p /application/mysql
[root@localhost tools]#mkdir -p /application/mysql/data/
[root@localhost tools]#mkdir -p /application/mysql/tmp/
[root@localhost tools]#mkdir -p /application/mysql/binlog/
[root@localhost tools]#mkdir -p /application/mysql/logs/
7,创建mysql组和用户
[root@localhost tools]#groupadd mysql
[root@localhost tools]#useradd mysql -s /sbin/nologin -M -g mysql
[root@localhost ]# chown -R mysql.mysql /application/mysql
[root@localhost tools]#id mysql
uid=1001(mysql) gid=1001(mysql) groups=1001(mysql)
- -s /sbin/nologin 用户不能登录系统
- -M 不创建用户的HOME目录
- -g 指定用户登录组的GID或组名
8,编译安装MySQL 5.7
[root@localhost tools]#tar-xf mysql-5.7.37.tar.gz
[root@localhost tools]#cd mysql-5.7.27
[root@localhost mysql-5.7.37]#cmake . \
-DCMAKE_INSTALL_PREFIX=/application/mysql \
-DMYSQL_DATADIR=/application/mysql/data \
-DMYSQL_UNIX_ADDR=/application/mysql/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0 \
-DWITH_BOOST=/usr/local/boost
9,MySQL初始化
[root@localhost /]#./application/mysql/bin/mysql_install_db --user=mysql --datadir=/application/myaql/data
[root@localhost /]#/application/mysql/bin/mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
[root@localhost /]#/application/mysql/bin/mysql_ssl_rsa_setup --datadir=/application/mysql/data
会生产临时密码在屏幕上,保存临时密码。
10,建立MySQL配置文件my.cnf
备份原有配置文件
[root@localhost /]#mv /etc/my.cnf ~
[root@localhost /]#vim /etc/my.cnf
11,开机启动MySQL
[root@localhost /]#cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@localhost /]# chkconfig --add mysqld
[root@localhost /]# chkconfig mysqld on
[root@localhost /]# service mysqld start
Starting MySQL. SUCCESS!
[root@localhost /]# /application/mysql/bin/mysql -u root -p'ptiO_?,1QGza'
用第9步保存的密码
12,修改密码
[root@localhost /]# /application/mysql/bin/mysqladmin -u root -p'ptiO_?,1QGza' password '666666'
看到库即完成