Linux安装MySQL8.0(超详细图文)

2024-06-04 8750阅读

0.查看Linux发行版

我的是: CentOS8

Linux安装MySQL8.0(超详细图文) 第1张

1.卸载MySQL

1.1.检查是否安装

rpm -qa | grep mysql

1.2.如已安装mysql,则删除

rpm -e --nodeps +包名

1.3.再次检查安装包是否全部删除

1.4.搜索mysql文件夹

find / -name mysql

1.5.若有mysql文件夹,则删除

rm -rf +包名

1.6.再次检查文件夹是否全部删除

2.下载MySQL安装包

官方网址:https://downloads.mysql.com/archives/community/

Linux安装MySQL8.0(超详细图文) 第2张

2.1.上传到服务器目录

Linux安装MySQL8.0(超详细图文) 第3张

2.2.解压

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

文件夹重命名为mysql,移动位置并重新命名

mv mysql-8.0.20-linux-glibc2.12-x86_64 /usr/local/mysq

Linux安装MySQL8.0(超详细图文) 第4张

Linux安装MySQL8.0(超详细图文) 第5张

2.3.创建mysql用户组和用户并修改权限

groupadd mysql 	#创建一个新的用户组,名为“mysql”
useradd -r -g mysql mysql 	#创建一个新的用户,也名为“mysql”

Linux安装MySQL8.0(超详细图文) 第6张

2.4.创建目录并赋予权限

mkdir -p  /data/mysql              #创建目录
chown mysql:mysql -R /data/mysql   #赋予权限

Linux安装MySQL8.0(超详细图文) 第7张

2.5.配置my.cnf文件

新增my.cnf文件(没有就手动新建)

Linux安装MySQL8.0(超详细图文) 第8张

配置内容如下:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

Linux安装MySQL8.0(超详细图文) 第9张

Linux安装MySQL8.0(超详细图文) 第10张

2.6.初始化数据库

2.6.1.进入bin目录下

cd usr/local/mysql/bin/

2.6.2.初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

Linux安装MySQL8.0(超详细图文) 第11张

这个错误信息表明,mysqld 进程在尝试加载 libaio.so.1 这个共享库文件时失败了,因为系统找不到这个文件。libaio(异步I/O库)是MySQL在某些操作系统上需要的依赖库之一。

要解决这个问题,你需要安装 libaio 库。这通常可以通过你的操作系统的包管理器来完成。以下是一些常见Linux发行版的安装命令:

sudo yum install libaio

2.6.3.查看密码

cat /data/mysql/mysql.err

Linux安装MySQL8.0(超详细图文) 第12张

2.6.4.将mysql.server放置到/etc/init.d/mysql中

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

Linux安装MySQL8.0(超详细图文) 第13张

将 mysql.server 脚本放置到 /etc/init.d/mysql 目录中的主要作用是使得你可以使用标准的系统服务管理工具来管理 MySQL 服务。在 Linux 系统中,/etc/init.d/ 目录存放的是一系列系统服务的管理(启动、停止等)脚本。

mysql.server 是一个官方针对 Unix 和类 Unix 系统二进制版本安装包中包含的脚本,它主要用于启动、查看和停止 mysqld 进程服务。当 mysql.server 脚本被放置在 /etc/init.d/mysql 目录中后,你可以使用 service 命令来管理 MySQL 服务,例如:

service mysql start:启动 MySQL 服务。

service mysql stop:停止 MySQL 服务。

service mysql restart:重启 MySQL 服务。

这样,你就可以很方便地通过标准的系统服务管理工具来管理 MySQL 服务了。不过,在实际操作中,你还需要确保 MySQL 的配置文件(如 my.cnf)已经正确设置,并且 MySQL 的数据目录和其他相关目录的权限和所有权设置也是正确的。

2.6.5.启动

#启动
service mysql start
#查询
ps -ef|grep mysql

Linux安装MySQL8.0(超详细图文) 第14张

2.6.6.设置mysql环境变量

export PATH=$PATH:/usr/local/mysql/bin

Linux安装MySQL8.0(超详细图文) 第15张

/etc/profile 在最后添加一行:

export PATH=$PATH:/usr/local/mysql/bin

Linux安装MySQL8.0(超详细图文) 第16张

刷新配置:source /etc/profile

Linux安装MySQL8.0(超详细图文) 第17张

检查环境,确认 MySQL 及其工具是否已经安装在你的系统上

whereis mysql;
whereis mysqldump;

Linux安装MySQL8.0(超详细图文) 第18张

3.配置MySQL

3.1.成功进入

mysql -u root -p

Linux安装MySQL8.0(超详细图文) 第19张

3.2.设置密码

设置

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

刷新

flush privileges;

Linux安装MySQL8.0(超详细图文) 第20张

以我被黑掉数据库而已,一定要设置复杂点的密码啊!!!(为什么重新安装因为就是被黑掉了啊)

Linux安装MySQL8.0(超详细图文) 第21张

3.3.配置远程连接

3.3.1.设置权限

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

Linux安装MySQL8.0(超详细图文) 第22张

3.3.2.开放3306端口 & 服务器入栈规则3306端口(服务器控制台设置)

# 管理防火墙
firewall-cmd --state                   # 查看防火墙状态
systemctl start firewalld              # 开启防火墙
systemctl stop firewalld.service       # 停止防火墙
systemctl disable firewalld.service    # 禁止防火墙开机启动
systemctl restart firewalld.service    # 重启防火墙 
# 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 开放端口之后 需要重新启动防火墙
systemctl restart firewalld.service    # 重启防火墙 

Linux安装MySQL8.0(超详细图文) 第23张

4.远程连接成功

Linux安装MySQL8.0(超详细图文) 第24张


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]