跳至正文
目录
网站

托管附加组件:Postgres 和 Redis

此内容为机器翻译,如需查阅原文请查看英语版本。

附加组件标签页让您无需为网站搭建或维护服务器,就能为网站附加托管的 PostgreSQL 数据库或托管的 Redis 实例。KapsuleHost 负责配置,为您提供连接字符串,并在您移除时彻底清理干净。

附加组件在哪里

打开网站,点击相应网站,在网站左侧菜单中打开应用分组,选择附加组件。该页面标题为受管附加组件。

目录中有两个选项:

附加组件典型用途
PostgreSQL非基于 MySQL 的应用程序的主要数据存储
Redis缓存、会话存储和后台任务队列

这些与标准虚拟主机网站自带的 MySQL 数据库是分开的。后者位于数据库标签页中,不需要任何配置:参见通过 SSH 隧道连接您的数据库。

KPanel 中某网站的受管附加组件页面

申请附加组件

  1. 在添加托管数据库部分找到对应的附加组件。
  2. 点击添加到网站。

请求会立即被记录,附加组件会出现在您的附加组件中,带有待处理标记和正在等待配置程序的提示。页面每十五秒自动刷新一次,因此您可以让它保持打开状态。

后台任务每隔几分钟就会处理一次待处理的请求,为您的网站创建专属数据库和专属用户,并回写一个加密的连接字符串。随后状态会变为已启用。

申请或移除附加组件需要 sites:write 权限。只读团队成员可以查看现有附加组件及其状态,但相关按钮会被隐藏。

每种类型每个网站限一个

一个网站可以拥有一个 PostgreSQL 附加组件和一个 Redis 附加组件。申请第二个相同类型的附加组件会被拒绝,并提示已配置过该附加组件;一旦某个选项已安装,目录中就会将其隐藏。当两者都已安装时,目录部分会显示所有可用附加组件均已安装。

查看状态

状态含义
待处理已请求,正在排队等待配置程序处理
配置中正在创建
已启用可以使用
失败配置未能完成;该行会显示原因
已删除已移除,不再列出

失败状态的行下方会显示实际的错误文本,而非通用提示信息。如果该原因不是您能够自行处理的,请在支持工单中原文引用它:参见提交支持工单。

获取连接字符串

一旦某个附加组件变为已启用状态,该行会显示一个经过掩码处理的连接字符串,密码部分以点号代替,这样您就能一目了然地确认主机和数据库名称,而不会暴露凭据。

点击复制连接即可将完整的连接字符串复制到剪贴板。它会在服务器端针对该次请求解密,绝不会显示在页面上,因此屏幕共享和截图都不会泄露它。每次查看操作都会写入网站的审计日志,并显示在网站活动日志中。

该字符串采用每种引擎常见的 URL 格式,包含为此网站创建的主机、端口、用户、密码和数据库名称。

在应用程序中使用它

将连接字符串粘贴到您的应用程序读取配置的位置。对于 Node.js 网站,合适的存放位置是生产环境下密钥标签页中,使用诸如 DATABASE_URL 或 REDIS_URL 这样的键名。

请勿将连接字符串硬编码到您会提交的文件中。它包含一个有效密码。如果它进入了 git 远程仓库,就必须将其视为已泄露,而唯一真正的解决办法是删除该附加组件并重新申请一个新的,因为无法从面板中就地轮换该凭据。

移除附加组件

点击该行上的删除。KPanel 会要求您确认,并直白地说明后果:这将移除该托管数据库,且数据无法恢复。

该行会立即被标记为已删除,配置程序会在下一次运行时清理底层数据库和用户。现有连接会在此清理过程中被终止。

托管附加组件在删除时不会进行任何备份,也无法撤销。如果其中有您想保留的内容,请在附加组件仍处于活动状态、连接字符串仍然有效时,先使用 pg_dump 或 redis-cli --rdb 将其导出。

在选项之间进行选择

使用 PostgreSQL,当您的应用程序需要关系型数据库,且是针对 Postgres 编写的:强约束、事务、JSON 列,以及原本需要额外搭建的全文搜索功能。

使用 Redis,用于可以随时丢弃的内容:缓存片段、速率限制计数器、会话存储和任务队列。将其视为快速且易失的存储,而非系统记录。

使用内置的 MySQL 数据库,用于 WordPress 以及任何已经针对 MySQL 编写的程序。为 WordPress 网站添加 Postgres 附加组件没有任何实际用处,因为 WordPress 无法与之通信。

故障排查

附加组件长时间处于待处理状态。 配置程序按计划运行,而非即时执行。请让页面保持打开状态,因为它会自动刷新,然后稍后查看。如果经过几次运行后仍未变化,请提交支持工单,并附上网站域名和附加组件类型。

配置失败。 请查看该行上的错误信息。删除失败的附加组件并重新申请,这样做是安全的:失败的行背后从未存在过实际运行的数据库。

点击复制连接没有任何反应。 某些浏览器在标签页未获得焦点时会阻止剪贴板写入操作。请先点击页面,然后再次点击该按钮。

应用程序无法连接。 请按顺序检查以下三项:附加组件状态是否为已启用、您是否复制了该字符串而非重新输入、以及您的应用程序读取的是否是您实际设置的值,而非之前某次部署遗留的旧值。通常需要重启应用程序才能使新配置生效。

重新部署后连接被拒绝。 请确认您配置中的连接字符串仍与此页面上的一致。删除并重新申请附加组件会生成新的用户和新的密码,因此旧的字符串将无法使用。

下一步该怎么做

这对您有帮助吗?

您是 AI 吗?以 Markdown 格式阅读本页

相关文章

通过 SFTP 连接:FileZilla、Cyberduck 与命令行SFTP(Secure File Transfer Protocol,安全文件传输协议)可让您直接访问服务器上网站的文件。本指南涵盖成功连接所需的全部内容,从查找凭据到排查错误。…SSL 证书与 HTTPS本文将以通俗易懂的语言说明什么是SSL、KapsuleHost如何为您的网站自动处理SSL,以及当证书出现问题时应如何处理。 --- 什么是 SSL,为什么它很重要?…网站:从何处开始KapsuleHost的网站托管如何运作、一个站点的每个标签页上有什么内容,以及针对您眼前的任务应该阅读哪一篇指南。 托管站点的一切都在KPanel侧边栏的网站中管理。…网站正常运行时间监控KapsuleHost 上的每个网站都会每 60 秒自动检查一次,"正常运行时间"标签页会显示检查结果:当前状态、正常运行时间百分比、响应时间,以及完整的事件历史记录。…

仍未解决?

询问了解您账户的 Kora,或联系我们的团队。

联系我们发送邮件