【MySQL 系列】在 Ubuntu 上安装 MySQL

Ubuntu 是一个使用非常广泛的 Linux 发行版。Ubuntu Server 则是云上最流行的服务器操作系统。本篇文章中,我们展示了在 Ubuntu 上安装 MySQL 8 的详细步骤。


文章目录

        • 1、先决条件
        • [2、在 Ubuntu 中安装 MySQL](#2、在 Ubuntu 中安装 MySQL)
          • 2.1、更新软件仓库包索引
          • 2.2、升级本地软件
          • [2.3、配置 MySQLPPA](#2.3、配置 MySQLPPA)
          • [2.4、安装 MySQL](#2.4、安装 MySQL)
          • [2.5、MySQL 安全配置](#2.5、MySQL 安全配置)
          • [2.6、通过 Systemd 管理 MySQL 服务器](#2.6、通过 Systemd 管理 MySQL 服务器)
          • [2.7、连接到 MySQL 服务器](#2.7、连接到 MySQL 服务器)

1、先决条件

请使用 root 用户,或者具有管理员权限的用户登录系统,完成以下操作。

2、在 Ubuntu 中安装 MySQL
2.1、更新软件仓库包索引

执行以下命令更新 Ubuntu 本地软件仓库的包索引。

bash 复制代码
sudo apt update
2.2、升级本地软件

输入以下命令升级系统:

bash 复制代码
sudo apt upgrade
2.3、配置 MySQLPPA

在 Ubuntu 中安装 Mysql 最方便方式是用 MySQL 自己的 APT 仓库。 APT 仓库中包含了 MySQL 的服务器和工具相关的软件。我们需要将此 MySQL APT 仓库添加到系统的包源列表中。

使用 wget 命令下载 MySQL APT 仓库包:

bash 复制代码
wget -c https://repo.mysql.com//mysql-apt-config_0.8.13-1_all.deb

使用 dpkg 命令安装 MySQL APT 仓库包:

bash 复制代码
sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
2.4、安装 MySQL

执行以下命令开始安装 MySQL:

bash 复制代码
sudo apt install mysql-server

这一步会安装一个不安全的 MySQL 服务器。我们将在下一步配置服务器的安全性。

安装完成后,我们先启动 MySQL 服务器:

bash 复制代码
sudo systemctl start mysql
2.5、MySQL 安全配置

执行以下命令调整 MySQL 服务器的安全性:

bash 复制代码
sudo mysql_secure_installation

这将会输出:

txt 复制代码
Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT 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 component?

Press y|Y for Yes, any other key for No:

这里时问你是否使用密码验证组件。输入 "Y" 并按下回车键。

txt 复制代码
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 个级别:

  • LOW: 密码长度至少 8 位
  • MEDIUM: 密码长度至少 8 位, 由数字、混合大小写的字母和特殊字符组成
  • STRONG: 密码长度至少 8 位, 由数字、混合大小写的字母、特殊字符和字典文件组成

请选择适合你的密码级别。在这里由于是用来开发和测试,我选择 0.

txt 复制代码
Please set the password for root here.

New password:

Re-enter new password:

在这里,输入两次密码。

txt 复制代码
Estimated strength of the password: 25
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y

如果你对密码强度满意,输入 Y 和回车键后继续。

txt 复制代码
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

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


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) : Y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


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

 - Removing privileges on test database...
Success.

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) : Y
Success.

All done!

在这里,上面所有问题都输入 Y 。然后完成整个配置过程。

2.6、通过 Systemd 管理 MySQL 服务器

安装完成后,MySQL 服务就会自动启动。我们可以通过以下几个命令查看 MySQL 服务的状态,启动、停止、重启 MySQL 服务器:

  • 查看 MySQL 服务器状态: sudo systemctl status mysql
  • 启动 MySQL 服务器: sudo systemctl start mysql
  • 停止 MySQL 服务器: sudo systemctl stop mysql
  • 重启 MySQL 服务器: sudo systemctl restart mysql
  • 配置 MySQL 服务器自启动: sudo systemctl enable mysql
2.7、连接到 MySQL 服务器

请使用以下命令连接到 MySQL 服务器:

bash 复制代码
mysql -u root -p

然后根据提示输入 root 帐户的密码,并按下回车键。验证通过后,将显示以下输出代表进入了 MySQL 控制台:

bash 复制代码
mysql>

使用 SHOW DATABASES 显示当前服务器中的所有数据库:

bash 复制代码
mysql> show databases;

这是输出:

txt 复制代码
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.05 sec)

上面显示的数据库,是 MySQL 服务器自带数据库。

相关推荐
七夜zippoe1 小时前
缓存与数据库一致性实战手册:从故障修复到架构演进
数据库·缓存·架构
计算机毕业设计木哥1 小时前
计算机毕设选题推荐:基于Java+SpringBoot物品租赁管理系统【源码+文档+调试】
java·vue.js·spring boot·mysql·spark·毕业设计·课程设计
一个天蝎座 白勺 程序猿2 小时前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode
绿箭柠檬茶2 小时前
Ubuntu 服务器配置转发网络访问
服务器·网络·ubuntu
风_峰2 小时前
Ubuntu Linux SD卡分区操作
嵌入式硬件·ubuntu·fpga开发
QQ3596773452 小时前
ArcGIS Pro实现基于 Excel 表格批量创建标准地理数据库(GDB)——高效数据库建库解决方案
数据库·arcgis·excel
学编程的小程3 小时前
突破局域网限制:MongoDB远程管理新体验
数据库·mongodb
波波烤鸭3 小时前
Redis 高可用实战源码解析(Sentinel + Cluster 整合应用)
数据库·redis·sentinel
l1t7 小时前
利用DeepSeek实现服务器客户端模式的DuckDB原型
服务器·c语言·数据库·人工智能·postgresql·协议·duckdb
太空的旅行者8 小时前
告别双系统——WSL2+UBUNTU在WIN上畅游LINUX
linux·运维·ubuntu