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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Linux | Linux卸载和安装MySQL(Ubuntu版)

本期给大家带来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


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


9ee2900b9a0145708a9bdfdce3b7f864.png


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

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


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密码,

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


ee0b4744d8804947945aaa8f88f7be44.png

安装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设定的密码:

1. Securing the MySQL server deployment.
2. 
3. 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,进行连接测试:



2d223f90657946b4b0bd75aa33a6342a.png


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

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

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

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



df47b58ed00b4f759112a3d9fe563845.gif



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3天前
|
Ubuntu 数据安全/隐私保护
在UBUNTU虚拟机上安装R软件包
在UBUNTU虚拟机上安装R软件包
|
3天前
|
关系型数据库 MySQL Linux
Linux联网安装MySQL Server
Linux联网安装MySQL Server
13 0
|
3天前
|
存储 编解码 Ubuntu
0-零基础安装ubuntu(超详细安装步骤)
0-零基础安装ubuntu(超详细安装步骤)
|
3天前
|
关系型数据库 MySQL Linux
centos7安装mysql-带网盘安装包
centos7安装mysql-带网盘安装包
33 2
|
4天前
|
Ubuntu Linux 定位技术
手把手教你优雅的安装虚拟机 Ubuntu —— 图文并茂
手把手教你优雅的安装虚拟机 Ubuntu —— 图文并茂
|
7天前
|
关系型数据库 MySQL 数据库
Docker安装MySQL
Docker安装MySQL
14 1
|
7天前
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL 安装及连接
MySQL 安装及连接
25 0
|
11天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
11天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
8天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
30 9