centos系统安装mysql8.0

news2024/9/22 3:46:56

centos系统安装mysql8.0

  • 环境说明
  • 开始
    • 1、查看centos7中是否有MariaDB,MariaDB与MySQL关系请自行查阅
    • 2、如果有MariaDB,需要将 步骤1 中查询到的mairadb全部卸载,否则MySQL安装会出现问题
    • 3、查看本机是否已经安装过MySQL
    • 4、如果安装过MySQL,请确定是否有数据需要备份(如果有需要备份的数据请自行查阅相关操作进行备份,否则数据丢失概不负责)
    • 5、卸载MySQL
    • 6、MySQL官网下载适用于centos7的mysql安装包
    • 7、解压tar包
  • 这里选择的是全部安装
  • 安装顺序如下,否则会出现依赖问题
    • 9、初始化数据库
    • 10、目录授权,否则可能会启动失败
    • 11、启动mysql
    • 12、查询mysql状态
    • 13、查询mysql的临时密码
    • 14、使用临时密码登录mysql
    • 15、mysql的登录密码
    • 16、mysql设置远程连接
    • 17、其他情况说明

环境说明

  • 操作系统:CentOS Linux release 7.9.2009 (Core)
  • 本次安装MySQL版本:8.0.26
  • 连接工具:xshell、xftp(或者其他连接/上传工具)

开始

1、查看centos7中是否有MariaDB,MariaDB与MySQL关系请自行查阅

rpm -qa | grep mariadb

在这里插入图片描述

2、如果有MariaDB,需要将 步骤1 中查询到的mairadb全部卸载,否则MySQL安装会出现问题

rpm -e --nodeps 软件名

在这里插入图片描述

3、查看本机是否已经安装过MySQL

rpm -qa | grep -i mysql

在这里插入图片描述

4、如果安装过MySQL,请确定是否有数据需要备份(如果有需要备份的数据请自行查阅相关操作进行备份,否则数据丢失概不负责)

如果没有安装过MySQL,请跳转步骤6

5、卸载MySQL

  • 将步骤3中查询到的mysql安装包全部卸载
rpm -e --nodeps 软件名
  • 查找mysql文件,并将其删除
find / -name mysql
whereis mysql
  • 将find命令和whereis命令查询到的mysql文件全部删除
rm -rf 查询到的mysql路径
  • 删除mysql配置文件
rm /etc/my.cnf
  • 确认是否全部删除mysql
rpm -qa | grep -i mysql

6、MySQL官网下载适用于centos7的mysql安装包

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 查询服务器是x86_64架构还是arm架构
uname -m
或者是
arch
# 我的服务器是x86_64的

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 这里可以下载直接通过浏览器下载下来,然后通过ftp上传到所要安装的服务器中
  • 或者是复制这个tar包的链接,然后通过wget命令下载,操作如下
wget 文件的网络地址
  • 比如我这里下载的地址是
    wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar
    在这里插入图片描述
    在这里插入图片描述
  • 无论是通过xftp工具还是wget命令,将MySQL的tar包传到centos的某个目录下(比如home目录下),这里演示的是上传到root用户的home目录下
    在这里插入图片描述

7、解压tar包

在解压之前,建议先创建一个空的目录,因为这个tar包解压后多个rpm包会直接放到当前目录。因为我的tar包是在root用户的home目录下,所以直接在这个目录下创建了一个mysql的目录。这个目录无所谓!
在这里插入图片描述在这里插入图片描述

tar -xvf mysql的tar包全名 -C 解压到指定目录
# 说明:-C参数,后面跟的是目录,意思是将压缩包解压缩后存放到指定的目录下。
# 这里就指定到刚才创建的mysql目录下

在这里插入图片描述
在这里插入图片描述
8、开始安装MySQL

  • rpm安装命令
rpm -ivh xxx.rpm

这里选择的是全部安装

安装顺序如下,否则会出现依赖问题

rpm -ivh mysql-community-common-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-test-8.0.26-1.el7.x86_64.rpm

  • 以上安装rpm时可能会出现centos的动态库缺失等情况,这里记录下几种错误情况

情况1:
[root@VM-0-14-centos mysql]# rpm -ivh mysql-community-embedded-compat-8.0.26-1.el7.x86_64.rpm

`warning: mysql-community-embedded-compat-8.0.26-1.el7.x86_64.rpm`:
   `Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY error: Failed
   dependencies: libnuma.so.1()(64bit) is needed by
   mysql-community-embedded-compat-8.0.26-1.el7.x86_64
   libnuma.so.1(libnuma_1.1)(64bit) is needed by
   mysql-community-embedded-compat-8.0.26-1.el7.x86_64
   libnuma.so.1(libnuma_1.2)(64bit) is needed by
   mysql-community-embedded-compat-8.0.26-1.el7.x86_64

解决方式:
yum -y install numactl

情况2
[root@VM-0-14-centos mysql]# rpm -ivh mysql-community-devel-8.0.26-1.el7.x86_64.rpm

warning: mysql-community-devel-8.0.26-1.el7.x86_64.rpm: Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
pkgconfig(openssl) is needed by mysql-community-devel-8.0.26-1.el7.x86_64

解决方式
yum install openssl-devel

情况3
[root@VM-0-14-centos mysql]# rpm -ivh mysql-community-test-8.0.26-1.el7.x86_64.rpm

`warning: mysql-community-test-8.0.26-1.el7.x86_64.rpm: Header V3` `DSA/SHA256` `Signature, key ID 5072e1f5: NOKEY`
error: Failed dependencies:
perl(Data::Dumper) is needed by mysql-community-test-8.0.26-1.el7.x86_64

解决方式
yum -y install autoconf

情况4
[root@VM-0-14-centos mysql]# rpm -ivh mysql-community-test-8.0.26-1.el7.x86_64.rpm

warning: mysql-community-test-8.0.26-1.el7.x86_64.rpm: Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
perl(JSON) is needed by mysql-community-test-8.0.26-1.el7.x86_64

解决方式
yum install perl-JSON.noarch -y
yum install perl.x86_64 perl-devel.x86_64 -y

情况5
[root@VM-0-14-centos mysql]# rpm -ivh mysql-community-test-8.0.26-1.el7.x86_64.rpm

warning: mysql-community-test-8.0.26-1.el7.x86_64.rpm: Header V3 DSA/SHA256 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
perl(Test::More) is needed by mysql-community-test-8.0.26-1.el7.x86_64

解决方式:
到 https://pkgs.org/download/perl(Test::More),打开centos7的下拉框,找到CentOS x86_64下对应的rpm,然后打开这个rpm连接,在Download对应的部分找Binary Package,后面有对应的rpm下载连接,下载下来进行安装即可。

或者用命令安装即可:yum install perl-Test-Harness

9、初始化数据库

mysqld --initialize --console

10、目录授权,否则可能会启动失败

chown -R mysql:mysql /var/lib/mysql/

11、启动mysql

systemctl start mysqld
  • 对应的重启、关闭mysql命令如下
systemctl stop mysqld
systemctl restart mysqld

12、查询mysql状态

systemctl status mysqld

在这里插入图片描述

13、查询mysql的临时密码

cat /var/log/mysqld.log | grep password

在这里插入图片描述

14、使用临时密码登录mysql

mysql -u root -p
  • 注意:linux下输入密码是不会回显(不是电脑坏了!),输入完毕后直接回车即可
    在这里插入图片描述- 密码输入正确,回车后看到如下信息,则代表成功进入mysql

15、mysql的登录密码

alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘你的密码’ ;

最后重启下mysql即可

16、mysql设置远程连接

注:这个步骤根据实际需求而设定

show databases ;
use mysql ;

在这里插入图片描述
查看可登录mysql的host

select host, user from user;

host部分全部都是localhost,说明用户只能本地连接msyql服务
在这里插入图片描述

  • 修改root用户的host值,并刷新mysql数据库
update user set user.host=%'where user.user=‘root’;
flush privileges;

在这里插入图片描述
在我的windows电脑上使用Navicat测试连接服务器上的mysql,看看是否能够远程连接
在这里插入图片描述

17、其他情况说明

连接失败的情况

  • centos7的防火墙是否开启了3306的端口
  • 云服务器的出入站规则配置情况

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

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

相关文章

9.java程序员必知必会类库之加密库

前言 密码学在计算机领域源远流长,应用广泛。当前每时每刻,每一个连接到互联网的终端,手机,电脑,iPad都会和互联网有无数次的数据交互,如果这些数据都是明文传输那将是难以想象的。为了保护用户隐私&#…

算法--前缀和技巧 (蓝桥杯123-灵能传输)

文章目录 什么是前缀和用途什么时候用例题[蓝桥杯 2021 国 ABC] 123题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示 思路代码 灵能传输(蓝桥杯96%,洛谷ac)[蓝桥杯 2019 省 B] 灵能传输题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1…

知识图谱实战开篇-讲述知识图谱是什么,要学哪些知识,一文讲通

大家好,我是微学AI,今天给大家带来知识图谱重要讲述,讲明白什么是知识图谱,知识图谱可以做什么,需要学哪些知识,与自然语言处理的关系。很多人认为知识图谱是关系图谱,可能涉及人工智能的东西不…

【LeetCode】650. 只有两个键的键盘

650. 只有两个键的键盘(中等) 思路 不同于以往通过加减实现的动态规划,这里需要乘除法计算位置。因为粘贴操作是倍数增加,使一个一维数组 dp,其中位置 i 表示延展到长度 i 的最少操作次数。对于每个位置 j &#xff0c…

C++学习 Day6

目录 1. 类对象模型 1.1 如何计算类对象的大小 1.2 类对象的存储方式 1.3 结构体内存对齐规则 2. this指针 2.1 this指针的引出 2.2 this指针的特性 3. 类的6个默认成员函数 4.构造函数 4.1 概念 4.2 特性 1. 类对象模型 1.1 如何计算类对象的大小 class A { publi…

【Java】『蓝桥杯』10道编程题及答案(一)

系列文章 【Java】『蓝桥杯』10道编程题及答案(一) 本文链接:https://blog.csdn.net/youcheng_ge/article/details/130223115 【Java】『蓝桥杯』10道编程题及答案(二) 本文链接:https://blog.csdn.net/y…

【Hello Network】协议

作者:小萌新 专栏:网络 作者简介:大二学生 希望能和大家一起进步 本篇博客简介:简单介绍下协议并且设计一个简单的网络服务器 协议 协议的概念结构化数据传输序列化和反序列化网络版计算机服务端代码协议定制客户端代码服务线程执…

[Netty] HashWheelTimer时间轮 (十六)

文章目录 1.常见定时任务实现2.时间轮算法3.HashedWheelTimer源码分析3.1 内部结构分析3.2 构造方法3.3 添加任务3.4 工作线程Worker3.5 停止时间轮 4.HashWheelTimer总结 1.常见定时任务实现 定时器的使用场景包括:成月统计报表、财务对账、会员积分结算、邮件推送…

Linux Podman容器介绍

目录 Podman讲解 Container 和 Container Images 的关系 安装Podman 配置root的容器管理 国内镜像源 配置Podman的镜像源 创建容器相关命令 配置rootless的容器管理 配置Podman镜像源 管理容器镜像 管理容器 将容器作为systemd服务运行 配置普通用户来创建systemd…

Jetpack Compose之线性布局和帧布局

概述 Compose 中的线性布局对应的是Android传统视图中的LinearLayout,不一样的地方是,Compose根据Orientation的不同又将布局分为Column和Row, Column对应传统视图LinearLayout中orientation “vertical”的情况,Row对应传统视图LinearLayout中orienta…

Redis入门学习笔记【二】Redis缓存

目录 一、Redis缓存 二、Redis使用缓存遇到的问题 2.1 数据一致性 2.2缓存雪崩 2.3 缓存穿透 2.4 缓存击穿 一、Redis缓存 数据缓存是Redis最重要的一个场景,为缓存而生,在springboot中,一般有两种使用方式: 直接通过RedisT…

helm部署相关服务过程中问题记录

在学习helm部署相关服务过程中出现一些相关问题,自己记录并供大家一起学习!!! 【问题1】部署helm 获取软件包失败 在通过wget https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz文件过程发现无法…

消息中间件的定义

中间件(middleware)是基础软件的一大类,属于可复用的软件范畴。中间件在操作系统软件,网络和数据库之上,应用软件之下,总的作用是为处于自己上层的应用软件提供运行于开发的环境,帮助用户灵活、高效的开发和集成复杂的…

【软考数据库】第二章 程序语言基础知识

目录 2.1 程序设计语言的基本概念2.2 程序设计语言的基本成分2.3 编译程序基本原理 前言: 笔记来自《文老师软考数据库》教材精讲,精讲视频在b站,某宝都可以找到,个人感觉通俗易懂。 2.1 程序设计语言的基本概念 程序设计语言是…

Nginx中的location规则与rewrite重写

location与rewrite的区别 rewrite :对访问的域名或者域名内的URL路径地址重写 location:对访问的路径做访问控制或者代理转发 从功能看 rewrite 和 location 似乎有点像,都能实现跳转,主要区别在于 rewrite 是在同一域名内更改获…

常见的3d bounding box标注工具

0. 简介 对于3d bounding box而言,近几年随着自动驾驶的火热,其标注工具也日渐多了起来,本篇文章不讲具体的算法,这里主要聚焦于这些开源的3d bounding box标注工具,以及他们是怎么使用的。这里借鉴了我想静静&#x…

牛客前端编程语言错题2

【语法】 名为“ctx”的变量是某个HTML5画布对象的上下文。以下代码绘制的是什么() Ctx.arc(x,y,r,0,Math.PI,true); 在给定点绘制一个矩形 从一个点到另一个点绘制一条直线 在给定点绘制一个半圆 在给定点绘制一个圆 链接:https://www.now…

分布式系统反向代理设计与正向代理

反向代理与正向代理分析 代理服务器:位于发起请求的客户端与原始服务器端之间的一台跳板服务器,代理服务器分为正向代理服务器和反向代理服务器 正向代理 :代理客户端,隐藏了真实的请求客户端,服务端不知道真实的客户…

安全响应中心 — 垃圾邮件事件报告(4.18)

天空卫士安全响应中心邮件安全小组是成都研发中心的核心部门之一。在日常工作中,对大量样本进行分析并提取规则,实现对包含垃圾内容、钓鱼内容的邮件进行检测和隔离,从而抵御对业务电子邮件的入侵,防止钓鱼邮件等隐蔽邮件威胁。其…

9. 树的进阶

9. 树的进阶 ​ 之前我们学习过二叉查找树,发现它的查询效率比单纯的链表和数组的查询效率要高很多,大部分情况下,确实是这样的,但不幸的是,在最坏情况下,二叉查找树的性能还是很糟糕。 例如我们依次往二叉…