如何在 Debian 12 上安装 MySQL

下载 MySQL

Debian 12 中并不包含 MySQL 软件包,其已经被 MariaDB 替换,我们需要从 MySQL 官网进行下载安装。

如果您想安装 MariaDB ,可以看之前的这篇教程:如何在 Debian 12上安装 MariaDB

首选,进入 MySQL存储库下载页面,下载最新软件包。也可以在命令界面下使用wget命令下载最新的发行包。

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

其次,下载完成后,使用如下命令进行安装。

复制代码
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb

执行如上命令后,你会看到如下的MySQL 配置安装界面。

默认选择了 MySQL 8.0。

安装MySQL

我们将安装 MySQL 8.0 版, 通过按 Tab 键选择 "确定",然后按 Enter 键(如上图所示)。

使用以下命令更新软件包,并安装MySQL。

复制代码
sudo apt update
sudo apt install mysql-server

安装过程中将会弹出设置 MySQL root 密码的对话框,这一步先不设置,Tab键切换到 "OK" 继续,我们在下一章节中进行配置。

接下来,会显示一条消息,通知您有关新的 MySQL 8 身份验证的信息。

按照提示安装完成后,MySQL 服务会默认自动运行,我们可以通过命令查看服务运行状态:

复制代码
sudo systemctl status mysql

你可以看到如下内容的输出:

复制代码
● mysql.service - MySQL Community Server
  Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
  Active: active (running) since Fri 2024-01-14 13:16:27 CST; 18s ago
  ...

安全加固MySQL

MySQL 安装完成后,为了让 MySQL 更加安全,运行以下命令配置 MySQL root 密码并使安装的 MySQL 更安全。

复制代码
sudo mysql_secure_installation

系统将要求您配置 VALIDATE PASSWORD PLUGIN(验证密码插件),该插件用于测试 MySQL 用户密码的强度。 密码验证策略分为三个级别:低,中和强。 如果您不想设置验证密码插件,请按 Enter。

之后开始设置密码,以及询问是否移除 MySQL 中的 anonymous 用户,禁用 root 帐号远程登录等一些列为了 MySQL 加强安全的问题,所有内容如无个人特殊要求,默认建议都输入"y"后,回车。

命令行连接MySQL

在终端中可以输入mysql客户端命令来连接mysql服务:

选择默认的身份验证方法以root用户身份登录到MySQL服务器:

复制代码
mysql 

选择传统身份验证方法登录,请输入:

复制代码
mysql -uroot -p

这是输入之前设定的 MySQL root 帐号密码。

连接成功后你将会看到类似如下内容:

复制代码
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.1.0 MySQL Community Server - GPL
...
mysql>

现在你可以执行 MySQL 的数据库 SQL 语句进行操作了。

写在最后

在本教程中,你学习了如何在 Debian 12 服务器上安装 MySQL。你也知道了如何加固 MySQL 使其更安全,并通过 MySQL shell 连接 MySQL 服务。

如果你正需要学习在 Debian 12 中安装 MySQL,不妨在你自己的 VPS 中开始尝试一下吧。

相关推荐
Vect__2 小时前
MySQL 数据类型和约束:从字段设计到表结构建模
数据库·mysql
2501_916008893 小时前
HTTPS 抓包遇到证书绑定怎么办,使用 TraceEagle 解除 App 证书校验
网络协议·计算机网络·http·网络安全·ios·adb·https
Mico184 小时前
MySQL 8.0.35 基于GTID 主从复制安装增强半同步复制
android·mysql·adb
CodexDave16 小时前
MySQL事务隔离级别与MVCC机制解析
前端·数据库·mysql·nginx·性能优化·负载均衡
王琦031819 小时前
生产环境中使用通用二进制包安装
mysql
蓝田~21 小时前
MySQL慢查询怎么优化?B+Tree索引原理+MVCC读不阻塞写+EXPLAIN执行计划,从5秒到0.05秒
数据库·mysql
Herbert_hwt1 天前
MySQL学习前言:关于MySQL的历史与当下学习的必要性
mysql
时间的拾荒人1 天前
MySQL 视图详解
android·数据库·mysql
尽兴-1 天前
企业数据库选型与演进:Oracle、达梦、MySQL 与分库分表实践
数据库·mysql·oracle·分库分表
guodingdingh1 天前
从零启动 ruoyi-vue-pro 单体后端:JDK 8、MySQL、Redis 与常见报错排查0720
java·vue.js·mysql