MySQL二进制包安装

创建属组和mysql8用户

1
2
groupadd mysql8
useradd -g mysql8 -d /home/mysql8 mysql8

下载tar包

1
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.30-el7-x86_64.tar.gz

https://downloads.mysql.com/archives/community/

1
2
3
4
5
6
7
8
#解压
tar -xavf mysql-8.0.30-el7-x86_64.tar.gz

#将解压后的文件移动到/usr/local/目录下并命名为mysql8.0.30
mv mysql-8.0.30-el7-x86_64 /usr/local/mysql8.0.30

#修改/usr/local/mysql8.0.30属组
chown -R mysql8.mysql8 /usr/local/mysql8.0.30

创建MySQL数据文件目录-使用刚才创建的mysql8用户

1
2
3
su - mysql8
mkdir data30
exit

配置环境变量

1
2
3
4
5
6
7
8
vim /root/.bash_profile
#添加下述内容
export MYSQL_HOME /usr/local/mysql8.0.30
export PATH $MYSQL_HOME/bin:$PATH
export PATH $PATH:/usr/local/mysql8.0.30/bin

#使用source生效
source /root/.bash_profile

初始化数据库

1
2
3
4
5
6
 mysqld --user mysql8 \
--basedir /usr/local/mysql8.0.30/ \
--datadir /home/mysql8/data30/ \
--lower-case-table-names 1 \
--initialize

配置/etc/my.cnf文件

1
2
3
4
5
6
7
8
9
[mysqld]
basedir /usr/local/mysql8.0.30/
datadir /home/mysql8/data30/
socket /home/mysql8/data30/mysql.sock
character-set-server UTF8MB4
lower_case_table_names 1

[client]
socket /home/mysql8/data30/mysql.sock

这里可以直接启动

1
/usr/local/mysql8.0.30/bin/mysqld --defaults-file /home/mysql8/my.cnf &

也可以添加服务器然后再启动

1
cp /usr/local/mysql8.0.30/support-files/mysql.server /etc/init.d/mysql8

添加mysql8服务

1
chkconfig --add mysql8

启动mysql服务

1
2
su - mysql8
service mysql8 start

修改初始密码然后登陆

1
mysqladmin -u root -p'NgDK3)NCldDi' password '123456'

总结

在编译安装之后可以禁用自动重启,不然每次重启宿主机后,mysqld_safe都会以root运行,然后启动mysql。

1
2
systemctl is-enabled mysql8
systemctl disable mysql8