centos7安装mysql5.7 或者mysql8

news2024/11/19 23:12:21

1、centos7安装mysql8

  • mysql官网

https://dev.mysql.com/downloads/mysql/

  • 示例2个版本的下载地址
#5.7.30下载地址
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
#8.0.22下载地址
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar

1、卸载mariadb

mariadb 这个是 Linux 系统自带的数据库系统,跟 MySQL 冲突,所以一般先卸载这个没用的数据库

[root@k8s-master2 ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@k8s-master2 ~]# rpm -ev --nodeps mariadb-libs-5.5.68-1.el7.x86_64
软件包准备中...
mariadb-libs-1:5.5.68-1.el7.x86_64
[root@k8s-master2 ~]# rpm -qa | grep mariadb
[root@k8s-master2 ~]#

在这里插入图片描述

2、创建目录并上传

#创建目录
mkdir -vp /usr/local/software/mysql
#进入目录
cd /usr/local/software/mysql
#下载文件
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar
#解压缩
tar -xvf mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar
#得到以下文件
mysql-community-client-8.0.31-1.el7.x86_64.rpm
mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm
mysql-community-common-8.0.31-1.el7.x86_64.rpm
mysql-community-debuginfo-8.0.31-1.el7.x86_64.rpm
mysql-community-devel-8.0.31-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.31-1.el7.x86_64.rpm
mysql-community-icu-data-files-8.0.31-1.el7.x86_64.rpm
mysql-community-libs-8.0.31-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm
mysql-community-server-8.0.31-1.el7.x86_64.rpm
mysql-community-server-debug-8.0.31-1.el7.x86_64.rpm
mysql-community-test-8.0.31-1.el7.x86_64.rpm

3、正式安装

注意:需要按照以下安装顺序进行安装,否则会出问题
安装顺序:COMMON --> LIB --> LIB-COMPAT --> CLIENT --> SERVER
依次执行以下命令,提示100%字样表示安装成功

rpm -ivh mysql-community-common-8.0.31-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.31-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-client-8.0.31-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.31-1.el7.x86_64.rpm --nodeps --force
#查看安装目录
[root@k8s-master1 mysql]# rpm -qa | grep mysql
mysql-community-libs-8.0.31-1.el7.x86_64
mysql-community-client-8.0.31-1.el7.x86_64
mysql-community-common-8.0.31-1.el7.x86_64
mysql-community-libs-compat-8.0.31-1.el7.x86_64
mysql-community-server-8.0.31-1.el7.x86_64
  • 具体的安装过程
[root@k8s-master1 mysql]# rpm -ivh mysql-community-common-8.0.31-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-common-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-common-8.0.31-1.e################################# [100%]
[root@k8s-master1 mysql]# rpm -ivh mysql-community-libs-8.0.31-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-libs-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-libs-8.0.31-1.el7################################# [100%]
[root@k8s-master1 mysql]# rpm -ivh mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-libs-compat-8.0.3################################# [100%]
[root@k8s-master1 mysql]# rpm -ivh mysql-community-client-8.0.31-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-client-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-client-8.0.31-1.e################################# [100%]
[root@k8s-master1 mysql]# rpm -ivh mysql-community-server-8.0.31-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-server-8.0.31-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-server-8.0.31-1.e################################# [100%]
[root@k8s-master1 mysql]# rpm -qa | grep mysql
mysql-community-libs-8.0.31-1.el7.x86_64
mysql-community-client-8.0.31-1.el7.x86_64
mysql-community-common-8.0.31-1.el7.x86_64
mysql-community-libs-compat-8.0.31-1.el7.x86_64
mysql-community-server-8.0.31-1.el7.x86_64
[root@k8s-master1 mysql]#

在这里插入图片描述

4、初始化mysql

mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;

注意:此处会生成mysql的默认文件/etc/my.cnf
在这里插入图片描述

5、设置密码

#查看数据库默认随记密码
cat /var/log/mysqld.log | grep password
#此句也能查看
#grep 'temporary password' /var/log/mysqld.log
#使用随记密码登录 MySQL
mysql -uroot -p
#修改 MySQL 密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourPassword';

在这里插入图片描述

6、授权root远程登录

如果root用户仅在 localhost主机下去授权用户在别的主机上的权限也是不可以的,比如 ‘root’@'localhost’ 去授权别的主机用户 ‘username’@‘otherhost’ 也会报错,所以修改root用户的 host 为可以访问所有主机(打造一个真正的超级管理员),然后更新权限为拥有所有的权限,这里是必须要更新的,要不然还会报错,(对于为何要再次更新权限,我是这样理解的,只要更改了 user,host,或者authentication_string中的任何一个就要刷新权限)(对于为何要重新给 修改后的root用户重新赋予权限)因为没有刷新之前的记录的话新的权限没有覆盖

#选择数据库
use mysql;
#更新访问主机为所有主机
#如果Host=%,表示所有IP都有连接权限。
#Host=localhost,表示只能通过本机客户端去访问
#Host=192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问
update user set host='%' where user='root';
#8.0之后的mysql不支持 授权的时候就进行用户创建,所以创建  之后才能授权;
#允许远程登录
grant all privileges on *.* to 'root'@'%';
#刷新权限
flush privileges;
#修改加密规则,其中yourpassword是你原来的密码,就是上面查询的默认密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword' PASSWORD EXPIRE NEVER;

在这里插入图片描述

  • 添加用户、允许远程访问
#创建一个名为neruser的用户,设置其密码为password 并允许该用户从任何主机连接mysql
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
#这将授予"newuser"用户对"test"数据库的所有权限
GRANT ALL PRIVILEGES ON test.* TO 'newuser'@'%';
#刷新权限
FLUSH PRIVILEGES;
#删除用户
#DROP USER 'newuser'@'%';

在这里插入图片描述

7、开放端口

#开放端口进行远程链接
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
#查看开放端口
firewall-cmd --list-ports

8、mysql: error while loading shared libraries: libncurses .so.5:cannot open shared obiectfile :No such file or directory

yum install libncurses* -y

在这里插入图片描述

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

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

相关文章

网络防御保护——课程笔记

一.防火墙 防火墙的主要职责:控制和防护 --- 安全策略 --- 防火墙可以根据安全策略来抓取流量之后做出对应的动作。 防火墙的分类 防火墙的发展进程 防火墙的控制 带内管理 --- 通过网络环境对设备进行控制 --- telnet,ssh,web --- 登录设备…

【node】Node.js的常用内置模块:

文章目录 一、os模块:【1】常用的OS模块方法包括:【2】案例: 二、path模块:【1】常用的path模块方法包括:【2】案例: 三、url模块:【1】常用的url模块方法包括:【2】案例&#xff1a…

【Apache POI】百万级数据导出Excel,并含有折线等图表

需求概要 最近接到一个需求,概要来讲就是实现百万级数据导出Excel,并根据其中的数据项自动生成折线图等图表。经技术调研,针对内存、性能等要素,Apache POI此技术可完成此需求。 Apache POI是Apache软件基金会的开放源码函式库&am…

《教我兄弟学Android逆向15 xpose改机开发03-写一款自己的改机软件》

上一篇 《教我兄弟学Android逆向14 xpose改机开发02-改机代码基础编写》我带你熟悉了一下改机的流程,搭建了改机的基础代码,改机参数数据储存方面我们用的是SharedPreferences存储数据,界面方面写了一个一键新机的按钮,点一键新机的时候会随机生成imei数据存储到xml数据中,然后…

isctf---re

crackme 解压得到crackme.exe 运行得到flag babyRe 先猜e65537的rsa 先用Z3强行求出p、q,算出常规rsa中的phi,然后套用公式求出m exp #babyre wp from z3 import * import libnum from Crypto.Util.number import * p,q,cInts(p q c) S Solver() S…

【前端web入门第一天】02 HTML图片标签 超链接标签 音频标签 视频标签

文章目录: 1.HTML图片标签 1.1 图像标签-基本使用1.2 图像标签-属性1.3 路径 1.3.1 相对路径 1.3.2 绝对路径 2.超链接标签 3.音频标签 4.视频标签 1.HTML图片标签 1.1 图像标签-基本使用 作用:在网页中插入图片。 <img src"图片的URL">src用于指定图像…

前端框架---Vue2学习教程(上)

从HTML到现在一路跟过来的小伙伴们&#xff0c;坚持固然不容易&#xff0c;但我相信大家已经学到了不少&#xff0c;那么我们开始马不停蹄的进入前端的框架吧&#xff0c;下面讲的是Vue2&#xff0c;大家继续加油鸭&#xff01;&#xff01;&#xff01;&#xff01; Vue2 Vu…

遗传算法优化最大化效应的某些需求点可不配送的vrptw问题

标题&#xff1a;遗传算法优化最大化效应的某些需求点可不配送的vrptw问题 摘要&#xff1a; 在可不配送的车辆路径配送问题&#xff08;VRPTW&#xff09;中&#xff0c;我们面临着优化路径规划以最大化效用的挑战。本文提出了一种基于遗传算法的方法&#xff0c;旨在解决具…

【Shell实战案例面试题】输入网卡的名字,来输出网卡的IP

1.问题 参数后判断要加"" 名字为空时显示ip 2.分析 把本机的所有网卡名列出来&#xff0c;来引导用户输入 使用命令列出所有网卡信:ifconfig/ip a 设计一个函数&#xff0c;把网卡名作为参数&#xff0c;函数返回网卡的IP 在获取某个网卡IP时&#xff0c;考虑网…

Redis面试(三)

1.Redis报内存不足怎么处理 Redis内存不足的集中处理方式&#xff1a; 修改配置文件redis.cof的maxmemory参数&#xff0c;增加Redis的可用内存通过命令修改set maxmemory动态设置内存上限修改内存淘汰策略&#xff0c;及时释放内存使用Redis集群&#xff0c;及时进行扩容 2…

基于springboot的美发管理系统

文章目录 项目介绍主要功能截图&#xff1a;部分代码展示设计总结项目获取方式 &#x1f345; 作者主页&#xff1a;超级无敌暴龙战士塔塔开 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 &…

让Unity迭代器性能提升5倍

最近在研究Unity il2cpp的代码生成和编译优化&#xff0c;结合之前遇到过的一个优化案例&#xff0c;给大家讲讲在Unity中迭代器相关代码生成的底层原理&#xff0c;以及在写代码过程中需要注意的一些特殊情况。 案例 首先我们来看一个非常简单的案例&#xff0c;代码如下&am…

3338 蓝桥杯 wyz的数组IV 简单

3338 蓝桥杯 wyz的数组IV 简单 //C风格解法1&#xff0c;通过率50% #include<bits/stdc.h>int main(){std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int n; std::cin >> n;int ans 0;std::vector<int>a(n);for(auto &am…

Docker本地部署APITable结合内网穿透实现公网访问

文章目录 前言1. 部署APITable2. cpolar的安装和注册3. 配置APITable公网访问地址4. 固定APITable公网地址 前言 vika维格表作为新一代数据生产力平台&#xff0c;是一款面向 API 的智能多维表格。它将复杂的可视化数据库、电子表格、实时在线协同、低代码开发技术四合为一&am…

【C语言】socket编程接收问题

一、recv()函数接收到的返回值为0表示对端已经关闭 在TCP套接字编程中&#xff0c;通过recv()函数接收到的返回值为0通常表示对端已经关闭了套接字的发送部分。这是因为TCP是一个基于连接的协议&#xff0c;其中有定义明确的连接建立和终止流程&#xff1b;当对端调用close()或…

C语言指针进阶(1)(超详细)

前言&#xff1a; 指针其实就是地址&#xff0c;而凡是存储在内存中的值都会有属于自己的地址&#xff0c;指针指向地址&#xff0c;这样我们就能通过指针间接操作变量。我们在指针初阶中介绍了指针的基本概念&#xff1a;如指针大小、野指针问题、指针间的关系运算等&#xff…

Hugging Face创始人分享:企业如何在ChatGPT浪潮下实现战略布局

Hugging Face创始人兼首席执行官 Clem Delangue在IBM一年一度的 THINK大会中研讨了当前人工智能发展趋势&#xff0c;特别是ChatGPT模型以及其对行业的影响。他的演讲还涉及到一个关键的议题&#xff0c;在ChatGPT这样的通用模型出现后&#xff0c;企业如何在人工智能领域找到自…

自定义vue通用左侧菜单组件(未完善版本)

使用到的技术: vue3、pinia、view-ui-plus 实现的功能: 传入一个菜单数组数据,自动生成一个左侧菜单栏。菜单栏可以添加、删除、展开、重命名,拖动插入位置等。 效果预览: 代码: c-menu-wrap.vue <template><div class="main-container">&l…

【嵌入式学习】C++QT-Day3-C++基础

笔记 见我的博客&#xff1a;https://lingjun.life/wiki/EmbeddedNote/19Cpp 作业 设计一个Per类&#xff0c;类中包含私有成员:姓名、年龄、指针成员身高、体重&#xff0c;再设计一个Stu类&#xff0c;类中包含私有成员:成绩、Per类对象p1&#xff0c;设计这两个类的构造函…

当包容结构体遇见灵活的内存管理

&#x1f308;个人主页&#xff1a;小田爱学编程 &#x1f525; 系列专栏&#xff1a;c语言从基础到进阶 &#x1f3c6;&#x1f3c6;关注博主&#xff0c;随时获取更多关于c语言的优质内容&#xff01;&#x1f3c6;&#x1f3c6; &#x1f600;欢迎来到小田代码世界~ &#x…