Adobe Commerce上的数据库存储疑难解答
本文提供了用于诊断和解决Adobe Commerce上数据库存储问题的逐步故障排除指南。 它有助于识别与/tmp和/data/mysql中缺少空间、inode用完以及配置更改(如非默认的MySQL tmpdir)相关的根本原因。 每个步骤都会显示一个诊断问题,并根据您的回答引导您查看相关命令、日志或文档。
描述 description
环境
云基础架构上的Adobe Commerce
问题/症状
- 由数据库存储问题导致的站点中断或停机
- 错误,例如设备(28)上已无剩余空间
- 无法通过SSH连接到节点,因为已装入
/tmp /tmp或/data/mysql目录中的磁盘使用率较高- 客户无法将产品添加到购物车
- 数据库连接失败
- galera群集错误,如SQLSTATE
[08S01]:通信链接失败: 1047 WSREP - 查询耗尽可用存储并导致节点崩溃
IUse% > 90%指示的Inode耗尽(文件太多)
解决方法 resolution
步骤1 — 标识存在空间问题的目录
/tmp问题?这可以通过一系列症状来指示,包括:
/tmp装载已满- 站点停止或中断
- 无法通过SSH连接到节点
- 错误,如设备上没有剩余空间(28)
有关因/tmp已满导致的错误列表,请查看/tmp装入已满。
还是由于缺少空间而导致/data/mysql问题? 症状包括:
- 站点中断
- 客户无法将产品添加到购物车
- 数据库连接失败
- Galera错误,如SQLSTATE
[08S01]:通信链接失败: 1047 WSREP
有关MySQL磁盘空间不足导致的错误列表,请参阅云基础架构上Adobe Commerce上的MySQL磁盘空间不足。
如果不确定您是否存在磁盘空间问题并且您拥有New Relic帐户,请转到New Relic基础架构监视主机页面。 从那里:
- 单击 存储 选项卡
- 将 图表显示 下拉列表从5个结果更改为20个结果
- 在“已用磁盘百分比”图表或表中查找表中磁盘使用率较高的表格
有关更多详细步骤,请参阅New Relic基础架构监控>存储选项卡。
如果您出现上述任何症状,请检查索引节点的状态,确保这不是由文件号问题引起的。 在CLI/终端中运行:
| code language-none |
|---|
|
IUse% >是90%吗?
-
是 — 文件太多。 查看在中安全删除文件的步骤在磁盘空间不足时安全删除文件。 完成这些步骤后,请继续执行步骤2。 如果要请求更多空间,请提交支持票证。
-
否 — 检查
/tmp和/data/mysql目录中的磁盘空间使用情况。 在CLI/终端中运行:code language-none df -h | grep mysql df -h | grep tmp
然后继续执行步骤3。
步骤2 — 检查磁盘空间
减少文件数后,在CLI/终端中运行以下命令以检查/tmp和/data/mysql中的磁盘空间使用情况。
| code language-none |
|---|
|
/tmp或/data/mysql的使用率是否大于70%?
-
是 — 继续执行步骤3。
-
否 — 查询可能耗尽可用存储。 这可能会使节点崩溃,从而终止查询并删除
tmp文件。 登录到MySQL命令行客户端并运行:code language-none SHOW PROCESSLIST;
检查输出中是否存在有问题的查询。 如果未解析,提交支持票证以请求更多空间。
步骤3 — 识别高使用率的目录
/tmp— 继续执行步骤4。/data/mysql— 继续执行步骤5。
注意:默认情况下,数据库tmpdir写入/tmp。 要检查数据库配置,请登录到MySQL命令行客户端并运行:
| code language-none |
|---|
|
如果tmpdir仍在写入/tmp,您将在“值”列中看到/tmp。
步骤4 — 故障排除/tmp mount full
请遵循疑难解答/tmp mount full for Adobe Commerce。 应用解决方案后,在CLI/终端中运行:
| code language-none |
|---|
|
使用率是否为< 70%?
- 是 — 问题已解决。
- 否 - 提交支持票证请求更多空间。
注意: 疑难解答/tmp装入完整中的解决方案是为未更改数据库tmpdir变量(默认写入/tmp)的商家设计的。 如果您更改了tmpdir值,则疑难解答/tmp mount full中的说明将没有帮助。
步骤5 — 检查默认值
数据库配置可能不再为原始默认值。 通过在MySQL命令行客户端中运行来查找数据库tmpdir配置: SELECT @@DATADIR;
如果输出/data/mysql/,则tmpdir正在写入/data/mysql/。 按照云基础架构上Adobe Commerce上的MySQL磁盘空间不足中的步骤增加空间。 然后在CLI/终端中运行:
| code language-none |
|---|
|
使用率是否为< 70%?
- 是 — 问题已解决。
- 否 - 提交支持票证请求更多空间。