1.编译安装

#安装依赖
yum install -y cmake make gcc gcc-c++ bison ncurses ncurses-devel  openssl-devel

#创建用户
useradd -M -s /sbin/nologin mysql

#创建数据目录
mkdir /data/3306 -p
chown -R mysql. /data

#下载解压
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.28.tar.gz

tar zxf mysql-boost-5.7.28.tar.gz

#编译安装
cmake    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
 -DMYSQL_DATADIR=/data/3306 \
 -DSYSCONFDIR=/etc \
 -DWITH_MYISAM_STORAGE_ENGINE=1 \
 -DWITH_INNOBASE_STORAGE_ENGINE=1 \
 -DWITH_MEMORY_STORAGE_ENGINE=1 \
 -DWITH_READLINE=1 \
 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
 -DMYSQL_TCP_PORT=3306 \
 -DENABLED_LOCAL_INFILE=1 \
 -DWITH_PARTITION_STORAGE_ENGINE=1 \
 -DEXTRA_CHARSETS=all \
 -DDEFAULT_CHARSET=utf8 \
 -DDEFAULT_COLLATION=utf8_general_ci \
 -DWITH_BOOST=boost

make -j && make install && echo $?

#编写配置文件
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/3306
server_id=6
port=3306
socket=/tmp/mysql.sock

[mysql]
socket=/tmp/mysql.sock
EOF

#环境变量设置
echo export PATH=/usr/local/mysql/bin:$PATH >> /etc/profile
. /etc/profile

#初始化数据库
mysqld --initialize-insecure  --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306

#编写启动脚本
cat > /etc/systemd/system/mysqld.service <<EFO
 [Unit]
 Description=MySQL Server
 Documentation=man:mysqld(8)
 Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
 After=network.target
 After=syslog.target
 [Install]
 WantedBy=multi-user.target
 [Service]
 User=mysql
 Group=mysql
 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
 LimitNOFILE=5000
 EFO

systemctl start mysqld

2.二进制安装

#创建用户、数据目录
mkdir /data/mysql
chown -R mysql /data

#准备程序
tar xf mysql-5.7.26-linux-x86_64.tar.gz -C /usr/local/mysql
chown -R root.  /usr/local/mysql

#准备配置文件
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/3306
server_id=6
port=3306
socket=/tmp/mysql.sock

[mysql]
socket=/tmp/mysql.sock
EOF

#初始数据库文件
cd /usr/local/mysql/
./scripts/mysql_install_db --datadir=/data/mysql --user=mysql

#环境变量设置
echo export PATH=/usr/local/mysql/bin:$PATH >> /etc/profile
. /etc/profile

#准备服务脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld

service mysqld start