Centos8/linux下载、安装、配置、连接MySQL5.7(rpm方式)

news2024/11/15 10:44:01

目录

问题现象:

问题分析:

解决方法:

下载:

安装:

配置:

连接:

拓展


问题现象:

        今天在使用Centos8 安装MySQL5.7的rpm包时,出现如下报错:

        仓库 "MySQL 5.7 Community Server" 的 GPG 公钥已安装,但是不适用于此软件包。

        最终问题解决了,但还是把Centos8/linux下载、安装、配置、启动、连接MySQL(rpm方式)的整个步骤总结一下,希望对小伙伴们有所帮助。


问题分析:

1、首先是使用wget命令,下载mysql服务的rpm包【这里以经典的mysql5.7版本为例】:

        wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

        至此mysql服务的下载就完成了。

2、然后是本地安装localhostinstall命令:

        yum localinstall mysql57-community-release-el7-8.noarch.rpm

3、安装后查询:

        yum repolist enabled | grep "mysql.*-community.*"

 4、然后启动 mysql服务失败:

        systemctl start mysqld

5、然后上网看了是需要安装mysql-community-server:

         yum install mysql-community-server

 6、不成功,网上资料说要先禁用mysql模块:

        sudo yum module disable mysql

7、然后再次安装mysql-community-server:

         sudo yum -y install mysql-community-server

8、出现gpg公钥报错【仓库 “MySQL 5.7 Community Server“ 的 GPG 公钥已安装,但是不适用于此软件包】:

9、查询资料,发现要先修改公钥url:

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

10、再次安装mysql-community-server成功: 

        sudo yum -y install mysql-community-server

  11、启动mysql服务成功:

        systemctl start mysqld

12、查看mysql服务状态:

        systemctl status mysqld

        至此mysql服务的安装就完成了。mysql服务可以正常启动。

13、查看mysql日志,获取root用户的初始密码:

        grep 'temporary password' /var/log/mysqld.log

 14、登录账号,并修改账号密码(这里我修改为123456):

        mysql -uroot -p

        输入上一步中获取的初始密码,登录后修改密码:

        ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

        报错:密码不符合当前策略【要带字母、数字、符号】。这是因为安装的mysql中,自带了密码校验插件;要解决这个问题,就需要关闭该插件。步骤如下:

15、先查找文件my.cnf所在路径:
        find / -name 'my.cnf'


16、关闭密码校验插件,有以下2种方案供参考:
    16.1、在文件my.cnf末尾添加关闭密码校验的配置(这里我选择这种方案):
        validate-password=OFF

        保存退出。
    16.2、如果想卸载自带的密码校验插件,也可以执行:
        uninstall plugin validate_password;
17、重启mysql服务
        systemctl restart mysqld
18、再次修改账号密码
        ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

19、不过有些公司或项目规定是不允许操作和使用root账户的,因此这里我再提一下如何创建用户和授权:

        19.1 创建用户:

        create user '用户名'@'ip地址' identified by '密码';  

        19.2 全授权:

        grant all privileges on *.* to '用户名'@'ip地址';

         19.3 :刷新权限:

        flush privileges; 

        19.4、这里再提供一种创建用户并全授权的sql:

        GRANT ALL PRIVILEGES ON *.* TO '用户名'@'ip地址' IDENTIFIED BY '密码' WITH GRANT OPTION;

        19.5、如果只想授权部分功能(如:INSERT、UPDATE、DELETE、SELECT、CREATE、EXECUTE):

        GRANT INSERT,UPDATE,DELETE,SELECT,CREATE,EXECUTE ON *.* to '用户名'@'ip地址';

# 查看当前已有用户信息
select User,authentication_string,Host from user;

#查看用户权限信息
SHOW GRANTS FOR '用户名'@'ip地址';

        如果权限配置完,没有生效的话,建议重启一下mysql服务:

        systemctl restart mysqld

        至此mysql服务的配置就完成了。mysql服务可以正常使用,但还不能被外部连接访问。

20、查看mysql服务的端口:

        ps -ef|grep mysqld

        netstat -nap|grep mysqld服务的进程号

        可以看到mysql服务使用的是3306端口。

21、查看防火墙状态:

        sudo firewall-cmd --state

22、如果防火墙在运行中,那就需要查看3306端口是否被开放:

        sudo firewall-cmd --query-port=3306/tcp

23、如果3306端口未开放,则需要开放该端口并重启防火墙:

        sudo firewall-cmd --zone=public --add-port=端口号/tcp --permanent 

        sudo firewall-cmd --reload

24、外界使用Navicat或dbeaver等数据库工具来连接服务器上的mysql数据库:

         至此mysql的连接就完成了。


解决方法:

下载:

1、首先是使用wget命令,下载rpm包:

        wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

安装:

2、然后是本地安装localhostinstall命令:

        yum localinstall mysql57-community-release-el7-8.noarch.rpm

3、安装后查询:

        yum repolist enabled | grep "mysql.*-community.*"

 4、禁用mysql模块:

        sudo yum module disable mysql

5、修改公钥url:

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

6、安装mysql-community-server: 

        sudo yum -y install mysql-community-server

7、启动mysql服务成功:

        systemctl start mysqld

8、查看mysql服务状态:

        systemctl status mysqld

配置:

9、查找文件my.cnf所在路径:
        find / -name 'my.cnf'

10、在文件my.cnf末尾添加关闭密码校验的配置,保存退出:
        validate-password=OFF

11、重启mysql服务
        systemctl restart mysqld

12、根据mysqld.log文件查看初始密码:

        grep 'temporary password' /var/log/mysqld.log

 13、登录账号,并修改账号密码(这里我修改为123456):

        mysql -uroot -p

        输入上一步中获取的初始密码,登录。

14、修改密码:

        GRANT ALL PRIVILEGES ON *.* TO '用户名'@'ip地址' IDENTIFIED BY '密码' WITH GRANT OPTION;

15、退出mysql并重启mysql服务

        exit

        systemctl restart mysqld

16、查看mysql服务的端口:

        ps -ef|grep mysqld

        netstat -nap|grep mysqld服务的进程号

17、查看防火墙状态:

        sudo firewall-cmd --state

18、如果防火墙在运行中,那就需要查看mysql服务端口是否被开放:

        sudo firewall-cmd --query-port=mysql服务端口号/tcp

19、如果mysql服务端口未开放,则需要开放该端口并重启防火墙:

        sudo firewall-cmd --zone=public --add-port=端口号/tcp --permanent 

        sudo firewall-cmd --reload

连接:

20、外界使用Navicat或dbeaver等数据库工具来连接服务器上的mysql数据库:

        如果不知道服务器ip,可以先查看ip,然后外界和服务器之间ping一下,保证网络能互通:

        ifconfig

        这里我就直接在外界ping服务器了,保证网络能互通,拿数据库连接基本就不会有问题:


拓展:

        这里再提一下mysql服务的一些基础命令:

# 开机启动服务
systemctl enable mysqld
systemctl daemon-reload

#启动服务
systemctl start mysqld

# 重新启动服务
systemctl restart mysqld

# 查看服务当前状态
systemctl status mysqld

#停止服务
systemctl stop mysqld

# 永久性停止服务
systemctl disable mysqld

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/141375.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【ROS】—— ROS运行管理 ——元功能包与launch文件(八)

文章目录前言1. 元功能包1.1 应用场景1.2 概念1.3 实现2. ROS节点运行管理launch文件2.1 launch文件标签之launch2.2 launch文件标签之node2.3 launch文件标签之include2.4 launch文件标签之remap2.5 launch文件标签之param2.6 launch文件标签之rosparam2.7 launch文件标签之gr…

2023年伊凡最新整理简单方法之为hbuilderx配置node环境实现可npm install

本文优雅草伊凡投稿一颗优雅草科技,欢迎其他朋友们来投稿(一定会详细署名),好直接开始,由于伊凡的电脑实在太卡了因此重装了一下系统所有环境全没了可能要一步步做环境了,后续可能会发关于flutter&#xff…

ModStartBlog v6.5.0 后台多页面升级,支持Laravel9

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。 系统完全开源,基于 Apache 2.0 开源协议。 功能特性 丰富的模块市场,后台一键快速安装会…

DCDC直流非隔离负高电压输出电源模块12V24V转0-负50v/-150v/-200v/-250v/-300v/-400v/-500v

特点● 效率高达70%以上● 1*2英寸标准封装● 单电压负输出● 价格低● 电压控制,输出电压随控制电压变化线性变化● 工作温度: -40℃~85℃● 阻燃封装,满足UL94-V0 要求● 温度特性好● 可直接焊在PCB 上应用GRB 系列模块电源是一种DC-DC升压变换器。该模块电源的输…

linux系统中C++的基本原理与实现

大家好,今天主要和大家分享一下,QT中进行C编程带来的优势和方便的地方,主要是为了更好的理解QT中C的语法,方便在QT中理解其中的内容。 目录 第一:C语言新特性 第二:C之命令空间namespace 第三&#xff1…

SQL基本操作

select 查询user表中的所有数据 select * from user查询user表中的所有username和password数据 select username,password from userinsert into 表名 (字段名,…) values (字段值,…) 在user表中插入username为tony stark|password为098123的数据 insert into user (usernam…

【关于C++中----继承】

文章目录一、继承的概念和意义二、基类和派生类对象复制转换三、继承中的作用域四、派生类的默认成员函数五、继承与友元六、继承与静态成员七、复杂的菱形继承及菱形虚拟继承八、继承的总结和反思一、继承的概念和意义 继承(inheritance)机制是面向对象程序设计使代码可以复用…

【自学Java】Java语言数组

Java语言数组 Java语言数组教程 Java 语言 的数组是一个由固定长度的特定类型元素组成的集合。它们的数据类型必须相同,声明变量的时候,必须要指定参数类型。 Java语言数组定义 语法 数据类型 数组名[] null; //声明一个一维数组 数组名 new 数据…

连接直流开关的固态继电器

介绍 在基于MOSFET的继电器中,交流和直流信号都可以被切换。输出利用了两个n通道类型的mosfet。当控制交流负载时,其中一个MOSFET用于切换交流循环的正相,而另一个用于切换负相。当控制直流负载时,只需要一个MOSFET,…

第四十讲:神州防火墙的基本知识

一、认识防火墙的外观特征: DCFW-1800S-H-V2硬件防火墙属于神州数码DCFW-1800系列安全网关家族中的一员,外型尺寸为442mm240.7mm44.0mm,可以安装在19英寸标准机柜中使用,也可以独立卧式使用。 前面板介绍 DCFW-1800S-H-V2安全网…

How we redesigned the NSQ- 其他特性及未来计划

在系列文章前面几篇中,介绍了NSQ改造的过程和几个基础特性,本文中我们继续介绍几个高级特性及其使用场景,这些都是结合有赞业务场景总结提炼出来的重要功能。 NSQ拓展消息格式的设计 有赞中间件在NSQ中引入了支持拓展内容的消息格式&#x…

SAP 【ABAP】采购申请审批增强Demo <转载> (BADI : ME_REQ_POSTED )

原文链接:https://saper.blog.csdn.net/article/details/128121798?spm1001.2014.3001.5502 需求:将审批通过后的采购申请信息推送至外部系统。 分析:当前SAP中有外部系统调用自定义函数审批的情况,也有手动单个/批量审批的情况…

技术分享 | 新手如何调试 OceanBase

作者:郭奥门 爱可生 DBLE 研发成员,负责分布式数据库中间件的新功能开发,回答社区/客户/内部提出的一般性问题。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注…

CRM-客户管理系统demo制作文档

一、简介1.1、案例简介本文将介绍,如何搭建CRM-客户管理。1.2、应用场景CRM-客户管理应用完整记录所有客户资料,合理的对客户进行领取、分配、退回、跟进,实现客户管理智能化。二、设置方法2.1、表单搭建1)新建主表【新增客户】表…

JDBC的Dao层设计

前言 在前面的博文中JDBC基础使用写增删改查会出现很多重复代码,可以将重复代码提取出来。 一、设计JDBC 层次结构: 项目结构: 二、BaseDao 2.1、将资源提取到文件 在database.properties中将需要的资源放入其中: mysqlDriv…

安科瑞医疗IT系统在医院安全用电中的应用实例

【摘要】根据现代医院建筑发展的趋势和特点,结合医疗 IT系统的工作原理,对医疗 IT系统作了简要介绍,并对IT系统在医院安全用电的具体应用进行了分析。通过工程实例详细探讨了医疗 IT系统在安装和配电方面应注意的问题和细节。 【关键词】IT…

C++ 语法基础课6 —— 函数

文章目录1. 函数基础1.1 编写函数1.2 调用函数1.3 形参和实参1.4 函数的形参列表1.5 函数返回类型1.6 局部变量、全局变量与静态变量2. 参数传递2.1 传值参数2.2 传引用参数(可以改变实参)2.3 数组形参(可以修改函数外数组)2.3.1 一维数组形参2.3.2 多维数组形参2.4 函数重载2.…

expdp导sys用户表时报错ORA-39166、ORA-31655

问题描述:expdp导sys用户表时报错ORA-39166、ORA-31655,如下所示: [oracleoel~]$ expdp \/ as sysdba\ directoryDATA_PUMP_DIR dumpfiletest.dmplogfileexpdp.log tablestest Export:Release 11.2.0.4.0 - Production on Tue Nov 29 14:08:…

麒麟 docker 自启动失败

docker 问题描述: 自启动时出现超时问题 start operation timed out. Terminating 排查流程: journalctl -u docker.service .... modulegrpc Jan 04 11:17:13 control03-55 dockerd[4466]: time"2023-01-04T11:17:13.30274997408:00" leve…

隔离认证、安全标准。

目的: 隔离认证、安全标准。 工业安全标准与隔离组件规格关系 功能隔离、基本隔离和增强型隔离等级 安全标准定义 系统级和组件级认证 测试器件获得高压安全性 器件行业标准 高电压系统隔离,认证、安全标准 了解组件级与系统级标准、隔离等级…