1、通过编译、二进制安装MySQL5.7
##安装包
[root@centos8 ~]#yum -y install libaio numactl-libs libncurses* perl perl-devel
##创建用户和组
[root@centos8 ~]#groupadd -r -g 306 mysql
[root@centos8 ~]#useradd -r -g 306 -d /data/mysql mysql
##创建存放数据库的文件夹并修改权限
[root@centos8 ~]#mkdir /data/mysql
[root@centos8 ~]#chown -R /data/mysql/
##准备二进制程序包和程序文件
[root@centos8 ~]#tar xf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@centos8 ~]#ln -s mysql-5.7.29-linux-glibc2.12-x86_64/ mysql
[root@centos8 ~]#chown mysql.mysql -R /usr/local/mysql/
##环境变量
[root@centos8 ~]#tar xf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@centos8 ~]#ln -s mysql-5.7.29-linux-glibc2.12-x86_64/ mysql
[root@centos8 ~]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@centos8 ~]#. /etc/profile.d/mysql.sh
##准备配置文件
[root@centos8 ~]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
port=3306
#skip_name_resolve=1
socket=/data/mysql/mysql.sock
log-error=/data/mysql/mysql.log
#pid-file=/data/mysql/mysql.pid
pid-file=/usr/local/mysql/mysql.pid
[client]
socket=/data/mysql/mysql.sock
**注意注意注意:如果不执行此步骤最后启动mysql会出现以下报错**
[root@centos7 ~]# service mysql start
Starting MySQL.211130 09:47:24 mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
**ERROR! The server quit without updating PID file (/var/lib/mysql/centos7.pid).**
##准备服务脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
###在脚本里面添加datadir和basedir
[root@centos8 ~]#sed -Ei 's#^(basedir=)$#\1\/usr\/local\/mysql#' /etc/init.d/mysqld
[root@centos8 ~]#sed -Ei 's#^(datadir=)$#\1\/data#' /etc/init.d/mysqld
##进行数据库初始化
[root@centos8 ~]#/usr/local/mysql-5.7.29-linux-glibc2.12-x86_64/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
##启动mysql服务
[root@centos8 ~]# service mysqld start
[root@centos8 ~]# ss -nltp
2、二进制安装mariadb10.4
##安装软件包
##创建用户和组
##创建存放数据库的文件并修改权限
##准备二进制文件并修改权限
[root@centos7 ~]#tar xf mariadb-10.2.31-linux-x86_64.tar.gz -C /usr/local/
[root@centos7 ~]#cd /usr/local/
[root@centos7 ~]#ln -s mariadb-10.2.31-linux-x86_64/ mysql
[root@centos7 ~]#chown -R mysql.mysql /usr/local/mysql/ /usr/local/mariadb*
##初始化数据库
[root@centos7 ~]#/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
##准备启动脚本
[root@centos7 ~]#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@centos7 ~]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@centos7 ~]#sed -Ei 's#^(basedir=)$#\1\/usr\/local\/mysql#' /etc/init.d/mysqld
[root@centos7 ~]# sed -Ei 's#^(datadir=)$#\1\/data\/mysql#' /etc/init.d/mysqld
[root@centos7 ~]#chkconfig --add mysqld
[root@centos7 ~]#cat /etc/my.cnf|grep -n "symbolic-links=0"注释这行
[root@centos7 ~]# mysql