1、下载mysql的安装包

#下载mysql
wget https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.30.tar.gz

2、编译安装mysql

#查看系统发行版本号
cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

# 安装依赖包
yum install ncurses-devel libaio-devel -y
yum install cmake gcc gcc-c++ make autoconf -y

#关闭SELinux
#临时关闭selinux
setenforce 0
#永久关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

#关闭防火墙
#查看防火墙状态
systemctl status firewalld.service
#临时关闭防火墙
systemctl stop firewalld.service
#永久关闭防火墙
systemctl disable firewalld.service

#创建mysql帐号
groupadd -r mysql
useradd -r -g mysql -s /sbin/nologin mysql

# 编译安装mysql
tar xf mysql-5.6.30.tar.gz 
cd mysql-5.6.30/
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.30 \  #指定安装目录
-DMYSQL_DATADIR=/usr/local/mysql-5.6.30/data \            #指定数据目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.30/mysql.sock \    #指定sock文件位置
-DDEFAULT_CHARSET=utf8 \               #默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \  #默认编码
-DWITH_EXTRA_CHARSETS=all \            #其它额外字符集
-DWITH_INNOBASE_STORAGE_ENGINE=1 \     #支持的存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_SSL=bundled \                   #编译其它功能SSL、ZLIB等
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 -DSYSCONFDIR=/etc
#编译并安装数据库
make && make install

#做软链接并给MySQL目录授权
ln -s /usr/local/mysql-5.6.30/ /usr/local/mysql  # 必须要做 否则后面操作会报错
chown -R mysql.mysql /usr/local/mysql

3、初始化数据库

#mysql 5.6初始化数据库的命令
cd /usr/local/mysql
./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
#mysql 5.7初始化数据库的命令
/usr/local/mysql/bin/mysqld --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

4、设置mysql启动服务脚本

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 700 /etc/init.d/mysqld

5、设置mysql环境变量

echo 'PATH=/usr/local/mysql/bin:$PATH' >>/etc/profile
source /etc/profile

6、设置mysql配置文件

#编辑mysql配置文件 /etc/my.cnf
vim /etc/my.cnf

#在my.cnf中写入如下内容
[mysqld]
server_id=1
port=3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock 
log_bin=/usr/local/mysql/mysql-bin
log_error=/var/log/mysql.log
character-set-server=utf8
[client]
socket=/usr/local/mysql/mysql.sock

7、启动mysql服务

#启动mysql服务
/etc/init.d/mysqld start

#关闭mysql服务
/etc/init.d/mysqld stop

#重启mysql服务
/etc/init.d/mysqld restart

8、设置mysql服务密码

mysqladmin -u root password 123456

9、开启mysql远程连接

#登录mysql,操作mysql系统数据库
mysql -u root -p

#以下为sql命令
use mysql;
#查看用户表中信息
select User,authentication_string,Host,Password from user; 
#使用如下命令创建可以远程连接的账号和密码
GRANT ALL PRIVILEGES ON *.* TO '账号'@'%' IDENTIFIED BY '密码';
# "%"代表所有主机,也可以具体到你的主机IP地址

#刷新权限(从mysql数据库的grant表中重新加载权限数据到cache中,一定要做)
flush privileges;