【Linux】在Ubuntu中卸载、下载mysql以及如何检查mysql是否卸载成功

介绍

这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长!

以下为小编最喜欢的两句话:

要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。

一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,我想去的地方都很远,我爱的人超完美。因此,小编想说:共勉!

本篇文章是小编记录Linux的系统学习

目录

 一、判断mysql是否已安装

 二、卸载mysql

1)停止 MySQL 数据库服务(小编使用16.04的版本)

2)卸载 MySQL 数据库软件包

3)删除 MySQL 数据库目录以及配置文件

4)完全清理残余文件

三、检查是否卸载完成

1)检查 MySQL 是否还在运行

2)检查 MySQL 的安装路径

3)检查 MySQL 的配置文件和数据文件是否仍存在

四、安装mysql

1、下载

 1.1输入命令之后,还需要确认是否继续,输入y

1.2如果之前已经安装过MySQL的话,此时如果碰到有新版本的MySQL,会出现需要配置的情况,如下图所示。

1.3这里如果不设置新密码的话,则密码和之前的MySQL一致;如果你想设置新的密码,则输入新密码即可,或者输入之前为root设置的密码。

 1.4设置完成后,就等待继续下载,直到自动停止,如下图: 

1.5 此时通过命令:ps aux | grep mysqld,进行查看,看mysql是否已经启动。​

1.6mysql启动完成之后,可以在命令行中输入命令:mysql –u root –p,之后输入之前设置的密码,即可进入到mysql数据库。

 1.7进入mysql数据库,可以进行任何在windows系统中mysql的操作

 1.8如果想退出MySQL数据库,直接输入“exit”或者“quit”即可,如下图所示:

 2、开启3306远程端口号

1)查看端口情况

2)修改Mysql配置文件(注意路径,跟之前网上的很多版本位置都不一样)

3)重启Mysql

4)再次查看端口信息

3、Mysql允许所有的ip都可以访问

在Linux下mysql如何开启远程连接?

远程测试

更改密码


 一、判断mysql是否已安装

使用以下命令,进行查看mysql的版本,如像下图一样出现版本号,那么

mysql --version

 二、卸载mysql

因为小编已经安装过mysql了,所以这里就先卸载mysql,无需这一步的小伙伴可以跳过这一步,进入到下一步,安装。

普通用户需要使用sudo去提升权限,而root用户无需使用sudo

1)停止 MySQL 数据库服务(小编使用16.04的版本)

在 Ubuntu 16.04 及以下版本中,可以使用以下命令停止 MySQL 服务:

sudo service mysql stop

在 Ubuntu 18.04 及以上版本中,可以使用以下命令停止 MySQL 服务:

sudo systemctl stop mysql

2)卸载 MySQL 数据库软件包

卸载 MySQL 数据库软件包时,使用以下命令:

下面的命令中-get,在一些版本中可以省略

补充:

在 Ubuntu 系统中,apt-get 命令中的 -get 参数在更早的版本中已经被省略了,不需要再加上这个参数。具体来说,在 Ubuntu 16.04 LTS 版本之前,可以使用 apt-get 命令来进行软件包管理,而在 Ubuntu 16.04 LTS 版本之后,推荐使用 apt 命令来代替 apt-get 命令。

与 Debian 8 (Jessie) 版本不同的是,Ubuntu 16.04 LTS 版本之后,虽然 apt 命令也包含了 apt-get 命令的所有功能,但并没有完全省略 apt-get 命令,而是仍然支持使用 apt-get 命令进行软件包的管理,以便兼容老版本的 Ubuntu 系统和其他 Linux 发行版。

需要注意的是,虽然 apt-get 命令和 apt 命令的功能基本一致,但是它们的具体命令行参数和用法可能会略有不同。因此,在不同的 Ubuntu 版本中,或者在使用不同的命令时,建议查阅官方文档或者使用命令的帮助文档,以确保正确地使用软件包管理工具。

sudo apt-get remove --purge mysql-server-5.7

如果您安装的是其他版本的 MySQL 数据库,可以将上述命令中的 mysql-server-5.7 替换为相应的软件包名称

3)删除 MySQL 数据库目录以及配置文件

在卸载 MySQL 数据库软件包后,MySQL 数据库的数据文件和配置文件可能还存在于系统中,可以使用以下命令删除:

sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql/

4)完全清理残余文件

在进行完上述步骤后,MySQL 数据库软件包和相关文件已经被完全卸载。如果要完全删除相关残余文件,可以使用以下命令进行清理:

sudo apt-get autoremove
sudo apt-get autoclean

 apt-get autoremove和apt-get autoremove的意思

apt-get autoremove 命令会自动删除已安装的软件包可能会被安装的其他软件包所依赖的已经不再需要的软件包。这些被自动删除的软件包通常是因为它们依赖的软件包已经被更新或升级,或者已经安装了其他类似的软件包。

这个命令可以清理掉系统不再需要的依赖关系,从而优化系统的磁盘空间。但是,它不会删除您手动安装的软件包,也不会删除任何用户数据或配置文件。

需要注意的是,使用此命令之前请注意审查将要删除的软件包列表,确保您不会意外删除重要的软件包。

apt-get autoremove 命令会自动删除已安装的软件包可能会被安装的其他软件包所依赖的已经不再需要的软件包。这些被自动删除的软件包通常是因为它们依赖的软件包已经被更新或升级,或者已经安装了其他类似的软件包。

这个命令可以清理掉系统不再需要的依赖关系,从而优化系统的磁盘空间。但是,它不会删除您手动安装的软件包,也不会删除任何用户数据或配置文件。

需要注意的是,使用此命令之前请注意审查将要删除的软件包列表,确保您不会意外删除重要的软件包。

注意:在执行以上操作之前,请先备份您需要保存的数据。如果您无法备份数据,请谨慎执行上述操作。

操作:

三、检查是否卸载完成

如果已经完全卸载了 MySQL,那么可以使用以下命令来检查系统上是否还有MySQL的相关进程或文件存在:

1)检查 MySQL 是否还在运行

sudo service mysql status

如果 MySQL 已经完全卸载,则会显示类似以下内容:

mysql.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

2)检查 MySQL 的安装路径

dpkg -l | grep mysql

如果 MySQL 已经完全卸载,则不会出现任何与 MySQL 相关的信息。如果仍然存在,则说明尚未完全卸载。 

3)检查 MySQL 的配置文件和数据文件是否仍存在

sudo ls -la /etc/mysql/
sudo ls -la /var/lib/mysql/

注意:如果 MySQL 已经完全卸载,则这些目录中应该是空的。

如果在上述命令中发现 MySQL 的相关进程或文件仍然存在,则说明 MySQL 可能没有完全卸载。需要注意的是,这些命令并不是绝对准确的,最好还是手动检查一遍以确保系统中已经没有您要删除的任何 MySQL 文件或进程。

四、安装mysql

1、下载

apt install mysql-server

 1.1输入命令之后,还需要确认是否继续,输入y

1.2如果之前已经安装过MySQL的话,此时如果碰到有新版本的MySQL,会出现需要配置的情况,如下图所示。

1.3这里如果不设置新密码的话,则密码和之前的MySQL一致;如果你想设置新的密码,则输入新密码即可,或者输入之前为root设置的密码。

输入密码之后就会再次提醒你输入一次密码,与上图一样的

 1.4设置完成后,就等待继续下载,直到自动停止,如下图: 

1.5 此时通过命令:ps aux | grep mysqld,进行查看,看mysql是否已经启动。

1.6mysql启动完成之后,可以在命令行中输入命令:mysql –u root –p,之后输入之前设置的密码,即可进入到mysql数据库。

 1.7进入mysql数据库,可以进行任何在windows系统中mysql的操作

 1.8如果想退出MySQL数据库,直接输入“exit”或者“quit”即可,如下图所示:

 2、开启3306远程端口号

1)查看端口情况

注意:现在的3306端口绑定的IP地址是本地的127.0.0.1

2)修改Mysql配置文件(注意路径,跟之前网上的很多版本位置都不一样)

vim /etc/mysql/mysql.conf.d/mysqld.cnf

找到

bind-address = 127.0.0.1

前面加#注释掉

vim中 i是插入 点击esc就不能编辑,修改后使用:wq退出或者使用:wq!强制退出

3)重启Mysql

/etc/init.d/mysql restart

4)再次查看端口信息

netstat -an | grep 3306

 这样就不是绑定127.0.0.1了

3、Mysql允许所有的ip都可以访问

在Linux下mysql如何开启远程连接?

第一步:mysql -uroot -p

第二步:use mysql;

        update user set host=’%’ where user=’root’;

      或

       grant all privileges on *.* to root@'%' with grant option;

第三步:flush privileges;

 

远程测试


通过windows客户端连接,出现如图所示表示远程可以连接了

 如果刚刚创建的用户没有其他权限的话,可以使用以下命令去更改权限
新增用户user1密码为123456: create user 'user1'@'%' identified by '123456';

赋予查询权限:  grant select on  mysql.user to 'user1'@'%';

刷新权限:    flush privileges;

更改密码

eg:

UPDATE USER SET PASSWORD=PASSWORD("123456")

WHERE USER="root";

重启linux中mysql服务(使用init的话需要在管理员的账号下启动才能够运行成功)

/etc/init.d/mysql restart

以上就是小编所实践的内容,希望能够帮助到大家,感谢各位大佬的观看!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

micropython固件编译——把自己的py库添加进固件

目录 0. 前言1. 编写自己库的代码2. 移植库3. 验证 0. 前言 本节编译自己写的py库,增强移植性,往后烧录自己的固件即可轻易移植代码 没装好环境或者没有基础可以先看看这个: Ubuntu下ESP-IDF的环境搭建 Ubuntu下编译esp32micropython固件编…

windows下上架iOS应用到appstore

windows下上架iOS应用到appstore 背景步骤申请苹果开发者账号创建唯一标示符App IDs申请发布证书申请发布描述文件创建App并填写信息选择证书编译打包上传IPA到App Store提交审核 尾巴 背景 现在由于跨平台技术的兴起,不使用原生技术就能开发出Android和iOS应用。A…

一些关于c++的琐碎知识点

目录 bool强转 const构成重载:const修饰*p 移动构造 new int (10)所做的四件事 this指针---为什么函数里面需要this指针? .和->的区别 new创建对象 仿函数 new和malloc的区别 c系统自动给出的函数有 delete和delete[ ]区别何在 检查有没有析构函数 e…

BTC API:如何在比特币网络上创建应用程序?

比特币是一种去中心化的数字货币,可以通过比特币API与比特币网络进行交互。比特币API是一组允许开发人员与比特币网络进行交互的编程接口,可以帮助开发者构建各种比特币应用程序。 比特币API可以用于创建区块浏览器、钱包和比特币支付。其中利用比特币A…

Android-Activity生命周期

文章参考:添加链接描述 文章参考:添加链接描述 五大状态 StartingRunningStoppedPausedDestroyed 借用一张已经包浆的图 PS:Running和Paused是可视阶段,其余都是不可视 几大函数 onCreate:通过setContentLayout初始…

Markdown笔记应用程序Note Mark

什么是 Note Mark Note Mark 是一种轻量、快速、简约,基于网络的 Markdown 笔记应用程序。具有时尚且响应迅速的网络用户界面。 安装 在群晖上以 Docker 方式安装。 ghcr.io 镜像下载 官方的镜像没有发布在 docker hub,而是在 ghcr.io,所以…

iptables和防火墙

文章目录 1.防火墙2.Iptables基本介绍2.1 什么是iptables2.2 什么是包过滤防火墙2.3 包过滤防火墙如何实现 1.防火墙 Linux防火墙主要工作在网络层,针对 TCP/IP 数据包实施过滤和限制,典型的包过滤防火墙,基于内核编码实现,具有非…

什么是低代码开发?低代码开发可以解决哪些问题?

一、什么是低代码开发? 低代码可以理解为是一种全新的应用开发理念。主要以可视化、参数化的系统配置方式来进行程序应用的开发,因此可以大幅度减少代码编写的工作,从而提高开发效率。 低代码平台则是通过对于业务场景进行高度抽象、提炼&…

unittest单元测试框架

背景 unittest也称为PyUnit,是借鉴Java中JUnit框架产生。 unittest使我们具备创建测试用例、测试套件、测试夹具的能力。 组成 Test Fixture(测试夹具):可以定义在单个或多个测试执行之前的准备工作和测试执行之后的清理工作。…

【P42】JMeter 运行时间控制器(Runtime Controller)

文章目录 一、运行时间控制器(Runtime Controller)参数说明二、测试计划设计 一、运行时间控制器(Runtime Controller)参数说明 可以通过时间来确定其后代元素运行多长时间,在时间范围内,后代元素会一直运…

八、(重点)视图集ModelViewSet自定义action路由routers

上一章: 七、Django DRF框架GenericAPIView--搜索&排序&分页&返回值_做测试的喵酱的博客-CSDN博客 下一章: 九、DRF生成API文档_做测试的喵酱的博客-CSDN博客 1、View 最基础的视图类View 2、views.APIView class APIView(View): …

kafka 的内部结构和 kafka 的工作原理

基本设置 让我们开始安装kafka。下载最新的 Kafka 版本并解压缩。打开终端并启动 kafka 和 zookeeper。 $ cd $HOME $ tar -xzf kafka_<version>.tgz $ cd kafka_<version> $ bin/zookeeper-server-start.sh config/zookeeper.properties # open another termina…

Canvas画布基本功能及实现网页签名功能

canvas 简介 <canvas> 是 HTML5 新增的&#xff0c;一个可以使用脚本(通常为 JavaScript) 在其中绘制图像的 HTML 元素。它可以用来制作照片集或者制作简单(也不是那么简单)的动画&#xff0c;甚至可以进行实时视频处理和渲染。和所有 DOM 元素一样&#xff0c;拥有自己…

Elasticsearch:数据是如何被写入的?

在我之前的文章 “Elasticsearch&#xff1a;索引数据是如何完成的”&#xff0c;我详述了如何索引 Elasticsearch 的数据的。在今天的文章中&#xff0c;我将从另外一个视角来诠释如何写入数据到 Elasticsearch。更多关于 Elasticsearch 数据操作&#xff0c;请阅读文章 “Ela…

实体店引流获客系统模式开发详解

随着互联网的日益发展&#xff0c;实体店的处境变得越来越艰难&#xff0c;获客难和销量差成为了实体店最头疼的两大问题。面对这种情况&#xff0c;一味固步自封是不行的&#xff0c;最好还是顺应潮流&#xff0c;结合一款合适的商业模式&#xff0c;来帮助自己快速引流获客和…

深入理解设计原则之接口隔离原则(ISP)【软件架构设计】

系列文章目录 C高性能优化编程系列 深入理解软件架构设计系列 深入理解设计模式系列 高级C并发线程编程 LSP&#xff1a;接口隔离原则 系列文章目录1、接口隔离原则的定义和解读2、案例解读3、如何判断一个接口是否符合接口隔离原则&#xff1f;小结 1、接口隔离原则的定义和…

canal server 标准化集群搭建(完结)

4.2. 创建 server 所属集群&#xff1a;选择刚才添加的 “集群名称” server 名称&#xff1a; server_1、server_2、server_3 依次类推 server ip&#xff1a;server 的 ip 地址 admin 端口&#xff1a;canal server 与 canal admin 的通信端口&#xff0c;非生产环境从 2…

云南LED、LCD显示屏系统建设,户外、室内广告大屏建设方案

LED大屏幕显示系统是LED高清晰数字显示技术、显示单元无缝拼接技术、多屏图像处理技术、信号切换技术、网络技术等科技手段的应用综合为一体&#xff0c;形成一个拥有高亮度、高清晰度、技术先进、功能强大、使用方便的大屏幕投影显示系统。通过大屏幕显示系统&#xff0c;可以…

3.1 矩阵连乘问题

博主简介&#xff1a;一个爱打游戏的计算机专业学生博主主页&#xff1a; 夏驰和徐策所属专栏&#xff1a;算法设计与分析 学习目标&#xff1a; 如果我要学习动态规划中的矩阵连乘问题&#xff0c;我会采取以下学习方法&#xff1a; 1. **理解问题的背景和目标&#xff1a;首…

【MySQL】如何速通MySQL(2)

&#x1f4cc;前言&#xff1a;本篇博客介绍如何速通MySQL的第二篇&#xff0c;主要介绍Mysql中主要的基础的入门&#xff0c;学习MySQL之前要先安装好MySQL&#xff0c;如果还没有安装的小伙伴可以看看博主前面的博客&#xff0c;里面有详细的安装教程。或者看一下下面这个链接…