下载源码包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.29.tar.gz
解压源码包
tar -zxvf mysql-boost-5.7.29.tar.gz
修改版本号
- 修改mysql-5.7.28/VERSION文件
MYSQL_VERSION_MAJOR=99
MYSQL_VERSION_MINOR=9
MYSQL_VERSION_PATCH=99
MYSQL_VERSION_EXTRA=
- 修改mysql-5.7.28/sql/mysqld.cc第354-362行内容
//#if MYSQL_VERSION_ID >= 50800
//#error "show_compatibility_56 is to be removed in MySQL 5.8"
//#else
/*
Default value TRUE for the EMBEDDED_LIBRARY,
default value from Sys_show_compatibility_56 otherwise.
*/
my_bool show_compatibility_56= TRUE;
//#endif /* MYSQL_VERSION_ID >= 50800 */
编译
cmake
-DCMAKE_INSTALL_PREFIX=/insight/mysql/install
-DMYSQL_DATADIR=/insight/mysql/data
-DDEFAULT_CHARSET=utf8
-DEXTRA_CHARSETS=all
-DSYSCONFDIR=/insight/mysql/etc
-DENABLED_LOCAL_INFILE=1
-DMYSQL_UNIX_ADDR=/insight/mysql/etc/mysql.sock
-DDEFAULT_COLLATION=utf8_general_ci
-DMYSQL_TCP_PORT=3306
-DMYSQL_USER=mysql
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_BOOST=/opt/v4/mysql-5.7.28/boost/boost_1_59_0
安装
make && make install
配置my.cnf
[mysqld]
datadir=/insight/mysql/data
socket=/insight/mysql/etc/mysql.sock
pid-file=/insight/mysql/etc/mysqld.pid
user=mysql
symbolic-links=0
log_bin_trust_function_creators=1
log-bin=mysql-bin
binlog_format=mixed
server-id = 1
character-set-server=utf8
init_connect='SET NAMES utf8'
[client]
default-character-set=utf8
socket=/insight/mysql/etc/mysql.sock
[mysql]
socket=/insight/mysql/etc/mysql.sock
no-auto-rehash
default-character-set=utf8
[mysqld_safe]
socket=/insight/mysql/etc/mysql.sock
log-error=/insight/mysql/log/mysqld.log
replicate-do-db =all
启动mysql
/insight/mysql/install/bin/mysqld &
- 赋权远程登陆
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' ;、
flush privileges;