CenOS部署MySQL

这篇博客详细介绍了在CentOS系统中如何部署和配置MySQL。首先从MySQL官网下载并使用rz上传tar包,然后解压并安装MySQL。接着设置初始密码策略,确保密码安全。进一步修改配置文件,将MySQL字符集更改为UTF-8,并开启root用户的远程登录权限。最后,打开3306端口,完成MySQL的远程访问设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CenOS部署MySQL

前言

之前我们部署了jdk和Tomcat,这篇博客将部署MySQL。

首先我们需要准备好MySQL的tar包:
在这里插入图片描述

可以去MySQL的官网下载

部署MySQL

1、先检查有没有安装mariadb(mariadb是系统自带的db)

rpm -qa|grep mariadb

在这里插入图片描述
把它给卸载

rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

再查看mariadb

在这里插入图片描述
安装libaio、perl、net-tools库

yum -y install libaio perl net-tools

在这里插入图片描述
回到我们之前存放jdk和Tomcat的mytools路径下,将准备好的mysql的tar包使用rz上传

在这里插入图片描述
建个目录并将安装文件解压到此目录

//新建文件夹存放解压文件
mkdir /usr/local/mysql-5.7.30
//返回到存放压缩文件的位置
cd /usr/local/mytools
//将MySQL解压到指定路径
tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql-5.7.30

MySQL解压后的文件都是rpm文件

在这里插入图片描述
接下来进入到MySQL文件夹中:

cd /usr/local/mysql-5.7.30

开始安装

-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度

rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm

在这里插入图片描述
启动服务

systemctl start mysqld

注1:安装完成后的服务名叫mysqld

查看服务

systemctl status mysqld

可以看到MySQL的服务已经启动

在这里插入图片描述
查询生成的临时密码

grep "password" /var/log/mysqld.log

在这里插入图片描述
登录mysql

mysql -u root -p

执行这条命令后它会让我们输入密码我们将之前查询出来的密码粘贴上去即可登陆成功(密码是看不到输没输入的):

在这里插入图片描述
然后我们查看初始密码策略

SHOW VARIABLES LIKE 'validate_password%';

随后我们设置任何密码都可以通过,因为我们设置的密码如果太简单默认是不通过的

set global validate_password_policy=0;

返回ok表示通过
在这里插入图片描述
我们再设置密码长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)

set global validate_password_length=4;

返回ok表示设置成功
在这里插入图片描述
更改密码:

set password = password("1234");

在这里插入图片描述
输入后使修改生效还需要下面的语句:

FLUSH PRIVILEGES;

可以退出,试试用新密码重新登录(Ctrl+z)

quit

使用新密码登陆成功:

在这里插入图片描述
然后我们需要配置MySQL的字符编码:

登陆mysql之后,可以通过如下命令查看mysql的字符集:

show variables like 'chara%';

在这里插入图片描述
可以看到有一些的字符编码不是utf-8,我们退出MySQL修改配置文件设置 MySQL 字符集为 UTF-8

打开配置文件

vim /etc/my.cnf

在这里插入图片描述
在mysqld最下面加入二行代码

character-set-server=utf8
collation-server=utf8_general_ci

在这里插入图片描述

然后添加client标签

[client]
default-character-set=utf8

在这里插入图片描述
然后esc保存再:wq退出

然后我们使用命令重启服务:

systemctl restart mysqld

再查询字符编码就已经改变了!
在这里插入图片描述
但是我们还有一个问题

CenOS7下无法远程连接MySQL数据库

数据库没有授权,允许以root身份远程登录mysql

重复修改密码的三条命令:

SHOW VARIABLES LIKE 'validate_password%';
set global validate_password_policy=0;
set global validate_password_length=4;

为什么需要重复执行?因为不执行会报密码长度过短的错

在这里插入图片描述
执行完三条代码就可以执行授权的命令

在这里插入图片描述
然后进行数据库的刷新

FLUSH PRIVILEGES;

在这里插入图片描述
到这一步就意味着我们把MySQL的root的权限打开了!

我们还需要打开3306的端口

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

在这里插入图片描述
我们再刷新一下

firewall-cmd --reload

在这里插入图片描述
我们查询 一下所有打开的端口:

firewall-cmd --list-port

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值