安装mysql 依赖
yum -y install gcc cmake make gcc-c++ ncurses-devel openssl-devel bison ncurses chkconfig lsof
下载 boost (5.7 开始需要安装)
- wget https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
- tar -zxvf boost_1_59_0.tar.gz
- mv boost_1_59_0 /mnt/
下载mysql
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.17.tar.gz
添加MySQL用户和所属组(要先查看是否已经存在mysql用户和组)(因为测试服务器已经有了 所以本人并未执行此代码)
[root@Allen ~]#cat /etc/passwd | grep mysql //查看是否已存在mysql用户
[root@Allen ~]#cat /etc/group | grep mysql //查看是否已存在mysql组
[root@Allen ~]# groupadd mysql //如果先执行下面的命令会提示没有mysql这个组
[root@Allen ~]# useradd -r -g mysql mysql
3、 创建mysql安装目录和数据目录
[root@Allen home]# mkdir /mnt/mysql-5.7.17 //创建目录作为MySQL5.7.17安装路径
[root@Allen home]# mkdir /mnt/mysqldata5.7/data //创建目录作为MySQL5.7.17数据路径
4、 修改MySQL目录所有者
[root@Allen support-files]# chown -R mysql:mysql /mnt/mysql-5.7.17
解压 (需要进入mysql安装目录)
- tar -zxvf mysql-5.7.17.tar.gz
- cd mysql-5.7.17
编译安装:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mnt/mysql-5.7.17 -DMYSQL_UNIX_ADDR=/tmp/mysql3317.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=/mnt/boost_1_59_0
编译安装各参数 含义
[root@Allen mysql-5.7.17]# cmake \
> -DCMAKE_INSTALL_PREFIX= 指定安装路径,如果没有mysql这个目录就要提前新建
> -DMYSQL_DATADIR= \ 指定数据存放路径,如果没有这个目录也要提前新建
> -DMYSQL_UNIX_ADDR=\ 指定套间字路径
> -DDEFAULT_CHARSET= \ 设置字符集
> -DDEFAULT_COLLATION= \ 设置字符校验集
> -DEXTRA_CHARSETS=all \
> -DENABLED_LOCAL_INFILE=1 \
> -DDOWNLOAD_BOOST=1 \ //下载boost这个包,之前我们下载过了,这里就可以不使用这个参数了,因为mysql5.7.17需要这个包来编译,如果网络差,下载这个是很慢的,还不如提前下载好放到Linux解压
接下来先执行 make (时间比较长)
make
make install
cp /etc/my.cnf /etc/my.3317.cnf (需要修改配置文件 因为本人 新启个端口3317 所以 这么写 如果 默认3306端口 只需要在 /etc里 添加个my.cnf 就行)
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
修改配置文件
[root@Allen support-files]# vi /etc/my.3317.cnf
[mysqld]
port=3317
basedir=/mnt/mysql-5.7.17 //mysql安装目录
datadir=/mnt/mysqldata5.7/data //mysql 数据目录
socket=/tmp/mysql.sock
user=mysql
保存 退出
数据库初始化
/mnt/mysql-5.7.17/bin/mysqld --initialize-insecure --user=mysql --basedir=/mnt/mysql-5.7.17 --datadir=/mnt/mysqldata5.7/data
启动数据库
/mnt/mysql-5.7.17/bin/mysqld_safe --defaults-extra-file=/etc/my.3317.cnf --datadir=/mnt/mysqldata5.7/data --user=mysql &
登入数据库
mysql -uroot -p -P3317