Linux系统rpm安装MySQL详细操作步骤

安装方式介绍

Linux 系统中,安装软件的方式主要有四种,这四种安装方式的特点如下:

安装方式

特点

二进制发布包安装

软件已经针对具体平台编译打包发布,只要解压,修改配置即可

rpm安装

软件已经按照redhat的包管理规范进行打包,使用rpm命令进行安装(不能自行解决库依赖问题)

yum安装

一种在线软件安装方式,本质上还是rpm安装,自动下载安装包并安装,安装过程中自动解决库依赖问题(安装过程需要联网)

源码编译安装

软件以源码工程的形式发布,需要自己编译打包

本次采用rpm安装 方式进行MySQL的安装

RPM:全称为 Red-Hat Package ManagerRPM软件包管理器,是红帽Linux 用于管理和安装软件的工具

准备工作

版本说明

系统版本如下:

MySQL版本如下:

上传安装包

Mysql的rpm安装包上传到系统**/root**目录下

检测并卸载原有数据库

在安装MySQL数据库 之前,我们需要把原有的MySQL数据库 或者MariaDB数据库 删除掉,否则新的数据库安装可能会出现问题(出现冲突)。

使用rpm -qa 相关指令可以查询出当前系统中已安装的软件包

复制代码
rpm -qa							查询当前系统中安装的所有软件
rpm -qa | grep mysql			查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mariadb			查询当前系统中安装的名称带mariadb的软件

经查询发现系统已安装了MariaDB数据库

使用命令将已安装的MariaDB数据库删除,

复制代码
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

再次使用rpm -qa | grep mariadb 命令已经无法查询到MariaDB数据库

解压安装包

首先创建一个**/usr/local/mysql目录作为MySQL**的安装目录

使用命令将mysql安装包解压到**/usr/local/mysql**目录

复制代码
tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql

进入**/usr/local/mysql目录下,查看一共有 6MySQL**的安装包

安装rpm包

复制代码
rpm -ivh 包名
?i?:表示安装(install)
?v?:表示详细信息(verbose)
?h?:表示显示进度条(hash)

使用如下命令将6MySQL包逐个安装

复制代码
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
yum -y install net-tools
yum -y install numactl
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm

依赖检测失败报错处理

在安装最后一个rpmmysql-community-server-5.7.25-1.el7.x86_64.rpm 的时候出现图下所示报错依赖检测失败

这时可以在安装命令后面加上**--force --nodeps**,再次进行安装

复制代码
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm --force --nodeps
--force:强制安装
--nodeps:安装时不检查依赖关系

启用MySQL服务

MySQL 安装完成之后,会自动注册 为系统的服务,服务名为mysqld 。现在用systemctl status mysqld 命令查看到服务还未启动

systemctl start mysqld 命令使服务启动 ,再次查看服务已经处于running状态

使用systemctl enable mysqld 命令让服务可以开机自启

使用netstat -alptu | grep mysql 命令和ps -ef | grep mysql 命令查看当前mysql运行情况

复制代码
netstat -alptu | grep mysql    查看当前包含mysql的网络连接
ps -ef | grep mysql            查看当前包含mysql的进程

登录MySQL

查阅临时密码

安装好MySQL 之后,MySQL 第一次启动时,会自动生成root 用户访问密码,并且输出在MySQL 的日志文件 /var/log/mysqld.log 中。使用cat /var/log/mysqld.log | grep password 命令来查阅密码

复制代码
cat /var/log/mysqld.log | grep password

登录

获取MySQL临时密码 后,使用命令mysql -uroot -p ,然后输入密码 ,登录MySQL

配置MySQL

设置密码及密码策略

进入MySQL 之后,输入如下命令(生产用的话建议密码设置复杂一点,本次演示密码用1234便于记忆)

复制代码
set global validate_password_length=4;			设置密码长度最少位数为4
set global validate_password_policy=LOW;		设置密码安全等级低,便于密码可以修改成1234
set password = password('1234');			    设置密码为1234

设置允许root用户远程登录

复制代码
use mysql;  #进入mysql库
select host,user from user;  #查看用户权限表
update user set host = '%' where user = 'root';  #设置允许root用户远程登录(% 代表所有)
FLUSH PRIVILEGES;  # 刷新数据库配置

至此,MySQL安装配置 均已完毕。用exit 命令退出数据库即可。

远程测试连接数据库

在其他电脑,打开DBeaver 软件,如图下所示,点击图标新建数据库连接

选择MySQL ,然后下一步

输入服务器地址root密码 ,点击测试连接 ,出现图下所示提示连接超时的报错

用命令行ping 服务器的地址是通的

出现上述情况的原因可能是未开放 服务器的3306端口导致,尝试开启试试

服务器开放3306端口

使用以下命令开放3306端口

复制代码
firewall-cmd --permanent --add-port=3306/tcp        开放3306端口
firewall-cmd --reload        重新加载防火墙以应用更改

firewall-cmd --permanent --remove-port=3306/tcp    关闭3306端口
firewall-cmd --reload        重新加载防火墙以应用更改

开放3306 端口后,发现DBeaver 软件可以连接到MySQL数据库了~

接下来就可以用DBeaver软件对数据库做相关操作了~

相关推荐
CDN360几秒前
节点智能调度实操:解决出海区域访问快慢不均、节点拥堵、跨洋延迟高,CDN 全网择优落地方案
运维·服务器·网络
夜雪一千38 分钟前
MySQL 各种数据同步方案全梳理:从简单复制到异构同步实战
数据库·mysql
ruleslol1 小时前
MySQL: OR查询为什么会导致索引失效
mysql
白清羽1 小时前
7.3系统安装docker
运维·docker·容器
翼龙云_cloud2 小时前
阿里云国际渠道代理商:如何在ECS上部署Flask应用?
运维·数据库·阿里云·flask·云计算
进阶的小木桩2 小时前
mysql 安装问题解决方案记录
数据库·mysql
GGG7663 小时前
Python 运维自动化:psutil+IPy 系统与网络信息采集深度实战
运维·python·云原生·pip
可乐鸡翅yeah_3 小时前
个人 / 外包流媒体项目交付实战,M3U8 验收与问题闭环完整工作流
运维·网络·python·低代码·django·m3u8·在线播放
dazhong20123 小时前
Docker 入门篇(八)-- CentOS7 安装 MySQL 8
mysql·docker·容器
St_rive3 小时前
移动端自动化环境搭建与准备
运维·自动化