zoukankan      html  css  js  c++  java
  • Linux(CentOS7)安装与卸载MySQL8.0图文详解

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

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

    一、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,然后再执行如下命令。

    mysqld --initialize;
    chown mysql:mysql /var/lib/mysql -R;
    systemctl start mysqld.service;
    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有记录:

    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.通过以下命令,进行远程访问的授权

    create user 'root'@'%' identified with mysql_native_password by '123456';
    grant all privileges on *.* to 'root'@'%' with grant option;
    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

    systemctl stop firewalld.service;
    systemctl disable firewalld.service;
    systemctl mask firewalld.service;
    

    关闭 firewall

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

    安装 iptables 防火墙

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

    systemctl enable iptables;
    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

    二、Mysql卸载

    1、关闭mysql

    service mysqld stop
    

    2、查看安装的mysql

    rpm -qa|grep -i mysql
    

    查看安装的mysql

    3、卸载安装的mysql

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

    4、删除mysql相关目录

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

    删除mysql相关目录

    5、删除my.cnf

    rm -rf /etc/my.cnf
    

    6、检查卸载情况

    rpm -qa|grep -i mysql
    

    显示为空,卸载完毕。

    往期推荐

    参考文章:

    .NET Core部署到linux(CentOS)最全解决方案,常规篇

    .NET Core部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)

    .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)

    .NET Core部署到linux(CentOS)最全解决方案,入魔篇(使用Docker+Jenkins实现持续集成、自动化部署)

    一网打尽,一文讲通虚拟机VirtualBox及Linux使用

    常用linux命令,开发必备

    全新跨平台版本.NET敏捷开发框架-RDIFramework.NET5.0震撼发布

    RDIFramework.NET Web版报表管理-助力企业高效智能图表

    RDIFramework.NET敏捷开发框架助力企业BPM业务流程系统的开发与落地

    通过SignalR技术整合即时通讯(IM)在.NET敏捷开发框架中落地

    RDIFramework.NET WinForm版新增报表管理功能模块

    RDIFramework.NET WinForm版新增通知公告、系统新闻模块

    RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录

    RDIFramework.NET敏捷开发框架 ━ 工作流程组件介绍

    微信公众号开发系列-玩转微信开发-目录汇总

    一文讲通.NET Core部署到Windows IIS最全解决方案

    常用linux命令,开发必备


    一路走来数个年头,感谢RDIFramework.NET框架的支持者与使用者,大家可以通过下面的地址了解详情。

    RDIFramework.NET官方网站:http://www.rdiframework.net/

    RDIFramework.NET官方博客:http://blog.rdiframework.net/

    特别说明,框架相关的技术文章请以官方网站为准,欢迎大家收藏!

    RDIFramework.NET框架由海南国思软件科技有限公司专业团队长期打造、一直在更新、一直在升级,请放心使用!

    欢迎关注RDIFramework.NET框架官方微信公众号(微信号:guosisoft),及时了解最新动态。

    使用微信扫描二维码立即关注

    微信二维码

    作者: RDIFramework.NET
    出处:http://www.cnblogs.com/huyong/
    Email:406590790@qq.com
    QQ:406590790
    微信:13005007127(同手机号)
    框架官网:http://www.rdiframework.net/
    框架官网博客:http://blog.rdiframework.net/
    框架其他博客:http://blog.csdn.net/chinahuyong
                   http://www.cnblogs.com/huyong
    RDIFramework.NET基于全新.NET Framework与.NET Core的快速信息化系统开发、整合框架,为企业快速构建垮平台、企业级的应用提供了强大支持。
    关于作者:系统架构师、信息系统项目管理师、DBA。专注于微软平台项目架构、管理和企业解决方案,多年项目开发与管理经验,曾多次组织并开发多个大型项目,在面向对象、面向服务以及数据库领域有一定的造诣。现主要从事基于 RDIFramework.NET 框架的技术开发、咨询工作,主要服务于金融、医疗卫生、铁路、电信、物流、物联网、制造、零售等行业。
    如有问题或建议,请多多赐教!
    本文版权归作者和CNBLOGS博客共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过微信、邮箱、QQ等联系我,非常感谢。

  • 相关阅读:
    程序中图片透明 函数(使用SetBkColor API函数)
    编程中使用锁
    event内存泄漏
    diskcache
    linux内核管理
    Vue
    Paxos算法
    索引以及页和区
    CoreRT
    二叉树
  • 原文地址:https://www.cnblogs.com/huyong/p/14713299.html
Copyright © 2011-2022 走看看