配置說明
Linux版本:Centos7
MySQL版本:MySQL5.7.16
該文檔適用于MySQL版本>=5.7.6
一、卸載CentOS7默認攜帶的mariadb包
| # 檢查mariadb安裝包[root@wing ~]# rpm -qa | grep -i mysql[root@wing ~]# rpm -qa | grep -i mariadbmariadb-libs-5.5.50-1.el7_2.x86_64# 卸載mariadb安裝包[root@wing ~]# rpm -e mariadb-libs-5.5.50-1.el7_2.x86_64error: Failed dependencies: libmysqlclient.so.18()(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64 libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64[root@wing ~]# rpm -e mariadb-libs-5.5.50-1.el7_2.x86_64 postfix-2:2.10.1-6.el7.x86_64 | 
二、獲得MySQL所有版本(5.0.15-latest)地址傳送門
http://downloads.mysql.com/archives/community/
三、安裝編譯軟件
| yum install -y cmake make gcc gcc-c++ | 
四、創建MySQL安裝目錄
| # 如MySQL安裝目錄為:/usr/local/mysqlmkdir -p /usr/local/mysql | 
五、解壓MySQL源碼包
| tar -zxvf mysql-5.7.16.tar.gz | 
六、創建mysql用戶和用戶組
| # 創建用戶組groupadd mysql# 創建mysql用戶,所屬組為mysqluseradd -s /bin/bash -m -g mysql mysql | 
七、安裝MySQL相關依賴包
| yum install -y ncurses-devel openssl-devel bison-devel libaio libaio-devel | 
八、boost庫安裝
| # 該步驟可以省略,在cmake階段添加參數-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost即可# boost庫安裝wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gztar -zxvf boost_1_59_0.tar.gz -C /usr/localmv /usr/local/boost_1_59_0 /usr/local/boostcd /usr/local/boost./bootstrap.sh./b2 stage threading=multi link=shared./b2 install threading=multi link=shared | 
九、創建MySQL相關目錄
| 目錄 | 含義 | 配置參數 |
| :——— | ————————————– | —————————————- |
| bin_log | 二進制日志目錄 | log_bin_basename
log_bin_index |
| mydata | 數據文件目錄 | datadir |
| innodb_log | InnoDB重做日志目錄 | innodb_log_group_home_dir |
| innodb_ts | InnoDB共享表空間目錄 | innodb_data_home_dir |
| log | 日志文件目錄(error log+general log+slow log) | log_error
general_log_file
slow_query_log_file |
| relay_log | InnoDB中繼日志目錄 | relay_log_basename
relay_log_index |
| tmpdir | 臨時文件目錄 | tmpdir |
| undo_log | InnoDB回滾日志目錄 | innodb_undo_directory |
| mkdir -p /data/mysql/mysql3306/bin_logmkdir -p /data/mysql/mysql3306/db_filemkdir -p /data/mysql/mysql3306/innodb_logmkdir -p /data/mysql/mysql3306/innodb_tsmkdir -p /data/mysql/mysql3306/logmkdir -p /data/mysql/mysql3306/relay_logmkdir -p /data/mysql/mysql3306/tmpdirmkdir -p /data/mysql/mysql3306/undo_log |