Centos7环境下安装MySQL8(基于tar.gz压缩文件安装)

目录

1、检查环境中是否已有mariadb文件

2、检查是否安装过MySQL

3、安装MySQL依赖libaio包libaio

4、下载MySQL安装包

5、解压压缩文件

6、MySQL安装目录赋予访问权限并创建MySQL组和用户

7、修改MySQL配置文件

8、安装MySQL并启动MySQL服务

9、添加MySQL到系统进程

10、设置MySQL服务自启动

11、修改root用户原始密码

12、设置允许远程登陆并重启

13、防火墙开发3306端口

14、客户端测试连接并创建数据库

1、检查环境中是否已有mariadb文件
在CentOS中默认安装MariaDB,它是MySQL的分支,在此之前,我们可以先通过以下指令查询:

rpm -qa | grep -i mariadb
如果有查到列表,就通过以下指令卸载,此处有几条就对应的使用几个rpm -e --nodeps:

[root@centos7 opt]# rpm -e --nodeps xxx
[root@centos7 opt]# rpm -e --nodeps xxx
本机因为之前已卸载,所以省略。

2、检查是否安装过MySQL
此处如果之前没有安装过,可以直接省略,如果安装过,可通过一下直接进行移除:

yum -y remove mysql
3、安装MySQL依赖libaio包libaio
libaio是Linux下的一个异步非阻塞接口,它提供了以异步非阻塞方式来读写文件的方式,读写效率比较高。

yum install libaio


4、下载MySQL安装包
可以通过MySQL官网去进行下载,本文也提供了一个百度网盘的下载渠道:

网盘地址:百度网盘 请输入提取码

提取码:sqld

提取之后,通过xftp等客户端工具将提取的文件上传到Linux系统中的/usr/local目录下,本文后续的安装也会安装再该目录下。

5、解压压缩文件
进入/usr/local目录下,查看当前目录文件:

可以看到,当前压缩包文件已经再目录中,通过下方指令将压缩包文件解压:

tar -zxvf mysql-8.0.21-el7-x86_64.tar.gz
 解压完成后再次查看/usr/local列表,多出了一个MySQL的解压文件:

此时,这个文件夹名称比较长,记起来不方便,我们可以修改文件夹名称,修改完成后local文件夹中多了一个mysql8的文件夹:

mv mysql-8.0.21-el7-x86_64 mysql8


6、MySQL安装目录赋予访问权限并创建MySQL组和用户
进入mysql8目录下,通过以下指令修改mysql8的访问权限,

-R是目录下所有文件,777就是高权限(读、写、执行)

chmod -R 777 /usr/local/mysql8 意思就是将mysql8目录下所有文件都给予最高权限

chmod -R 777 /usr/local/mysql8/
创建mysql用户组:

groupadd mysql
创建mysql用户,-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限:

useradd -r -g mysql -s /bin/false mysql
添加用户mysql到组mysql中:

chown -R mysql:mysql ./
7、修改MySQL配置文件
在mysql8目录中新建文件夹mysqldb,这个文件夹在mysql的配置中将会用到,和windows系统中通过解压安装的方式的意义是一样的:

 通过以下指令修改mysql配置文件:

vi /etc/my.cnf
在配置文件中输入如下内容:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql8
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql8/mysqldb
# 允许最大连接数
max_connections=10000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password

lower_case_table_names=1
sql_mode = NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
8、安装MySQL并启动MySQL服务
进入mysql8目录的bin目录下,执行以下指令安装mysql,完成后会生成一个随机密码,本次生成的密码是LVhFH1Qbax_p,这个密码第一次登陆的时候需要用到。

 ./mysqld --initialize --console


启动mysql服务:

mysql.server服务在安装目录的support-files目录下,执行以下指令进行启动:

./mysql.server start


此处反馈的结果是启动错误,我们需要执行下方命令给mysql安装目录重新赋予一下权限,然后再次执行

chmod -R 777 /usr/local/mysql8
./mysql.server start


9、添加MySQL到系统进程
执行下方指令添加mysql到系统进程:

cp /usr/local/mysql8/support-files/mysql.server /etc/init.d/mysqld
10、设置MySQL服务自启动
执行下方两行指令实现mysql服务自启动:

chmod +x /etc/init.d/mysqld
systemctl enable mysqld


11、修改root用户原始密码
修改密码前需要我们先登陆mysql,在mysql安装目录的bin目录下进行登陆, 在password后输入我们之前记录的初始随机密码。

 登陆成功后,执行下方指令修改密码,BY后面的字符串就是新密码,自己选择好记又安全的。

alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'xxxxxxxx';


12、设置允许远程登陆并重启
执行以下指令设置允许远程登陆,最终我们肯定要通过Navicat等客户端工具来连接MySQL的

use mysql;
update user set user.Host='%'where user.User='root';
flush privileges;
quit;


上步操作后,我们执行了quit退出了mysql,现在重新启动服务。

systemctl restart mysql
 
service mysql restart


通过以下指令查看MySQL服务是否启动成功:

systemctl status mysql


13、防火墙开发3306端口
执行下方执行查看防火墙端口开放列表,本机之前开放过3306端口,所以列表中存储在,如果列表中没有3306端口,请继续往下看:

firewall-cmd --list-all

 防火墙开放3306端口指令,--permanent为永久生效,如果没有此参数,服务器重启后配置失效:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
 
firewall-cmd --reload
14、客户端测试连接并创建数据库
客户端工具使用的是Navicat,连接结果如下:

 在Navicat中创建新数据库,并在mysql命令中查看新数据库:

 至此,Centos7环境下安装MySQL8全部完成。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值