文档/ 数据库/ 数据库配置

数据库配置

在几秒内创建生产就绪的数据库。sh0 管理容器生命周期、网络和持久化存储,让你专注于应用开发。

支持的数据库

sh0 开箱即用支持五种数据库引擎。每种引擎都作为堆栈中的托管 Docker 容器运行,配有持久化卷和自动网络。

引擎默认端口可用版本使用场景
PostgreSQL543214, 15, 16, 17通用、高级查询、JSONB
MySQL33068.0, 8.4, 9.0传统 Web 应用、WordPress、Laravel
MariaDB330610.11, 11.2, 11.4MySQL 兼容的开源替代方案
Redis63797.0, 7.2, 7.4缓存、会话、队列、发布/订阅
MongoDB270176.0, 7.0, 8.0文档存储,灵活的数据结构
Supported database engines in the sh0 dashboard -- showing PostgreSQL, MySQL, MariaDB, Redis, and MongoDB cards

创建数据库

数据库在堆栈中创建。导航到你的堆栈,然后点击 添加服务 并选择 数据库。

  1. 打开你希望数据库所在的 堆栈。
  2. 点击右上角的 添加服务。
  3. 从服务类型选择器中选择 数据库。
  4. 选择引擎(例如 PostgreSQL)。
  5. 为数据库命名——此名称将成为内部网络上的容器主机名。
  6. 配置版本、凭据和资源限制。
  7. 点击 创建。
Create database dialog -- selecting PostgreSQL, entering a name, and configuring credentials
Tip
你选择的数据库名称将成为内部主机名。例如,将数据库命名为 mydb 意味着你的应用可以在同一堆栈中通过 mydb:5432 访问它。

选择版本

每个引擎提供多个主要版本。sh0 会拉取你选择版本的官方 Docker 镜像。你可以稍后更改版本,但主要版本升级需要数据迁移。

Warning
不支持降级数据库版本。请始终先在预览环境中测试主要版本升级。升级前请创建备份。

资源限制

sh0 允许你为每个数据库容器设置 CPU、内存和磁盘限制。这可以防止单个数据库消耗所有服务器资源。

CPU 和内存

设置 CPU 核心和内存分配的限制。默认设置适用于大多数工作负载,但你可以根据应用需求进行调整。

设置默认值描述
CPU 限制1.0 核容器可使用的最大 CPU 核心数
内存限制512 MB最大 RAM 分配
内存预留256 MB最低保证 RAM
Resource limits configuration panel -- CPU, memory limit, and memory reservation sliders

磁盘分配

数据库数据存储在持久化 Docker 卷上。默认没有磁盘配额——数据库可以使用主机上的可用磁盘空间。你可以在监控配置中设置软警告阈值,以便在磁盘用满前收到告警。

数据库状态与健康

sh0 持续监控你的数据库容器。控制台为每个数据库显示实时状态指示器。

状态含义
运行中容器已启动并接受连接
启动中容器正在启动
已停止容器已退出或已被停止
错误容器启动失败或崩溃
Database list in the stack view -- showing status indicators, versions, and resource usage

点击任意数据库可查看详细的健康信息,包括当前 CPU 和内存使用率、连接数、运行时间和最近的日志。

Database detail view -- health metrics, uptime, connections, and resource usage graphs

管理数据库

在数据库详情页,你可以执行常见的管理任务:

  • 启动 / 停止 / 重启 -- 控制容器生命周期。
  • 查看日志 -- 实时查看容器日志流。
  • 终端 -- 在数据库容器内打开 shell。
  • 编辑设置 -- 更改资源限制、版本或凭据。
  • 备份 -- 配置和触发备份(参见 备份与恢复)。
  • 删除 -- 移除数据库及其数据卷。
Danger
删除数据库会永久移除其数据卷。此操作不可撤销。删除前请务必创建备份。
Database management actions -- start, stop, restart, terminal, backups, and delete buttons