Linux | Linux卸载和安装MySQL(Ubuntu版)

news2024/9/25 13:16:09

最近又来到了Linux学习了,原因是要接触云服务器相关知识,

所以博主整理了一些关于Linux的知识,

欢迎各位朋友点赞收藏,天天开心丫,快乐写代码!

 Linux系列文章请戳  Linux教程专栏

 

 

目录

一、卸载MySQL

1.1 查看MySQL的依赖项

1.2 卸载mysql服务器和common 

1.3 再次检测依赖确保删除干净 

二、安装MySQL

2.1 更新软件库

2.2 安装MySQL服务器和客户端

2.3 配置MySQL

2.4 查看MySQL服务

 三、Linux下的MySQL数据库基本使用

3.1 启动MySQL数据库服务

3.2 重启MySQL数据库服务

3.3 停止MySQL数据库服务

3.4 查看MySQL运行状态

3.5 设置MySQL服务开机自启动

3.6 停止MySQL服务开机自启动

3.7 修改MySQL的配置文件

四、修改密码和访问权限

4.1 修改密码

4.2 开放权限

五、使用Navicat连接测试


本期给大家带来Ubuntu版的Linux安装MySQL数据库,话不多说,上教程!

全篇可以分为四个部分,每一个部分都是细节满满,如果本篇教程对你有帮助,欢迎点赞评论收藏!

一、卸载MySQL

看到这里可能有人会觉得疑问

为什么要卸载MySQL?我不是还没安装MySQL吗?注意,这里针对的是那些曾经尝试过安装MySQL,但是没有安装成功的小伙伴!

如果你之前从来没有安装过MySQL,请直接跳转到第二步!

为了防止进行下面的二、三、四步骤出现各种疑难杂症,这里的操作是很有必要的。

下面以MySQL5.7版本为例:

1.1 查看MySQL的依赖项

首先执行 su 命令进入超级用户,

这里补充一个小知识,超级用户切换回普通用户执行 exit 命令即可。

输入密码后执行下面这个命令,查看mysql依赖: 

dpkg --list | grep mysql

 之后会出现类似于这样的代码:

ii  mysql-client                               5.7.33-0ubuntu0.16.04.1                         all          MySQL database client (metapackage depending on the latest version)
ii  mysql-client-5.7                           5.7.33-0ubuntu0.16.04.1                         amd64        MySQL database client binaries
ii  mysql-client-core-5.7                      5.7.33-0ubuntu0.16.04.1                         amd64        MySQL database core client binaries
ii  mysql-common                               5.7.33-0ubuntu0.16.04.1                         all          MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-server                               5.7.33-0ubuntu0.16.04.1                         all          MySQL database server (metapackage depending on the latest version)
ii  mysql-server-5.7                           5.7.33-0ubuntu0.16.04.1                         amd64        MySQL database server binaries and system database setup
ii  mysql-server-core-5.7                      5.7.33-0ubuntu0.16.04.1                         amd64        MySQL database server binaries

1.2 卸载mysql服务器和common 

 然后卸载mysql-common,执行下面的代码:

sudo apt remove mysql-common

接下来我们卸载并清除mysql5.7,输入如下代码:

sudo apt autoremove --purge mysql-server-5.7

卸载时会出现下面的图形界面提示:

 通过键盘选择‘是’即可。 

接下来清除残留数据,输入如下代码:

dpkg -l | grep ^rc| awk '{print$2}'| sudo xargs dpkg -P

执行完之后会出现如下一些提示:

sh: 0: getcwd() failed: No such file or directory

 注意这不是报错,不用纠结,继续执行下一步。

1.3 再次检测依赖确保删除干净 

最后再次检查依赖项,输入如下代码:

dpkg --list | grep mysql

如果输出为空,那么表示mysql已经彻底卸载干净了,如果不为空那么我们还要继续进行删除卸载。

继续输入如下代码:

 sudo apt autoremove --purge mysql-apt-config

到底为止,Ubuntu上的mysql就已经彻底删除卸载干净!

二、安装MySQL

2.1 更新软件库

执行下面的命令进行更新软件库:

sudo apt-get update

2.2 安装MySQL服务器和客户端

安装MySQL服务器:

sudo apt-get install mysql-server

在安装过程中,系统将提示您创建root密码,

使用一个简单的密码并确保记住它,因为后面需要用到这个密码。

 安装MySQL客户端:

sudo apt-get install mysql-client

mysql-server和mysql-client区别

mysql-server 是MySQL核心程序将安装MySQL数据库服务器,用于生成管理多个数据库实例,持久保存数据并为其提供查询接口(SQL),供不同客户端调用。

mysql-client 是操作数据库实例的工具,允许连接到MySQL服务器使用该查询接口。它将为您提供MySQL命令行程序。

如果只需要连接到远程服务器并运行查询,只安装mysql-client就可以了。

如果是服务器只提供连接服务的只需要安装mysql-server。

博主的建议是都安装,因为以后想用什么连接方式都可以!

2.3 配置MySQL

下面执行这个命令:

sudo mysql_secure_installation

之后会出现类似这样的提示,输入MySQL的密码,也就是步骤2.2设定的密码

Securing the MySQL server deployment.

Enter password for user root: 

mysql_secure_installation脚本设置的东西有

1.是否需要安装验证密码插件,输入Y即可:

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

 2.设置密码强度的等级,输入0即可,因为现在是学习阶段,不用搞那么复杂:

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 

 3.是否需要修改root用户的密码,按需求,如果觉得步骤2.2的密码不好,

输入Y进行修改,如果不需要修改,输入其他按键回车:

Change the password for root ? ((Press y|Y for Yes, any other key for No) : 

4.是否删除匿名用户,输入Y即可:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : 

 5.是否允许远程登陆,输入Y即可,这样Windows才能连上Linux的数据库:

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) :

 6.是否删除测试数据库,输入Y即可,这个数据库我们不需要:

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : 

7.是否立即刷新表权限,输入Y即可:

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : 

当看到下面的提示时,代表数据库初始化配置完成! 

All done!

2.4 查看MySQL服务

执行下面的命令查看MySQL服务:

systemctl status mysql.service

将看到类似于以下内容的输出,代表此时MySQL服务已经在Linux系统上运行了!

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since 六 2023-02-11 11:56:58 CST; 12min ago
 Main PID: 12078 (mysqld)
   CGroup: /system.slice/mysql.service
           └─12078 /usr/sbin/mysqld

2月 11 11:56:57 sky-virtual-machine systemd[1]: Starting MySQL Community Server...
2月 11 11:56:58 sky-virtual-machine systemd[1]: Started MySQL Community Server.

 三、Linux下的MySQL数据库基本使用

3.1 启动MySQL数据库服务

sudo service mysql start
sudo systemctl start mysql.service

3.2 重启MySQL数据库服务

sudo service mysql restart

输入这个命令可能会报如下内容:

sh: 0: getcwd() failed: No such file or directory

 这里不用理会即可,执行下面这个重启命令。

sudo systemctl restart mysql.service

3.3 停止MySQL数据库服务

sudo service mysql stop
sudo systemctl stop mysql.service

3.4 查看MySQL运行状态

sudo service mysql status
sudo systemctl status mysql.service

3.5 设置MySQL服务开机自启动

sudo service mysql enable
sudo systemctl enable mysql.service

3.6 停止MySQL服务开机自启动

sudo service mysql disable
sudo systemctl disable mysql.service

3.7 修改MySQL的配置文件

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

这里有一个地方需要修改的是,将这个mysqld.cnf文件内容的一行注释掉,否则后面会导致Windows下的Navicat连接不上MySQL,报错2003!:

# bind-address          = 127.0.0.1

然后按下esc,输入冒号,输入wq保存退出。 

四、修改密码和访问权限

接下来我们就可以使用步骤2.2设置的密码登陆MySQL了!

4.1 修改密码

首先登陆MySQL:

mysql -uroot -p

输入密码后回车,进入到MySQL命令行模式,然后执行修改密码命令:

设置密码最低位数,根据需要进行设置,这里我设置的是最低6位。

set global validate_password_length=6;

 设置密码安全等级,便于学习交流,一般设置LOW,因为设置其他的上面的密码就不合规范了:

set global validate_password_policy=LOW;

 设置新密码,这里一定要设置一个符合最低位数及以上的密码,否则后面登陆会报错:

下面是我自己设置的密码,大家根据自己习惯设置即可。

set password=password('123456@');

4.2 开放权限

执行下面的命令:

grant all on *.* to 'root'@'%' identified by '123456@';

 意思就是授权所有权限给以root登陆的任何主机。

最后一步是很重要的,刷新权限: 

flush privileges;

到这里我们就做好了修改MySQL密码和开放了外部连接的权限!

可以输入exit;命令退出MySQL了。

接下来又到了至关重要的一步,重启MySQL服务,

命令在步骤3.2,执行之后,进入第五个环节测试。

五、使用Navicat连接测试

打开Windows下的navicat,进行连接测试:

 点击连接测试,连接成功!

至此,在Linux下安装MySQL(Ubuntu版)就成功了

如果对其中任何一个步骤有疑问

欢迎大家评论交流,一起答疑解决,谢谢大家。

 

 

 

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

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

相关文章

Angular4 中 ckeditor5 插件的使用

Angular4 中 ckeditor5 插件的使用 0 环境、新建项目 环境: Windows10Angular/cli1.4.10(安装 Angular 的过程略过,Angular4 版本比较古老,这也导致项目安装插件及其他操作比较麻烦) 1. ckeditor5 官方用法 基础用…

邂逅TypeScript基础语法

文章目录p26认识TypeScriptTypeScript的编译环境ts初体验ts环境搭建变量的定义p27number类型booleanArrayObjectSymbolanyunknownvoidnevertuple联合ts中文文档学习-非官方网站 p26 认识TypeScript TypeScript的编译环境 ts初体验 ts环境搭建 第二种方式 webpack.config…

论文阅读_图像生成文本_CLIP

name_en: Learning Transferable Visual Models From Natural Language Supervision name_ch: 从自然语言监督中学习可迁移的视觉模型 paper_addr: http://arxiv.org/abs/2103.00020 doi: 10.48550/arXiv.2103.00020 date_read: 2023-02-09 date_publish: 2021-02-26 tags: [‘…

【1138. 字母板上的路径】

来源:力扣(LeetCode) 描述: 我们从一块字母板上的位置 (0, 0) 出发,该坐标对应的字符为 board[0][0]。 在本题里,字母板为 board ["abcde", "fghij", "klmno", "pq…

文本比对工具【UltraCompare附安装包】Mac和Windows下载使用

UltraCompare 强大的文件,文件夹,PDF, Word和Excel比较。文件夹同步,二进制/十六进制比较。下载一个免费的全功能试用版,看看为什么。适用于Windows、Mac和Linux。 文章目录软件功能1、文本比较2、快速二进制比较3、智慧二进制比较…

Python快速上手系列--类--详解篇

本章是自动化测试的真正开始,因为在后续的过程中,你会接触到unittest框架,pytest框架,而不仅仅只是写一个函数selenium脚本这么简单了。1、创建类1.1、了解类我们首先了解一下,为什么要使用类,类可以拿来干…

2023同等学力申请硕士计算机综合国考

同等学力国考报名要开始了 2023年2月15日,中国教育考试网和“全国同等学力人员申请硕士学位管理工作信息平台”(https://tdxl.chsi.com.cn,联系服务电话:010-67410388)公布报名工作通知。考生须按照通知要求进行注册或…

Win11下Linux子系统迁移方法及报错解决

Win11 将Linux子系统从C盘迁移到其他盘Win11下Linux子系统迁移方法及报错解决1、下载LxRunOffline2、ERROR:directory is not empty 报错解决参考链接Win11下Linux子系统迁移方法及报错解决 C盘满了,Ubuntu子系统占了100多G怎么办?直接将子系…

相机出图画面一半清晰,一半模糊的原因是什么?

1、问题背景:在做项目的过程中,有遇到过几次,出图后画面是一半清晰,一半模糊的现象,再重新对焦也是一样。但换了个镜头后就好了,这应该是镜头的质量问题,但导致镜头出现这种问题的具体原因是什么…

【2023unity游戏制作-mango的冒险】-3.基础动作和动画API实现

👨‍💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 收录于专栏:unity游戏制作 ⭐mango的基础动作动画的添加⭐ 文章目录⭐mango的基础动作动画的添加⭐&#x1f…

本周大新闻|传微软解散工业元宇宙团队,MIT研发垂直堆叠全彩Micro LED

本周大新闻,AR方面,消息称微软解散工业元宇宙团队;德国AR公司Gixel GmbH亮相;Brilliant推出单片式附加形态AR眼镜;MIT研发垂直堆叠全彩Micro LED;谷歌XR串流正式上线。VR方面,索尼发布了PS VR2的…

【手写 Vuex 源码】第八篇 - Vuex 的 State 状态安装

一,前言 上一篇,主要介绍了 Vuex 模块安装的实现,针对 action、mutation、getter 的收集与处理,主要涉及以下几个点: Vuex 模块安装的逻辑;Vuex 代码优化;Vuex 模块安装的实现;Vue…

leetcode-每日一题-2335(简单,贪心)

自己打表看一下过程就可以发现,其实就是每次选两个大的进行--之后秒数加1即可现有一台饮水机,可以制备冷水、温水和热水。每秒钟,可以装满 2 杯 不同 类型的水或者 1 杯任意类型的水。给你一个下标从 0 开始、长度为 3 的整数数组 amount &am…

元学习(Meta Learning)最全论文、视频、书籍资源整理

Meta Learning,叫做元学习或者 Learning to Learn 学会学习,包括Zero-Shot/One-Shot/Few-Shot 学习,模型无关元学习(Model Agnostic Meta Learning)和元强化学习(Meta Reinforcement Learning)。元学习是人工智能领域&…

Redis基础篇

Redis基础篇 来自黑马的redis课程的笔记 【黑马程序员Redis入门到实战教程,深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目】 目录Redis基础篇一、初识Redis1.安装2. 数据结构二、Redis常见命令1. Redis通用命令2. string类型2.1 key的层级格式…

【成为架构师课程系列】预备架构 Pre-Architecture 的故事

目录 前言 Pre-architecture的故事 Pre-architecture 核心“四步法” 需求结构化 架构约束

1行Python代码去除图片水印,网友:一干二净

大家好,这里是程序员晚枫。 最近小明在开淘宝店(店名:爱吃火锅的少女),需要给自己的原创图片加水印,于是我上次给她开发了增加水印的功能:图片加水印,保护原创图片,一行…

伏并网低电压穿越技术

国内光伏并网低电压穿越要求 略: 低电压穿越方法 当前,光伏电站实现低电压穿越可通过两种方式,即增加硬件设备或者改变控制策略。本节对基于储能设备、基于无功补偿设备、基于无功电流电压支撑控制策略三种实现LVRT的典型方法进行介绍。 …

【MT7628】开发环境搭建-Fedora12一步一步设置共享文件夹

1.按照下图操作,打开设置界面 2.点击设置,弹出如下对话框

【博客620】prometheus如何优化远程读写的性能

prometheus如何优化远程读写的性能 场景 为了解决prometheus本地存储带来的单点问题,我们一般在高可用监控架构中会使用远程存储,并通过配置prometheus的remote_write和remote_read来对接 远程写优化:remote_write 远程写的原理&#xff1a…