1. [root@localhost ~]# systemctl stop firewalld
    2. [root@localhost ~]# systemctl disable firewalld
    3. [root@localhost ~]# systemctl enable firewalld
    4. [root@localhost ~]# setenforce 0
    5. [root@localhost ~]# vi /etc/selinux/config
    6. SELINUX=disabled

    1、清理安装环境:

    1. [root@local ~]# yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
    2. [root@local ~]# userdel -r mysql
    3. [root@local ~]# rm -rf /etc/my*
    4. [root@local ~]# rm -rf /var/lib/mysql

    2、创建mysql用户

    1. [root@local ~]# useradd -r mysql -M -s /bin/false

    3、从官网下载tar包

    1. [root@local ~]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz

    4、安装编译工具

    1. [root@local ~]# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make
    2. [root@local ~]# yum -y install cmake

    5、创建mysql目录

    1. [root@local ~]#mkdir -p /usr/local/mysql/{data,log}

    6、解压

    1. [root@local ~]# tar xzvf mysql-boost-5.7.27.tar.gz -C /usr/local/
    2. 注:如果安 装的MySQL5.7及以上的版本,在编译安装之前需要安装boost,因为高版本mysql需要boots库的安装才可以正常运行。否则会报CMake Error at cmake/boost.cmake:81错误
    3. 安装包里面自带boost
    4. Boost库是为C++语言标准库提供扩展的一些C++程序库

    7、编译安装

    1. [root@local ~]# cd /usr/local/mysql-5.7.27/
    2. [root@local mysql-5.7.27]# cmake . \
    3. -DWITH_BOOST=boost/boost_1_59_0/ \
    4. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    5. -DSYSCONFDIR=/etc \
    6. -DMYSQL_DATADIR=/usr/local/mysql/data \
    7. -DINSTALL_MANDIR=/usr/share/man \
    8. -DMYSQL_TCP_PORT=3306 \
    9. -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
    10. -DDEFAULT_CHARSET=utf8 \
    11. -DEXTRA_CHARSETS=all \
    12. -DDEFAULT_COLLATION=utf8_general_ci \
    13. -DWITH_READLINE=1 \
    14. -DWITH_SSL=system \
    15. -DWITH_EMBEDDED_SERVER=1 \
    16. -DENABLED_LOCAL_INFILE=1 \
    17. -DWITH_INNOBASE_STORAGE_ENGINE=1
    18. 提示:boost也可以使用如下指令自动下载,如果不下载bost压缩包,把下面的这一条添加到配置中第二行
    19. -DDOWNLOAD_BOOST=1/
    20. 参数详解:
    21. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装目录
    22. -DSYSCONFDIR=/etc \ 配置文件存放 (默认可以不安装配置文件)
    23. -DMYSQL_DATADIR=/usr/local/mysql/data \ 数据目录 错误日志文件也会在这个目录
    24. -DINSTALL_MANDIR=/usr/share/man \ 帮助文档
    25. -DMYSQL_TCP_PORT=3306 \ 默认端口
    26. -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候用
    27. -DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调
    28. -DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的
    29. -DDEFAULT_COLLATION=utf8_general_ci \ 支持的
    30. -DWITH_READLINE=1 \ 上下翻历史命令
    31. -DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢
    32. -DWITH_EMBEDDED_SERVER=1 \ 嵌入式数据库
    33. -DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。
    34. -DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键
    35. [root@local mysql-5.7.27]# make && make install
    36. 如果安装出错,想重新安装:
    37. 不用重新解压,只需要删除安装目录中的缓存文件CMakeCache.txt
    38. **需要很长时间!**大约半小时

    8、初始化

    1. [root@local mysql-5.7.27]# cd /usr/local/mysql
    2. [root@localhost mysql]# chown -R mysql.mysql .
    3. [root@local mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data ---初始化完成之后,一定要记住提示最后的密码用于登陆或者修改密码
    4. mysql初始密码【每个人的不一样】 b49TjuHmYp=v
    5. [root@mysql-server ~]# vim /etc/my.cnf ---如果打开文件有内容将文件中所有内容注释掉,在添加如下内容
    6. [mysqld]
    7. basedir=/usr/local/mysql #指定安装目录
    8. datadir=/usr/local/mysql/data #指定数据存放目录

    9、启动mysql

    1. [root@mysql-server ~]# cd /usr/local/mysql
    2. [root@mysql-server mysql]# ./bin/mysqld_safe --user=mysql &
    3. 启动之后再按一下回车!即可后台运行

    10、登录mysql

    1. /usr/local/mysql/bin/mysql -uroot -p'b49TjuHmYp=v'
    2. ln -s /usr/local/mysql/bin/mysql/ /bin/mysql