准备环境装依赖,源码下载要解压;
CMake配编译项,编译安装需耐心;
用户和组要创建,目录权限要设好;
配置文件要编写,数据库要初始化;
服务启动并配置,root密码要修改;
远程访问可配置,安全加固别忘了。
本次安装需要提前规划好的目录(大家根据自己实际需求进行调整)
MySQL的源码目录 | /opt/software/MySQL/mysql-5.7.44 |
---|---|
MySQL的安装目录 | DCMAKE_INSTALL_PREFIX=/opt/software/MySQL/mysql |
MySQL的数据目录 | DMYSQL_DATADIR=/opt/software/MySQL/data |
MySQL的配置文件目录 | DSYSCONFDIR=/etc |
MySQL的UNIX域套接字文件目录 | DMYSQL_UNIX_ADDR=/tmp/mysql.sock |
服务进程pid文件路径 | pid-file=/opt/software/MySQL/tmp/mysql.pid |
临时目录路径 | tmpdir=/opt/software/MySQL/tmp |
表空间文件路径(默认保存在MySQL的datadir中) | innodb_data_home_dir=/opt/software/MySQL/data |
redoLog文件目录(默认保存在MySQL的datadir中 ) | innodb_log_group_home_dir=/opt/software/MySQL/data |
错误日志存放路径 | log_error=/opt/software/MySQL/logs/error.log |
通用查询日志存放路径 | general_log_file=/opt/software/MySQL/logs/general.log |
慢查询日志存放路径 | slow_query_log_file=/opt/software/MySQL/logs/slowq.log |
第一步,卸载mariadb和已经安装的MySQL
rpm -qa | grep mariadb
rpm -qa | grep mysql
yum remove -y [上面命令查询出来的mariadb或MySQL]
第二步,创建目录/opt/software/mysql来存放MySQL的源码包,切换到存放MySQL源码包的目录下,使用wget工具下载包含boost的官网MySQL源码包
mkdir -p /opt/package/mysql_package && cd /opt/package/mysql_package \
&& wget https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-5.7.44.tar.gz
第三步,创建MySQL相关目录
mkdir -p /opt/software/MySQL/{
mysql,data,logs,tmp}
第四步,解压MySQL源码到/opt/software/MySQL目录下,centos7安装及配置SCL国内源,centos7安装及配置EPEL国内源
tar -zxvf /opt/package/mysql_package/mysql-boost-5.7.44.tar.gz -C /opt/software/MySQL
第五步,安装MySQL源码编译需要用到的依赖库
# cmake版本建议3.75及以上
yum install -y ncurses libaio-devel ncurses-devel openssl-devel gcc gcc-c++ make cmake cmake3 git gmp mpfr bison m4 libtool autoconf automake openldap openldap-clients openldap-servers openldap-devel migrationtools cyrus-sasl bison-devel openssl libtirpc libtirpc-devel libarchive
# 下面几个依赖包是我去Linux系统软件仓库上面下载的rpm包,下载到服务器上面再手动安装
yum localinstall -y \
devtoolset-11-binutils-2.36.1-2.xcpng8.3.x86_64.rpm \
devtoolset-11-gcc-11.2.1-6.xcpng8.3.x86_64.rpm \
devtoolset-11-libstdc++-devel-11.2.1-6.xcpng8.3.x86_64.rpm \
devtoolset-11-gcc-c++-11.2.1-6.xcpng8.3.x86_64.rpm
第六步,先shutdown now关闭系统,查看虚拟机分配了多少了硬件资源,在MySQL源码目录同级目录下,新建一个目录build来进行编译操作,切换到编译目录/opt/software/MySQL/build,执行编译过程,看到Configuring done,意味着配置完成
mkdir /opt/software/MySQL/build && cd /opt/software/MySQL/build
cmake3 -j10 /opt/software/MySQL/mysql-5.7.44 \
-DCMAKE_INSTALL_PREFIX=/opt/software/MySQL/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/opt/software/MySQL/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8mb4 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_SSL=system \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_BOOST=/opt/software/MySQL/mysql-5.7.44/boost \
-DENABLE_DOWNLOADS=1
# 注解
cmake3 -j10 /opt/software/My