Linux下安装MySQL8.0

时间:2024-09-29

一、安装

1.下载安装包

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

在这里插入图片描述


2.解压mysql8.0安装包

tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 

在这里插入图片描述

查看版本

mysql --version


3.重命名解压出来的文件夹

这里改成mysql-8.0


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


在/mysql-8.0文件夹下创建data文件夹 存储文件


mkdir data


4.分别创建用户组以及用户和密码

(如果提示已存在说明之前有创建过了)


groupadd mysql

useradd -g mysql mysql


授权刚刚新建的用户

chown -R mysql.mysql /opt/mysql/mysql-8.0

chmod 750 /opt/mysql/mysql-8.0/data -R


5.始化数据库

bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/mysql-8.0 --datadir=/opt/mysql/mysql-8.0/data


注:运行指令后将会出现如下输出,记住临时密码,每次运行上述指令生成的临时密码都不一样,我这里是:7Jl44eCeJ!.u


在这里插入图片描述



可能会出现的问题:


在这里插入图片描述


解决方法:


# 检查库是否安装

rpm -qa|grep libaio   

# 安装库

yum install  libaio-devel.x86_64


6.编辑配置文件my.cnf

vim /etc/my.cnf


[mysqld]

 basedir=/usr/local/mysql8

 datadir=/usr/local/mysql8/data

 socket=/tmp/mysql.sock

 character-set-server=utf8

 default_authentication_plugin=mysql_native_password

 port=3306


7.创建MySQL服务

添加Mysql到系统服务(当前目录应为:/usr/local/mysql8)


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

chmod +x /etc/init.d/mysql

chkconfig --add mysql


检查服务是否生效


在这里插入图片描述


chkconfig --list mysql


二、启动服务调整配置

1.启动服务

启动服务


在这里插入图片描述


service mysql start


这里可能出现的问题:


解决办法:


mkdir /var/log/mariadb     

touch /var/log/mariadb/mariadb.log


# mysql 用户和用户对目录进行授权

chown -R mysql:mysql /var/log/mariadb/


# 再次启动mysql服务,每次开机后,要手动启动一下

/opt/mysql/mysql-8.0/support-files/mysql.server start


在这里插入图片描述


查看状态


service mysql status


upfile.jpg


2.修改密码

登录mysql可能会出现如下错误

在这里插入图片描述


解决办法:


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


登录mysql


mysql -uroot -p


输入或粘贴之前记录的临时密码并回车:7Jl44eCeJ!.u


修改密码


ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';


# 例如

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


3.添加远程登录配置

create user root@'%' identified by '新密码';

grant all privileges on *.* to root@'%' with grant option;


# 例如

create user root@'%' identified by '654321';

grant all privileges on *.* to root@'%' with grant option;


root表示想要被连接的数据库的用户名


其中“%”表示允许所有机器能访问root用户


刷新权限


flush privileges;


查看设置结果


use mysql;

select host,user,plugin,authentication_string from user;


在这里插入图片描述


4.开放防火墙3306端口

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


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


firewall-cmd --add-port=3306/tcp --permanent


firewall-cmd --reload


查看防火墙端口开放状态


firewall-cmd --list-all


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


5.添加全局环境变量

编辑 / etc/profile 文件


vi /etc/profile


在文件底部添加,保存退出


export PATH=$PATH:/opt/mysql/mysql-8.0/bin:/opt/mysql/mysql-8.0/lib

export PATH


刷新配置


source /etc/profile


Navicat 连接mysql



免责声明:服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
IPv4 © 2005-2025 库目书 版权所有 | kumushu.com .All Rights Reserved
黑ICP备2022003236号-1