一. 卸载系统自带的mariadb数据库
rpm -qa| grep mariadb
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
rpm -qa| grep mariadb
二. 下载mysql安装包,创建mysql用户组和mysql用户
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql
三. 安装mysql
tar zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /opt
mv /opt/mysql-5.7.36-linux-glibc2.12-x86_64/ /opt/mysql-5.7.36
mkdir /opt/mysql-5.7.36/data
mkdir /opt/mysql-5.7.36/logs
chown -R mysql:mysql /opt/mysql-5.7.36
/opt/mysql-5.7.36/bin/mysqld --initialize --user= mysql --basedir= /opt/mysql-5.7.36 --datadir= /opt/mysql-5.7.36/data
/opt/mysql-5.7.36/bin/mysqld_safe --user= mysql &
ps aux | grep mysqld
/opt/mysql-5.7.36/bin/mysqladmin -uroot -p password
输入临时密码和新密码
/opt/mysql-5.7.36/bin/mysqladmin -uroot -p shutdown
输入新密码
vi /etc/my.cnf
[ client]
default-character-set= utf8
[ mysql]
default-character-set= utf8
[ mysqld]
port = 3306
character-set-server= utf8
init_connect = 'SET NAMES utf8'
init_connect = 'SET collation_connection = utf8_unicode_ci'
default-collation= utf8_general_ci
collation-server= utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
basedir = /opt/mysql-5.7.36
datadir = /opt/mysql-5.7.36/data
max_connections = 200
default-storage-engine= INNODB
lower_case_table_names = 1
max_allowed_packet = 16M
log_error = /opt/mysql-5.7.36/logs/mysql.log
slow_query_log = 1
slow_query_log_file = /opt/mysql-5.7.36/logs/slow_query.log
long_query_time = 3
log_output = FILE
四. 设置mysql为系统服务,并开机自启
vi /opt/mysql-5.7.36/support-files/mysql.server
找到变量basedir和datadir并赋值为步骤三中的/opt/mysql-5.7.36和/opt/mysql-5.7.36/data
vim /usr/lib/systemd/system/mysql.service
[ Unit]
Description = mysql
After = network.target remote-fs.target nss-lookup.target
[ Service]
Type = forking
User = mysql
Group = mysql
LimitCORE = infinity
LimitNOFILE = 655360
LimitNPROC = 2056474
ExecStart = /opt/mysql-5.7.36/support-files/mysql.server start
[ Install]
WantedBy = multi-user.target
systemctl daemon-reload
systemctl enable mysql
systemctl start mysql
五. 添加环境变量并设置远程主机登录
echo "export PATH=/opt/mysql-5.7.36/bin:$PATH " >> /etc/profile
source /etc/profile
mysql -uroot -p
输入root密码
GRANT ALL PRIVILEGES ON *.* TO 'root' @'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;