第二章 数据库进阶

一句话概括这一章

数据库是“平时不起眼、出事要人命”的典型。1Panel 把 MySQL、PostgreSQL、Redis、MongoDB 的日常管理做成了图形界面,但进阶的关键不在点按钮,而在于:知道配置文件挂在哪、知道性能参数按什么调、知道备份恢复怎么演练、知道什么时候该上集群。

基础操作(建库、改密码、phpMyAdmin 管理数据库)我们默认你已经会了。这一章讲的是这四件事背后的门道。

这一章解决什么问题

小节 场景 一句话答案
2.1 MySQL 管理与调优 慢查询多、想改配置又怕起不来 配置文件挂在固定路径,改之前看当前状态,有预设优化方案
2.2 PostgreSQL / Redis / MongoDB 运维 不只会 MySQL,还有三种库要管 四种库的管理界面同构,但各自特性不同(尤其 Redis 持久化)
2.3 数据库备份与恢复演练 备份做了,但不确定能不能恢复 备份用 mysqldump/pg_dump,导入有格式要求,演练是唯一验证
2.4 数据库集群(企业版) 单库扛不住、要高可用 专业版/企业版可管 MySQL/PostgreSQL/Redis 主从,但别把复制当自动故障切换

先打通一个认知:1Panel 的数据库是“容器化”的

这一点很多熟手也没真正意识到:应用商店安装的数据库,都是 Docker 容器。

这个事实解释了后面一大堆现象:

现象 根源
127.0.0.1:3306 有时候连不上 容器网络和宿主机网络不是一回事,连接信息要按页面提示选
配置文件在 /opt/1panel/apps/... 容器配置文件挂载到宿主机
日志在“数据库设置 → 日志”里看 那是容器日志,不是宿主机系统日志
卸载数据库应用会影响数据库 数据库本身就是个应用

一句极其重要的提醒:连接数据库时,看页面上的【连接信息】按钮,它会根据本地容器、宿主机访问、远程访问三种场景给出不同的地址。别背 127.0.0.1。

四种数据库的能力对照

1Panel 对四种数据库的管理能力不是对等的,先看清楚边界:

能力 MySQL PostgreSQL Redis MongoDB
远程实例管理 支持 支持 不支持 支持
Web 管理工具 phpMyAdmin、Adminer PGAdmin4 Redis Commander Mongo Express
图形化性能调整 支持(含预设方案) 不支持表单式性能调整 支持(超时/连接数/内存) 不支持
当前状态指标 支持 不支持 支持 不支持
慢日志查看 支持 不支持 不支持 不支持
持久化配置 —— —— 支持(AOF/RDB) ——
集群(付费) 支持 支持 支持 不支持

发现规律了吗:MySQL 的管理最完整,Redis 侧重持久化和内存,MongoDB 最精简——官方文档里 MongoDB 的篇幅本身就短,能力也确实少一些。

远程实例是个被低估的能力:你已经有一台 RDS 或者别的机器上的数据库,也能纳进 1Panel 统一管理,不一定非得用应用商店装。MongoDB 甚至明确要求“保存前必须先点击连接测试”。

改配置前的三条铁律

这一章会反复出现配置修改,先把规矩立好:

铁律一:错误的配置会让数据库服务起不来。 官方文档每种库都写了同一条警告。这不是吓唬——MySQL 的 innodb_buffer_pool_size 设成超过机器内存,服务直接挂。

铁律二:有“恢复默认配置”这个后悔药。 配置页面通常提供恢复默认配置的功能。但它恢复的是默认值,不是你的业务最佳值,恢复后还要重新调。

铁律三:改前先备份,改后先看日志。 数据库配置改完,先在应用里跑一遍增删改查,别等用户反馈。

配置文件的位置(官方文档给出的默认挂载路径,记忆用):

数据库 配置文件
MySQL /opt/1panel/apps/mysql/[数据库名称]/conf/my.cnf
PostgreSQL /opt/1panel/apps/postgresql/[数据库名称]/data/postgresql.cnf
Redis /opt/1panel/apps/redis/[数据库名称]/conf/redis.conf

权限管理:一个常被忽略的安全细节

创建数据库时的访问权限有三个选项:

选项 含义 什么时候用
本地服务器(默认) 只允许本机连接 绝大多数情况,最安全
所有人 任何 IP 都能连 基本不要选
指定 IP 只允许列出的 IP 跨服务器调用时

“所有人”这个选项,生产环境几乎不应该出现。 数据库暴露在公网 + 弱密码,是服务器被打的最常见路径之一。

即使选了“指定 IP”,官方也提醒:要开外网访问,还得在防火墙里放行对应端口(MySQL 默认 3306)。也就是说,权限和防火墙是两道独立的门,两道都得上锁。

版本边界

这一章里唯一的付费功能是数据库集群(MySQL/PostgreSQL/Redis 主从部署),仅专业版和企业版可用,且需要许可证、节点管理能力和数据库集群权限。价格以官网为准。

社区版完全够用的场景:单机数据库、远程实例纳管、备份恢复、性能调优——这些日常运维一分钱不用花。

学完这一章你会获得什么

  • 敢改数据库配置,并且知道改错了怎么救回来;
  • 会按“当前状态”的指标做基础调优,而不是瞎猜参数;
  • Redis 持久化知道选 AOF 还是 RDB;
  • 有一套可执行的备份恢复演练流程;
  • 清楚集群能做什么、不能做什么。

更完整的参数说明建议对照 《1Panel 官方文档:功能手册》 的“数据库”章节。

下一节:我们从用得最多的 MySQL 讲起。