如何在 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 中开始尝试一下吧。

相关推荐
程序新视界2 小时前
三种常见的MySQL数据库设计最佳实践
数据库·后端·mysql
没有bug.的程序员2 小时前
MySQL 安全与权限管理:从基础到生产级安全实践
java·mysql·安全·adb·权限
数据与人3 小时前
MySQL 8.0 InnoDB ReplicaSet 完整配置指南与切换
数据库·mysql·adb
合作小小程序员小小店3 小时前
web网页开发,在线%推荐算法学院培养计划,图书推荐,基于Python,FlaskWeb,用户和物品推荐MySql
python·mysql·算法·flask·推荐算法
用手码出世界4 小时前
MySQL存储过程
mysql
qq_417908444 小时前
com.mysql.cj.jdbc.Driver 解析
数据库·mysql
我要升天!6 小时前
MySQL表的内连和外连
android·mysql·adb
jingfeng5147 小时前
MySQL库的操作(ubuntu)
数据库·mysql
独行soc12 小时前
2025年渗透测试面试题总结-97(题目+回答)
网络·安全·web安全·adb·面试·渗透测试·安全狮
叱咤少帅(少帅)14 小时前
DML语句
mysql