MySQL包安装 -- Debian系列(Apt资源库安装MySQL)

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
简介: 本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。

2.2.2 Debian系列

2.2.2.1 Apt资源库安装MySQL

2.2.2.1.1 MySQL 8.0

在“Ubuntu”上安装MySQL:

root@ubuntu2404:~# apt-cache madison mysql-server
mysql-server | 8.0.43-0ubuntu0.24.04.2 | https://mirrors.aliyun.com/ubuntu noble-updates/main amd64 Packages
mysql-server | 8.0.43-0ubuntu0.24.04.1 | https://mirrors.aliyun.com/ubuntu noble-security/main amd64 Packages
mysql-server | 8.0.36-2ubuntu3 | https://mirrors.aliyun.com/ubuntu noble/main amd64 Packages

root@ubuntu2404:~# apt install -y mysql-server

root@ubuntu2404:~# systemctl enable --now mysql

root@ubuntu2404:~# ls /var/lib/mysql
 auto.cnf        ca-key.pem       '#ib_16384_0.dblwr'  '#innodb_redo'        private_key.pem   ubuntu2404.pid
 binlog.000001   ca.pem           '#ib_16384_1.dblwr'  '#innodb_temp'        public_key.pem    undo_001
 binlog.000002   client-cert.pem   ib_buffer_pool       mysql                server-cert.pem   undo_002
 binlog.000003   client-key.pem    ibdata1              mysql.ibd            server-key.pem
 binlog.index    debian-5.7.flag   ibtmp1               performance_schema   sys

root@ubuntu2404:~# mysql -V
mysql  Ver 8.0.43-0ubuntu0.24.04.2 for Linux on x86_64 ((Ubuntu))

root@ubuntu2404:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Wed 2025-10-01 16:34:50 CST; 35s ago
   Main PID: 1925 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 2210)
     Memory: 363.8M (peak: 378.0M)
        CPU: 1.178s
     CGroup: /system.slice/mysql.service
             └─1925 /usr/sbin/mysqld

Oct 01 16:34:50 ubuntu2404 systemd[1]: Starting mysql.service - MySQL Community Server...
Oct 01 16:34:50 ubuntu2404 systemd[1]: Started mysql.service - MySQL Community Server.

root@ubuntu2404:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.43-0ubuntu0.24.04.2 (Ubuntu)

Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 8.0.43-0ubuntu0.24.04.2 for Linux on x86_64 ((Ubuntu))

Connection id:        8
Current database:    
Current user:        root@localhost
SSL:            Not in use
Current pager:        stdout
Using outfile:        ''
Using delimiter:    ;
Server version:        8.0.43-0ubuntu0.24.04.2 (Ubuntu)
Protocol version:    10
Connection:        Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:        /var/run/mysqld/mysqld.sock
Binary data as:        Hexadecimal
Uptime:            1 min 19 sec

Threads: 2  Questions: 5  Slow queries: 0  Opens: 119  Flush tables: 3  Open tables: 38  Queries per second avg: 0.063
--------------

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> exit
Bye

在“Debian 11/12”上安装MySQL:

去“https://www.mysql.com/”网站下载,选择“DOWNLOADS”,如图19所示。

t19

图19 下载APT仓库包

选择“MySQL Community (GPL) Downloads”,如图20所示。

t20

图20 下载APT仓库包

选择“MySQL APT Repository(MySQL APT资源库)”,如图21所示。

t21

图21 下载APT仓库包

然后选择”DEB Package“后面的”Download“,如图22所示。

t22

图22 下载APT仓库包

root@debian12:~# wget https://dev.mysql.com/get/mysql-apt-config_0.8.34-1_all.deb

root@debian12:~# dpkg -i mysql-apt-config_0.8.34-1_all.deb
Selecting previously unselected package mysql-apt-config.
dpkg: regarding mysql-apt-config_0.8.34-1_all.deb containing mysql-apt-config, pre-dependency problem:
 mysql-apt-config pre-depends on gnupg
  gnupg is not installed.  # 提示没有安装gnupg

dpkg: error processing archive mysql-apt-config_0.8.34-1_all.deb (--install):
 pre-dependency problem - not installing mysql-apt-config
Errors were encountered while processing:
 mysql-apt-config_0.8.34-1_all.deb

root@debian12:~# apt install -y gnupg

root@debian12:~# dpkg -i mysql-apt-config_0.8.34-1_all.deb

使用箭头键导航到 "MySQL Server & Cluster (Currently selected: mysql-8.4-lts)" 选项,然后按下 Enter 键,这将允许你选择具体的 MySQL 服务器版本,如图23所示。

t23

图23 选择MySQL版本

在版本选择界面中,选择 "mysql-8.0" 版本并按 Enter,如图24所示。

t24

图24 选择MySQL版本

使用箭头键导航到 "Ok" 选项,按下 Enter 键,确认并保存配置,如图25所示。

t25

图25 确认选择

# 替换国内镜像源
sed -i.bak 's|http://repo.mysql.com|https://mirrors.nju.edu.cn/mysql|g' /etc/apt/sources.list.d/mysql.list

root@debian12:~# apt update

root@debian12:~# apt-cache madison mysql-community-server
mysql-community-server | 8.0.43-1debian12 | http://repo.mysql.com/apt/debian bookworm/mysql-8.0 amd64 Packages
mysql-community | 8.0.43-1debian12 | http://repo.mysql.com/apt/debian bookworm/mysql-8.0 Sources

root@debian12:~# apt install -y mysql-community-server

输入MySQL root用户密码,然后按下 Enter 键,如图26所示。

t26

图26 输入MySQL root用户密码

在下面提示直接按下 Enter 键,如图27所示。

t27

图27 确认提示信息

选择“Use Strong Password Encryption (RECOMMENDED)”,然后按下 Enter 键,如图28所示。

t28

图28 选择默认身份验证插件

root@debian12:~# systemctl enable --now mysql

root@debian12:~# ls /var/lib/mysql
 auto.cnf     ca.pem              ib_buffer_pool   mysql            server-cert.pem
 binlog.000001     client-cert.pem      ibdata1           mysql.ibd        server-key.pem
 binlog.000002     client-key.pem       ibtmp1           performance_schema   sys
 binlog.index    '#ib_16384_0.dblwr'  '#innodb_redo'    private_key.pem        undo_001
 ca-key.pem    '#ib_16384_1.dblwr'  '#innodb_temp'    public_key.pem        undo_002

root@debian12:~# mysql -V
mysql  Ver 8.0.43 for Linux on x86_64 (MySQL Community Server - GPL

root@debian12:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Wed 2025-10-01 17:29:03 CST; 50s ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
   Main PID: 1923 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 2273)
     Memory: 368.3M
        CPU: 1.349s
     CGroup: /system.slice/mysql.service
             └─1923 /usr/sbin/mysqld

Oct 01 17:29:02 debian12 systemd[1]: Starting mysql.service - MySQL Community Server...
Oct 01 17:29:03 debian12 systemd[1]: Started mysql.service - MySQL Community Server.

root@debian12:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.43 MySQL Community Server - GPL

Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 8.0.43 for Linux on x86_64 (MySQL Community Server - GPL)

Connection id:        8
Current database:    
Current user:        root@localhost
SSL:            Not in use
Current pager:        stdout
Using outfile:        ''
Using delimiter:    ;
Server version:        8.0.43 MySQL Community Server - GPL
Protocol version:    10
Connection:        Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:        /var/run/mysqld/mysqld.sock
Binary data as:        Hexadecimal
Uptime:            1 min 16 sec

Threads: 2  Questions: 5  Slow queries: 0  Opens: 119  Flush tables: 3  Open tables: 38  Queries per second avg: 0.065
--------------

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> exit
Bye
2.2.2.1.2 MySQL 8.4

去“https://www.mysql.com/”网站下载,选择“DOWNLOADS”,如图29所示。

t29

图29 下载APT仓库包

选择“MySQL Community (GPL) Downloads”,如图30所示。

t30

图30 下载APT仓库包

选择“MySQL APT Repository(MySQL APT资源库)”,如图31所示。

t31

图31 下载APT仓库包

然后选择”DEB Package“后面的”Download“,如图32所示。

t32

图32 下载APT仓库包

在“Ubuntu"上安装MySQL:

root@ubuntu2404:~# wget https://dev.mysql.com/get/mysql-apt-config_0.8.34-1_all.deb

root@ubuntu2404:~# dpkg -i mysql-apt-config_0.8.34-1_all.deb

使用箭头键导航到 "MySQL Server & Cluster (Currently selected: mysql-8.4-lts)" 选项,然后按下 Enter 键,这将允许你选择具体的 MySQL 服务器版本,如图33所示。

t33

图33 选择MySQL版本

在版本选择界面中,选择 "mysql-8.4-lts" 版本(或其他你想要的版本)并按 Enter,如图34所示。

t34

图34 选择MySQL版本

使用箭头键导航到 "Ok" 选项,按下 Enter 键,确认并保存配置,如图35所示。

t35

图35 确认选择

# 替换国内镜像源
sed -i.bak 's|http://repo.mysql.com|https://mirrors.nju.edu.cn/mysql|g' /etc/apt/sources.list.d/mysql.list

root@ubuntu2404:~# apt update

root@ubuntu2404:~# apt-cache madison mysql-community-server
mysql-community-server | 8.4.6-1ubuntu24.04 | http://repo.mysql.com/apt/ubuntu noble/mysql-8.4-lts amd64 Packages
mysql-community | 8.4.6-1ubuntu24.04 | http://repo.mysql.com/apt/ubuntu noble/mysql-8.4-lts Sources

root@ubuntu2404:~# apt install -y  mysql-community-server

输入MySQL root用户密码,然后按下 Enter 键,如图36所示。

t36

图36 输入MySQL root用户密码

root@ubuntu2404:~# systemctl enable --now mysql

root@ubuntu2404:~# ls /var/lib/mysql
 auto.cnf        ca.pem               ib_buffer_pool   mysql                   public_key.pem    undo_002
 binlog.000001   client-cert.pem      ibdata1          mysql.ibd               server-cert.pem
 binlog.000002   client-key.pem       ibtmp1           mysql_upgrade_history   server-key.pem
 binlog.index   '#ib_16384_0.dblwr'  '#innodb_redo'    performance_schema      sys
 ca-key.pem     '#ib_16384_1.dblwr'  '#innodb_temp'    private_key.pem         undo_001

root@ubuntu2404:~# mysql -V
mysql  Ver 8.4.6 for Linux on x86_64 (MySQL Community Server - GPL)

root@ubuntu2404:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Fri 2025-10-03 10:55:17 CST; 36s ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
   Main PID: 2134 (mysqld)
     Status: "Server is operational"
      Tasks: 35 (limit: 2210)
     Memory: 420.3M (peak: 434.3M)
        CPU: 1.415s
     CGroup: /system.slice/mysql.service
             └─2134 /usr/sbin/mysqld

Oct 03 10:55:16 ubuntu2404 systemd[1]: Starting mysql.service - MySQL Community Server...
Oct 03 10:55:17 ubuntu2404 systemd[1]: Started mysql.service - MySQL Community Server.

root@ubuntu2404:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.4.6 MySQL Community Server - GPL

Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 8.4.6 for Linux on x86_64 (MySQL Community Server - GPL)

Connection id:        8
Current database:    
Current user:        root@localhost
SSL:            Not in use
Current pager:        stdout
Using outfile:        ''
Using delimiter:    ;
Server version:        8.4.6 MySQL Community Server - GPL
Protocol version:    10
Connection:        Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:        /var/run/mysqld/mysqld.sock
Binary data as:        Hexadecimal
Uptime:            57 sec

Threads: 2  Questions: 6  Slow queries: 0  Opens: 119  Flush tables: 3  Open tables: 38  Queries per second avg: 0.105
--------------

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql> exit
Bye

在"Debian 11/12"上安装MySQL:

root@debian12:~# wget https://dev.mysql.com/get/mysql-apt-config_0.8.34-1_all.deb

root@debian12:~# dpkg -i  mysql-apt-config_0.8.34-1_all.deb
dpkg: regarding mysql-apt-config_0.8.34-1_all.deb containing mysql-apt-config, pre-dependency problem:
 mysql-apt-config pre-depends on gnupg
  gnupg is not installed. # 提示没有安装gnupg

dpkg: error processing archive mysql-apt-config_0.8.34-1_all.deb (--install):
 pre-dependency problem - not installing mysql-apt-config
Errors were encountered while processing:
 mysql-apt-config_0.8.34-1_all.deb

root@debian12:~# apt install -y gnupg

root@debian12:~# dpkg -i  mysql-apt-config_0.8.34-1_all.deb

使用箭头键导航到 "MySQL Server & Cluster (Currently selected: mysql-8.4-lts)" 选项,然后按下 Enter 键,这将允许你选择具体的 MySQL 服务器版本,如图37所示。

t37

图37 选择MySQL版本

在版本选择界面中,选择 "mysql-8.4-lts" 版本(或其他你想要的版本)并按 Enter,如图38所示。

t38

图38 选择MySQL版本

使用箭头键导航到 "Ok" 选项,按下 Enter 键,确认并保存配置,如图39所示。

t39

图39 确认选择

# 替换国内镜像源
sed -i.bak 's|http://repo.mysql.com|https://mirrors.nju.edu.cn/mysql|g' /etc/apt/sources.list.d/mysql.list

root@debian12:~# apt update

root@debian12:~# apt-cache madison mysql-community-server
mysql-community-server | 8.4.6-1debian12 | http://repo.mysql.com/apt/debian bookworm/mysql-8.4-lts amd64 Packages
mysql-community | 8.4.6-1debian12 | http://repo.mysql.com/apt/debian bookworm/mysql-8.4-lts Sources

root@debian12:~# apt install -y  mysql-community-server

输入MySQL root用户密码,然后按下 Enter 键,如图40所示。

t40

图40 输入MySQL root用户密码

root@debian12:~# systemctl enable --now mysql

root@debian12:~# ls /var/lib/mysql
 auto.cnf     ca.pem              ib_buffer_pool   mysql               public_key.pem     undo_002
 binlog.000001     client-cert.pem      ibdata1           mysql.ibd           server-cert.pem
 binlog.000002     client-key.pem       ibtmp1           mysql_upgrade_history   server-key.pem
 binlog.index    '#ib_16384_0.dblwr'  '#innodb_redo'    performance_schema      sys
 ca-key.pem    '#ib_16384_1.dblwr'  '#innodb_temp'    private_key.pem           undo_001

root@debian12:~# mysql -V
mysql  Ver 8.4.6 for Linux on x86_64 (MySQL Community Server - GPL)

root@debian12:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Fri 2025-10-03 11:02:19 CST; 29s ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
   Main PID: 1907 (mysqld)
     Status: "Server is operational"
      Tasks: 35 (limit: 2273)
     Memory: 427.9M
        CPU: 1.051s
     CGroup: /system.slice/mysql.service
             └─1907 /usr/sbin/mysqld

Oct 03 11:02:18 debian12 systemd[1]: Starting mysql.service - MySQL Community Server...
Oct 03 11:02:19 debian12 systemd[1]: Started mysql.service - MySQL Community Server.

root@debian12:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.4.6 MySQL Community Server - GPL

Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 8.4.6 for Linux on x86_64 (MySQL Community Server - GPL)

Connection id:        8
Current database:    
Current user:        root@localhost
SSL:            Not in use
Current pager:        stdout
Using outfile:        ''
Using delimiter:    ;
Server version:        8.4.6 MySQL Community Server - GPL
Protocol version:    10
Connection:        Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:        /var/run/mysqld/mysqld.sock
Binary data as:        Hexadecimal
Uptime:            51 sec

Threads: 2  Questions: 6  Slow queries: 0  Opens: 119  Flush tables: 3  Open tables: 38  Queries per second avg: 0.117
--------------

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> exit
Bye

相关文章
|
8天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
7天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
337 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
19天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1331 8
|
7天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
329 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
6天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。
|
18天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1417 87
|
6天前
|
JavaScript Java 大数据
基于JavaWeb的销售管理系统设计系统
本系统基于Java、MySQL、Spring Boot与Vue.js技术,构建高效、可扩展的销售管理平台,实现客户、订单、数据可视化等全流程自动化管理,提升企业运营效率与决策能力。
|
7天前
|
弹性计算 安全 数据安全/隐私保护
2025年阿里云域名备案流程(新手图文详细流程)
本文图文详解阿里云账号注册、服务器租赁、域名购买及备案全流程,涵盖企业实名认证、信息模板创建、域名备案提交与管局审核等关键步骤,助您快速完成网站上线前的准备工作。
258 82
2025年阿里云域名备案流程(新手图文详细流程)