Linux-------yum安装MySQL

本文介绍在CentOS系统中通过yum源安装MySQL数据库的方法,包括配置yum源、安装MySQL服务、初始化服务器及密码设置等步骤,并提供解决常见问题的方案。

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

Linux之yum安装MySQL

部署MySQL数据库有多种部署方式,常用的部署方式就有三种:yum安装、rpm安装以及编译安装。每一种安装方式都有自己的优势,那么企业当中通常情况下采用的是rpm和二进制安装的方式。

数据库官网下载地址

yum部署方式
从CentOS 7.0发布以来,yum源中开始使用Mariadb来代替MySQL的安装(这里什么是mariadb,和mysql有什么区别,有兴趣的小伙伴可以自行查阅)。即使你输入的是yum install -y mysql , 显示的也是Mariadb的安装内容。如果想安装Mysql就必须使用Mysql官方的yum源。

1、编写yum源配置文件

#配置好yum源,包括epel源
	1. curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
	2. wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
	3. yum -y install vim wget

使用官方yum仓库
官网下载链接
在这里插入图片描述
在这里插入图片描述

wget https://dev.mysql.com/get/mysql80-community-release-el7-4.noarch.rpm(复制下来的链接)

在这里插入图片描述

yum install mysql80-community-release-el7-4.noarch.rpm

2、生成yum源缓存

每次当我们编写了,都需要生成yum缓存,以免安装错误。

yum makecache

3、检查安装的yum源是否存在

	1. yum repolist enabled | grep mysql
	
选择默认安装的版本  默认的是8.0 版本
安装 YUM 管理工具包,此包提供了 yum-config-manager 命令工具
	1. yum -y install yum-utils
	2. yum-config-manager --disable mysql80-community	
	3. yum-config-manager --enable mysql57-community
	4. yum repolist enabled | grep mysql

在这里插入图片描述

4、安装MySQL服务

yum install -y  mysql-community-server  然后等待安装即可

这一步可能会报错:GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
出现上述提示原因是Mysql的GPG升级了,需要重新获取
在这里插入图片描述

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

执行过后,再次重复上一步安装即可

5、启动MySQL服务

启动mysqld 服务端
systemctl start mysqld
查看是否启动
systemctl status mysqld

在这里插入图片描述
6、初始化
MySQL服务器初始化(从MySQL 5.7开始)

在 MySQL 服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:

  1. MySQL 服务器已初始化。
  2. 在数据目录中生成SSL证书和密钥文件。
  3. 安装并启用该 validate_password 插件。
  4. 将创建一个超级用户 帐户’root’@‘localhost’。并会设置超级用户的密码,将其存储在错误日志文件/var/log/mysqld.log中。
grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述
7、尝试连接并修改默认密码

mysql -uroot -p'goUaahghs8?r'

在这里插入图片描述

# 出现以下错误的原因是需要修改初始化密码
1. show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

2. alter user   root@localhost   identified  by  '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

#太过简单的密码会失败,因为不满足密码复杂度的要求

# 修改密码
1. alter user   root@localhost   identified  by  'MySQL@666';
Query OK, 0 rows affected (0.00 sec)
# 刷新权限
2.  FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

# 要设置比较简单的密码就需要取消密码复杂度,编辑 /etc/my.cnf配置文件,[mysqld]配置块儿中添加如下内容(企业生成环境不建议使用这种配置)
plugin-load=validate_password.so 
validate-password=OFF

8、远程连接
远程登录还需要授权远程登录
Mysql默认不允许远程登录,我们需要设置关闭selinux或者防火墙,不关防火墙就开放3306端口;

# 允许远程链接
1. update user set user.Host='%' where user.User='root';
2.flush privileges;
 Query OK, 0 rows affected, 1 warning (0.00 sec)

添加开放3306端口的iptables规则

iptables -t filter -I INPUT -p tcp --dport 3306 -j ACCEPT

卸载已经安装的MySQL

//rpm包安装方式卸载
查包名:rpm -qa|grep -i mysql
删除命令:rpm -e –nodeps 包名
 
//yum安装方式下载
1.查看已安装的mysql
命令:rpm -qa | grep -i mysql
2.卸载mysql
命令:yum remove mysql-community-server-5.6.36-2.el7.x86_64
查看mysql的其它依赖:rpm -qa | grep -i mysql
 
//卸载依赖
yum remove mysql-libs
yum remove mysql-server
yum remove perl-DBD-MySQL
yum remove mysql
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值