Linux(CentOS7)安装与卸载MySQL8.0图文详解

yizhihongxing

Linux(CentOS7)安装与卸载MySQL8.0图文详解

Mysql数据库的安装对于开发者来说,是我们必然会面对的问题,它的安装过程其实并不复杂,并且网络上的安装教程也非常多,但是对于新手来说,各种不同形式的安装教程,又给新手们带来了要选择哪种方式进行安装的难题,而且很多时候按照教程也没有能够安装成功,安装过程出现各种各样的错误。

下面记录了我在Linux(Centos 7)环境下安装Mysql的完整过程,实操记录,绝非水文,如有错误或遗漏,欢迎指正。

1.下载 MySQL 所需要的安装包

​ 网址:https://dev.mysql.com/downloads/mysql/

下载 MySQL 所需要的安装包

2.Select Operating System: 选择 Red Hat ,CentOS 是基于红帽的,Select OS Version: 选择 linux 7

选择 linux 7

3.选择 RPM Bundle 点击 Download

选择 RPM Bundle 点击 Download

4.点击 No thanks, just start my download. 进行下载

下载

5.下载好后,使用xshell连接到我们的虚拟机。

使用xshell连接到我们的虚拟机

6.通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包

查看 mariadb 的安装包

7.通过 rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 —nodeps 命令装卸 mariadb

注意:mariadb-libs-5.5.60-1.el7_5.x86_64名称根据自己实际修改

装卸 mariadb

8.通过 rpm -qa | grep mariadb 命令再次查看 mariadb 的安装包

查看 mariadb 的安装包

9.通过 cd /usr/local/ 命令进入根目录下的usr目录下的local目录,这个目录是放一些本地的共享资源的

进入根目录下的usr目录下的local目录

10.通过 ll 命令查看一下当前目录下的目录结构

通过 ll 命令查看一下当前目录下的目录结构

11.通过 mkdir mysql 命令 在当前目录下创建一个名为 mysql 的目录

创建一个名为 mysql 的目录

12.通过 ll 命令查看一下当前目录下的目录结构,刚创建的 mysql 目录有了

ll 命令查看一下当前目录下的目录结构

13.通过 cd mysql 命令进入 mysql 目录

cd mysql 命令进入 mysql 目录

14.通过 ll 命令查看一下当前目录下的目录结构

通过 ll 命令查看一下当前目录下的目录结构

15.通过xftp把刚才下载好的mysql安装包上传到mysql目录

通过xftp把刚才下载好的mysql安装包上传到mysql目录

16.通过 ll 命令查看一下当前目录下的目录结构

通过 ll 命令查看一下当前目录下的目录结构

17.通过 tar -xvf mysql-8.0.23-1.el7.x86_64.rpm-bundle.tar 命令解压 tar 包

解压 tar 包

18.通过rpm -ivh mysql-community-common-8.0.23-1.el7.x86_64.rpm —nodeps —force 命令安装 common

安装 common

19.通过 rpm -ivh mysql-community-libs-8.0.23-1.el7.x86_64.rpm —nodeps —force 命令安装 libs

安装 libs

20.通过 rpm -ivh mysql-community-client-8.0.23-1.el7.x86_64.rpm —nodeps —force 命令安装 client

安装 client

21.通过 rpm -ivh mysql-community-server-8.0.23-1.el7.x86_64.rpm —nodeps —force 命令安装 server

安装 server

22.通过 rpm -qa | grep mysql 命令查看 mysql 的安装包

查看 mysql 的安装包

23.通过以下命令,完成对 mysql 数据库的初始化和相关配置

这儿特别注意:我们知道在 Linux 环境下默认是区分大小写的,如要改变这种默认方式,需要在初始化前修改 lower_case_table_names,mysql8.0 要求我们不能在initialize之后再更改 lower_case_table_names 的值,也就是说,再通过更改 my.cnf 文件是不管用的。

初始化前,linux 下修改文件 my.cnf ,在 [mysqld] 配置节点下添加 lower-case-table-names=1,然后再执行如下命令。

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

mysql始化和相关配置

查看MySQL官方文档:

MySQL 8.0 Release Notes - Changes in MySQL 8.0.17 (2019-07-22, General Availability) - Functionality Added or Changed有记录:

  1. In MySQL 8.0, the lower_case_table_names variable can only be configured when the MySQL server is initializ

24.通过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码

数据库的密码

25.通过 mysql -uroot -p 敲回车键进入数据库登陆界面

进入数据库登陆界面

26.输入刚刚查到的密码,进行数据库的登陆,复制粘贴就行,MySQL 的登陆密码也是不显示的

image-20210406155534191

27.通过 ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’; 命令来修改密码

修改密码

28.通过 exit; 命令退出 MySQL,然后通过新密码再次登陆

退出 MySQL,然后通过新密码再次登陆

29.通过以下命令,进行远程访问的授权

  1. create user 'root'@'%' identified with mysql_native_password by '123456';
  2. grant all privileges on *.* to 'root'@'%' with grant option;
  3. flush privileges;

远程访问的授权

30.通过 ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘123456’ PASSWORD EXPIRE NEVER; 命令修改加密规则,MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。

image-20210406160000057

31.通过 flush privileges; 命令刷新修该后的权限

flush privileges命令刷新修该后的权限

32.通过 exit; 命令退出 MySQL。

33.通过以下命令,关闭 firewall

  1. systemctl stop firewalld.service;
  2. systemctl disable firewalld.service;
  3. systemctl mask firewalld.service;

关闭 firewall

34.通过 yum -y install iptables-services 命令安装 iptables 防火墙

安装 iptables 防火墙

35.通过以下命令启动设置防火墙

  1. systemctl enable iptables;
  2. systemctl start iptables;

启动设置防火墙

36.通过 vim /etc/sysconfig/iptables 命令编辑防火墙,添加端口

添加端口

37.点击 i 键进入插入模式

进入插入模式

38.在相关位置,写入以下内容

-A INPUT -m state —state NEW -m tcp -p tcp —dport 80 -j ACCEPT
-A INPUT -m state —state NEW -m tcp -p tcp —dport 3306 -j ACCEPT
-A INPUT -m state —state NEW -m tcp -p tcp —dport 443 -j ACCEPT
-A INPUT -m state —state NEW -m tcp -p tcp —dport 8080 -j ACCEPT
-A INPUT -m state —state NEW -m tcp -p tcp —dport 8090 -j ACCEPT
-A INPUT -m state —state NEW -m tcp -p tcp —dport 5888 -j ACCEPT

写入以下内容

点击 ESC 键退出插入模式,点击 : 键,输入 wq 敲回车键保存退出,: 为英文状态下的

39.通过 systemctl restart iptables.service 命令重启防火墙使配置生效

重启防火墙使配置生效

40.通过 systemctl enable iptables.service 命令设置防火墙开机启动

设置防火墙开机启动

41.通过 ifconfig 命令查看 ip,得到ip后我们就可以通过mysql工具连接到我们安装好的mysql了。

通过mysql工具连接到我们安装好的mysql

1、关闭mysql

  1. service mysqld stop

2、查看安装的mysql

  1. rpm -qa|grep -i mysql

查看安装的mysql

3、卸载安装的mysql

  1. rpm -ev mysql-community-client-8.0.11-1.el7.x86_64 --nodeps
  2. rpm -ev mysql-community-common-8.0.11-1.el7.x86_64 --nodeps
  3. rpm -ev mysql-community-server-8.0.11-1.el7.x86_64 --nodeps
  4. rpm -ev mysql-community-libs-8.0.11-1.el7.x86_64 --nodeps

4、删除mysql相关目录

  1. find / -name mysql
  2. [root@niceyoohw conf]# rm -rf /var/lib/mysql/
  3. [root@niceyoohw conf]# rm -rf /usr/lib64/mysql
  4. [root@niceyoohw conf]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
  5. [root@niceyoohw conf]# rm -rf /etc/selinux/targeted/tmp/modules/100/mysql

删除mysql相关目录

5、删除my.cnf

  1. rm -rf /etc/my.cnf

6、检查卸载情况

  1. rpm -qa|grep -i mysql

显示为空,卸载完毕。

作者|国思软件

原文链接:https://www.cnblogs.com/88223100/p/Linux-CentOS7-Installation-and-Uninstallation-of-MySQL-8_0-Illustrations.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux(CentOS7)安装与卸载MySQL8.0图文详解 - Python技术站

(0)
上一篇 2023年4月25日
下一篇 2023年4月25日

相关文章

  • mysql优化之路—-hash索引优化

    MySQL优化之路-Hash索引优化攻略 什么是Hash索引 Hash是一种非常高效的索引类型,它将索引值与一组固定大小的桶相对应,并且能够快速准确地确定所搜索的记录位置,它将记录散列分散到不同的桶中,通过一个hash函数的计算可以得到对应桶的编号,然后直接查询该桶即可,而不需要遍历整个索引。 Hash索引的优点和缺点 优点 Hash索引的查询速度非常快,因…

    MySQL 2023年5月19日
    00
  • mysql or走索引加索引及慢查询的作用

    MySQL OR运算符走索引、加索引及慢查询的作用 在MySQL中,我们常常会使用OR运算符来连接多个条件来进行复杂的查询。但是,如果使用不当,OR运算符会导致查询变慢,因此需要注意。 OR运算符的使用场景 假设我们有一张名为“users”的用户表,其中包含了用户的姓名、性别、年龄和城市等字段信息。 现在我们需要查询女性用户或者年龄大于25岁的用户,此时我们…

    MySQL 2023年5月19日
    00
  • Mysql表连接的误区与原理详析

    Mysql表连接的误区与原理详析 1. 介绍 在Mysql中,表连接是非常常见和重要的操作,但是许多人在进行表连接时会经常犯一些常见的错误。本文主要分析了常见的表连接误区,并介绍了Mysql表连接的原理和使用方法。 2. Mysql表连接的误区 2.1 忘记设置连接条件 在进行表连接时,我们必须指定连接条件,否则无法正确地进行连接。但是,有些人在进行表连接时…

    MySQL 2023年5月19日
    00
  • [MySQL] 索引的使用、SQL语句优化策略

    目录 索引 什么是索引 索引的创建与删除 创建索引 删除索引 索引的使用 使用explain分析SQL语句 最佳左前缀 索引覆盖 避免对索引列进行额外运算 SQL语句优化 小表驱动大表 索引 什么是索引 索引是一种方便我们高效查找某一列或几列数据的一种数据结构,一般是 B+树或者 hash树。想象一下在一个表中有一列是我们经常需要用于作为查询条件的列,也就是…

    MySQL 2023年4月12日
    00
  • 【必知必会的MySQL知识】⑤DQL语言

    目录 一、前言 二、基础查询 2.1 语法 2.2 实践操作 三、条件查询 3.1 语法 3.2 where 语句操作符 3.3 实践操作 四、排序查询 4.1 语法格式 4.2 实践操作 五、分组查询 5.1 语法 5.2 聚集函数 5.2.1 聚集函数简单使用 5.3 实践操作 5.4 规定与小结 六、连接查询(多表查询) 6.1 简介 6.2 笛卡儿积…

    MySQL 2023年5月4日
    00
  • mysql Out of memory (Needed 16777224 bytes)的错误解决

    当使用MySQL时,有时会发生”Out of memory”错误。这种错误通常意味着MySQL要求的内存量超过了系统配置的限制。 在这种情况下,需要调整MySQL配置参数或增加系统内存。 以下是解决这种错误的完整攻略: 1. 确认错误来源 首先需要确认哪个应用程序导致了”Out of memory”错误。你可以检查MySQL日志文件(例如/var/log/m…

    MySQL 2023年5月18日
    00
  • MySQL存储过程

    基本构造 delimiter $$ #定义终止符,可据习惯更换 CREATE PROCEDURE method_name() #创建方法 BEGIN #方法体开始 SELECT ‘code’; #方法体,写SQL语句 END #方法体终止 $$ #存储过程终止 基本语法 1.定义终止符 delimiter $$ #$$为自定义符,可据习惯更换 2.创建方法 …

    MySQL 2023年4月18日
    00
  • 解决安装mysqlclient的时候出现Microsoft Visual C++ 14.0 is required报错

    当在安装 mysqlclient 时出现 Microsoft Visual C++ 14.0 is required 错误时,可能是因为缺少 C++14 标准支持库或者 VC++ 14.0 开发环境相关组件,以下是完整的解决方案: 安装 Visual C++ Build Tools 2015 mysqlclient 依赖于 Microsoft Visual …

    MySQL 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部