Adobe Commerce上的数据库存储疑难解答

对于Adobe Commerce上遇到数据库问题的客户,本文是一个故障排除工具。 单击每个问题以显示故障诊断程序每个步骤的答案。 根据您的症状和配置,故障诊断程序将说明如何诊断数据库的空间和配置问题。

步骤1 — 标识存在空间问题的目录 step-1

是否因空间不足而出现/tmp问题?

这可以通过一系列症状来指示,包括/tmp装载已满、站点已关闭或无法通过SSH连接到节点。 您可能还会遇到诸如​ 设备(28)上已没有剩余空间 ​之类的错误。 有关因/tmp已满导致的错误列表,请查看/tmp装入已满

还是由于缺少空间而导致/data/mysql问题? 这也可能由各种症状指示,包括站点中断、客户无法将产品添加到购物车、与数据库的连接失败以及类似​ SQLSTATE[08S01]的条码错误:通信链接失败: 1047 WSREP。 有关因磁盘空间不足MySQL导致的错误列表,请参阅Adobe Commerce上云基础架构上的MySQL 磁盘空间不足

如果不确定您是否存在磁盘空间问题并且您拥有New Relic帐户,请转到New Relic基础架构监视主机页面。 从该位置,单击​ 存储 ​选项卡,将​ 图表显示 ​下拉列表从5个结果更改为20个结果,并在表中查找磁盘使用率在%图表或表中是否较高。 有关更多详细步骤,请参阅[New Relic Infrastructure Monitoring > Storage选项卡]https://docs.newrelic.com/docs/infrastructure/infrastructure-ui-pages/infra-hosts-ui-page/#storage)。

如果您出现上述任何症状,请检查索引节点的状态,确保这不是由文件编号问题引起的。 为此,请在CLI/终端中运行以下命令:
df -ih

IUse% > 90%吗?

a.是 — 这是由于文件过多所致。 查看在磁盘空间不足时安全删除文件,云基础架构上的Adobe Commerce中安全删除文件的步骤。 完成这些步骤后,请继续执行步骤2。 如果要请求更多空间,请提交支持票证
b.否 — 检查空间。 在CLI/终端中运行df -h | grep mysql,然后运行df -h | grep tmp,以检查/tmp/data/mysql目录中的磁盘空间使用情况。 继续执行步骤3

步骤2 — 检查磁盘空间 step-2

检查磁盘空间使用情况?

减少文件数后,在CLI/终端中运行df -h | grep mysql,然后运行df -h | grep tmp以检查/tmp/data/mysql中的磁盘空间使用情况。 /tmp/data/mysql的使用率是否大于70%?

a.是 — 继续执行步骤3
b.否 — 查询可能会耗尽可用存储。 这可能会使节点崩溃,从而终止查询并删除tmp文件。 在MySQL CLI中检查SHOW PROCESSLIST;的输出以查找可能导致问题的查询。 提交支持票证,请求更多空间。

步骤3 — 识别高使用率的目录 step-3

哪个目录的使用率超过70%?

哪个目录的使用率超过70%? /tmp/data/mysql

note note
NOTE
默认情况下,数据库tmpdir写入/tmp。 要检查您的数据库配置是否仍保留此默认值,请在MySQL CLI中运行以下命令: SHOW VARIABLES LIKE "TMPDIR";如果数据库tmpdir仍在写入/tmp,您将在“值”列中看到/tmp

a. /tmp — 继续执行步骤4
b. /data/mysql — 继续执行步骤5

步骤4 — 故障排除/tmp mount full step-4

疑难解答/tmp装载已满

对Adobe Commerce进行/tmp装载完整故障诊断,向下滚动文章,并尝试解决方案和最佳实践。 然后在CLI/终端中运行df -h | grep mysql,然后运行df -h | grep tmp,以检查/tmp/data/mysql目录中的磁盘空间使用情况
  < 70%已使用?

note note
NOTE
Troubleshoot /tmp mount full for Adobe Commerce中的解决方案是为未更改数据库tmpdir变量(默认写入/tmp)的商家设计的。 如果您更改了tmpdir值,则Adobe Commerce的/tmp mount full疑难解答中的说明将没有帮助。

答:是的,你已经解决了这个问题。
b.否 — 提交支持票证,请求更多空间。

步骤5 — 检查默认值 step-5

检查默认值

数据库配置可能不再为原始默认值。 通过在MySQL CLI SELECT @@DATADIR;中运行来查找数据库tmpdir配置。 如果输出/data/mysql/,则数据库tmpdir现在正在写入/data/mysql/。 在云基础架构上的Adobe Commerce上MySQL 磁盘空间不足中,按照以下步骤来尝试增加此目录中的空间。 然后在CLI/终端中运行df -h | grep mysql,然后运行df -h | grep tmp以检查/data/mysql/tmp中的磁盘空间使用情况。
  < 70%已使用?

答:是的,你已经解决了这个问题。
b.否 — 提交支持票证,请求更多空间。

返回步骤1

相关阅读

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a