当前位置: 代码网 > it编程>数据库>Mysql > linux用rpm包方式安装MySQL8全过程

linux用rpm包方式安装MySQL8全过程

2025年10月14日 Mysql 我要评论
一. linux操作系统mysql安装包分类linux操作系统mysql安装包分为以下3类rpm: rpm软件包是一种在linux平台下的安装文件,通过安装命令可以很方便地安装与卸载。mysql的rp

一. linux操作系统mysql安装包分类

linux操作系统mysql安装包分为以下3类

  • rpm: rpm软件包是一种在linux平台下的安装文件,通过安装命令可以很方便地安装与卸载。mysql的rpm安装文件包分为两个:服务器和客户端,需要分别下载和安装或者下载整包,分别安装。
  • generic binaries: 二进制软件包,经过编译生成的二进制文件软件包。
  • 源码包:mysql数据库的源代码,用户需要自己编译成二进制文件之后才能安装

二. 系统环境

virtualbox虚拟软件安装: redhat enterprise linux 7.2

三. mysql官网下载软件包

可以直接到 mysql官网 选择对应版本进行下载。

或下载页地址:https://downloads.mysql.com/archives/community/

四. mysql8的rpm软包安装步骤

1. 上传到tmp目录

上传已下载mysql的rpm软件包到安装的linux服务器上。

我使用的winscp软件工具。

2. 解压下载的tar包

命令:tar -xvf mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar

  • mysql-community-client-8.0.20-1.el7.x86_64.rpm 是客户端的安装包
  • mysql-community-server-8.0.20-1.el7.x86_64.rpm是服务端的安装包
  • mysql-community-devel-8.0.20-1.el7.x86_64.rpm是包含开发用的库头文件安装包
  • mysql-community-test-8.0.20-1.el7.x86_64.rpm是一些测试的安装包
  • mysql-community-embedded-compat-8.0.20-1.el7.x86_64.rpm是嵌入式mysql的安装包

一般情况下,只需要安装client和server两个包,如果需要c/c++ mysql相关开发,请安装devel。

3. 切换到root

命令:su – root

4. 查检是否已安装mysql

命令:rpm -qa|grep -i mysql

如果存在,确认不需要后卸载,

命令:rpm -ev mysql_info(上面查出来的信息)

5. 安装mysql 8 服务端

命令:rpm -ivh /tmp/mysql-community-server-8.0.20-1.el7.x86_64.rpm

弹出警告:

warning: /tmp/mysql-community-server-8.0.20-1.el7.x86_64.rpm: header v3 dsa/sha1 signature, key id 5072e1f5: nokey

原因:这是由于yum安装了旧版本的gpg keys造成的

解决办法:后面加上 --force –nodeps

  • –force就是强制安装
  • –nodeps就是安装时不检查依赖关系

命令:

rpm -ivh /tmp/mysql-community-server-8.0.20-1.el7.x86_64.rpm --force --nodeps

6. 启动服务

命令:service mysqld start

service 是用来管理linux服务的

service start/stop/restart/status 启动服务/停止服务/重启服务/查看服务状态

7. 安装mysql 8 客户端

命令:rpm -ivh mysql-community-client-8.0.20-1.el7.x86_64.rpm --force --nodeps

8. 安装完成之后,使用命令行登录

命令:mysql -u root -p

说明:mysql5.6是密码为空直接进入数据库的,但是mysql5.7之后就需要初始密码

从安装日志获取初始密码:

命令:cat /var/log/mysqld.log | grep password

再次执行命令:mysql -u root -p 回车,输入查到的初始密码,登录成功

9. 必须修改初始密码

命令:use mysql;

提示必须修改密码使用alter user语句。

密码有最基本的规则校验,默认如下:

validate_password.policy默认是1,即medium,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符

查看密码规范:

show variables like ‘validate_password%';

validate_password.length(密码长度)参数默认为8

可以直接按照规则设置密码,如果想设置简单密码,临时修改规则校验

mysql8.0设置策略和长度设置:

set global validate_password.policy=0;
set global validate_password.length=1;

修改密码

alter user ‘root'@‘localhost' identified by ‘123456';

查看当前root用户相关信息,在mysql数据库的user表中

select host, user, authentication_string, plugin from mysql.user;

  • host:允许用户登录的ip‘位置’%表示可以远程;
  • user:当前数据库的用户名;
  • authentication_string:用户密码;在mysql 5.7.9以后废弃了password字段和password()函数;
  • plugin: 密码加密方式

mysql8另外一种方式登录系统修改密码:

  1. 修改配置文件成登录跳过密码校验
  2. 无密码登录后,按上述操作修改密码
  3. 还原配置文件,重启数据库服务

五. 创建远程用户

说明:root用户现在是localhost访问,是最大权限用户,所以我们创建普通用户,赋与相应的权限的远程用户。

1. 创建数据库:test

create database test default character set utf8mb4 collate utf8mb4_bin;

2. 创建任意ip访问的远程用户:test_admin

create user ‘test_admin'@‘%' identified by ‘123456';

3. 授予权限

授予test_admin远程用户test数据库的创建、修改、删除和表的增删改查的权限

grant create,alter,drop,select,insert,update,delete on test.* to test_admin@‘%';

查看test_admin权限:

show grants for test_admin;

刷新服务使配置生效:

flush privileges;

4. 客户端登录

virtualbox虚拟机环境:关闭防火墙或防火墙开启mysql默认3306端口。

客户端使用创建的test_admin用户登录,只有test数据库权限。

六. mysql安装目录说明

打开mysql8安装后默认配置文件:

命令:cat /etc/my.cnf

  • /var/lib/mysql:日志文件和数据库
  • /var/log/:服务器日志
  • /var/run/mysqld/mysqld.pid: mysql服务进程

其他目录说明:

  • /usr/bin/: 客户端和脚本,如:mysql,mysqladmin等命令
  • /usr/sbin/: mysqld服务器,如:mysqld

七. 配置mysql开机启动

查看mysql是不是开机自启,可以执行命令查看开机自启列表

查看mysqld开机启动:systemctl list-unit-files|grep mysqld

如果未开启:systemctl enable mysqld

再次查看:systemctl list-unit-files|grep mysqld

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com