1.准备软件包并安装依赖
cmake:2.8.12 点击下载
boost:boost_1_59_0 http://www.boost.org/users/download/#history
mysql:mysql-5.7.18 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz
cmake安装,boost解压移动到/usr/local/boost
yum -y install gcc gcc-c++ ncurses ncurses-devel
2.创建mysql用户及用户组
groupadd -r mysql && useradd -r -g mysql -s /bin/false -M mysql
3.创建mysql安装目录,并授权
mkdir /data/modules/mysql5.7
mkdir /data/modules/mysql5.7/data
chown -R mysql:mysql /data/modules/mysql5.7
chown -R mysql:mysql /data/modules/mysql5.7/data
4.解压mysql安装包,开始安装到指定目录
cmake -DCMAKE_INSTALL_PREFIX=/data/modules/mysql5.7 -DMYSQL_DATADIR=/data/modules/mysql5.7/data -DDEFAULT_CHARSET=utf8 -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 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost -DMYSQL_USER=mysql
查看选项
cmake . -LAH # all params with help text
ccmake . # interactive display
出错需要重新编译时需执行
make clean
rm -f CMakeCache.txt
5.设置MySQL的配置文件my.cnf
mv /etc/my.cnf /etc/my.cnf.bak
vi /etc/my.cnf
配置如下:
[mysqld]
basedir = /data/modules/mysql5.7
datadir = /data/modules/mysql5.7/data
log-error = /data/modules/mysql5.7/data/error.log
port = 3306
socket=/data/modules/mysql5.7/data/mysql.sock
[mysqld_safe]
pid-file=/data/modules/mysql5.7/data/mysqld.pid
6.初始化MySQL自身的数据库
mysqld --initialize-insecure --user=mysql --basedir=/data/modules/mysql5.7 --datadir=/data/modules/mysql5.7/data
ls -lrt /data/modules/mysql5.7/data/ //命令查看是否生成了MySQL自身的数据库文件
7.启动MySQL服务
mkdir /var/log/mysql/error.log
mysqld_safe --user=mysql --datadir=/data/modules/mysql5.7/data --log-error=/var/log/mysql/error.log
mysql_secure_installation
(ln -s /data/modules/mysql5.7/data/mysql.sock /tmp/mysql.sock)
mysqladmin -uroot password 123456 –socket=/data/modules/mysql5.7/data/mysql.sock(/tmp/mysql.sock)
8.开机运行
cp /data/modules/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on