作者:ChenZhen

博客地址:https://www.chenzhen.space/

版权:本文为博主 ChenZhen 的原创文章,本文版权归作者所有,转载请附上原文出处链接及本声明。

这里我用的发行版是centos7 不同版本用的指令可能会有些不同

1.下载mysql8

直接到官网下载最新版即可

MySQL :: Download MySQL Community Server

选择linux通用版本

选择glibc 64位压缩包

下个页面直接选择开始下载即可

然后将下载好的压缩包放到 /usr/local 目录下,

2.输入指令解压到当前目录

tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz
  • tar -xvf 可以解压tar.xz后缀的压缩文件
  • tar -zxvf 可以解压tar.gz后缀的压缩文件

3.重命名文件为mysql-8.0

(这里也可以选择创建一个名为mysql-8.0软连接指向文件)

mv mysql-8.0.30-linux-glibc2.12-x86_64 mysql-8.0

4.创建data文件夹 储存文件

在mysql目录下创建data文件夹

cd mysql-8.0mkdir data

5.创建用户组以及用户

创建mysql组,再创建mysql用户并将mysql用户添加到组中

groupadd mysqluseradd -g mysql mysql

6.授权用户

将mysql文件夹的所有者和所有组都改为mysql

chown -R mysql.mysql /usr/local/mysql-8.0

7.mysql初始化

进入bin目录执行mysqld文件进行初始化

cd bin
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize

最后一行红色标记是生成的随机密码,记得复制保存

8.编辑my.cnf

vim /etc/my.cnf

注释掉mysqld_safe和下面2条内容 修改basedir datadir socket信息

9.添加mysqld服务

返回mysql-8.0目录下,添加mysqld服务到系统

cd ..
cp -a ./support-files/mysql.server /etc/init.d/mysql

10.授权以及添加服务

chmod +x /etc/init.d/mysql chkconfig --add mysql

11.启动mysql

service mysql start

SUCCESS则表示启动mysql成功

12.查看启动状态

可以用service mysql status 再次查看mysql启动状态

service mysql status

13.将mysql命令添加到服务

ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin

14.登录

 mysql -uroot -p

在下方填入之前生成的随机密码

登录成功提示

15.修改root密码

接下来修改root密码,将123456换成你的新密码

别忘了结尾有个分号“;”

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

然后刷新权限 使密码生效

flush privileges;

16.修改远程连接并生效

选中mysql数据库

use mysql;

设置允许远程连接并生效

update user set host='%' where user='root'; flush privileges;

root表示想要被连接的数据库的用户名
其中“%”表示允许所有机器能访问root用户

17.开放防火墙3306端口

到这里mysql已经可以本地连接上了,但是要用图形化界面远程连接,还需要开发防火墙的3306端口才行

–permanent代表永久生效,否则重启linux后则需要再次开启

firewall-cmd --add-port=3306/tcp --permanentfirewall-cmd --reload

查看防火墙端口开放状态

firewall-cmd --list-all

自此在linux系统上安装mysql8已经完成,并且可以使用图形化界面远程连接