Adobe Commerce의 데이터베이스 스토리지 문제 해결사
이 문서에서는 Adobe Commerce의 데이터베이스 스토리지 문제를 진단하고 해결하기 위한 단계별 문제 해결 안내서를 제공합니다. /tmp 및 /data/mysql의 공간 부족, inode 소진 및 기본값이 아닌 MySQL tmpdir과 같은 구성 변경과 관련된 근본 원인을 식별하는 데 도움이 됩니다. 각 단계에서는 진단 질문을 제시하고 답변을 기반으로 관련 명령, 로그 또는 설명서로 안내합니다.
설명 description
환경
클라우드 인프라의 Adobe Commerce
문제/증상
- 데이터베이스 스토리지 문제로 인한 사이트 가동 중단 또는 다운타임
- 장치(28)에 남아 있는 공간이 없음과 같은 오류
- 전체
/tmp마운트로 인해 노드에 SSH할 수 없습니다. /tmp또는/data/mysql디렉터리의 높은 디스크 사용량- 고객이 장바구니에 제품을 추가할 수 없음
- 데이터베이스 연결 실패
- SQLSTATE
[08S01]과(와) 같은 Galera 클러스터 오류 : 통신 링크 실패: 1047 WSREP - 쿼리가 사용 가능한 스토리지를 소진하고 노드 충돌을 야기함
IUse% > 90%(으)로 표시된 Inode 소모(파일이 너무 많음)
해결 방법 resolution
1단계 - 공간 문제가 있는 디렉터리 식별
/tmp에 문제가 있습니까?이는 다음을 포함한 다양한 증상으로 나타낼 수 있습니다.
/tmp마운트가 꽉 찼습니다.- 사이트 중단 또는 중단
- 노드에 SSH할 수 없음
- 장치(28)에 남아 있는 공간이 없음과 같은 오류
/tmp이(가) 가득 차서 발생하는 오류 목록을 보려면 /tmp mount full을 검토하십시오.
또는 공간 부족으로 인해 /data/mysql 문제가 발생했습니까? 증상은 다음과 같습니다.
- 사이트 중단
- 고객이 장바구니에 제품을 추가할 수 없음
- 데이터베이스 연결 실패
- 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에 쓰는 경우 Value 열에 /tmp이(가) 표시됩니다.
4단계 - /tmp 마운트 문제 해결 가득 참
Adobe Commerce에 대한 /tmp 마운트 전체 문제 해결을(를) 따르십시오. 솔루션을 적용한 후 CLI/터미널에서 를 실행합니다.
| code language-none |
|---|
|
사용량은 < 70%입니까?
- 예 - 문제가 해결되었습니다.
- 아니요 - 지원 티켓을 제출하여 더 많은 공간을 요청하세요.
참고: Troubleshooting /tmp mount full의 솔루션은 기본적으로 /tmp에 쓰는 데이터베이스 tmpdir의 변수를 변경하지 않은 판매자를 위해 설계되었습니다. tmpdir 값을 변경한 경우 문제 해결 /tmp 마운트 전체의 지침은 도움이 되지 않습니다.
5단계 - 기본값 확인
데이터베이스 구성이 더 이상 원래 기본값이 아닐 수 있습니다. MySQL 명령줄 클라이언트에서 실행하여 데이터베이스 tmpdir 구성을 찾습니다. SELECT @@DATADIR;
/data/mysql/이(가) 출력되면 tmpdir이 /data/mysql/에 씁니다. 클라우드 인프라의 Adobe Commerce에서 MySQL 디스크 공간이 부족함의 단계에 따라 공간을 늘리십시오. 그런 다음 CLI/터미널에서 를 실행합니다.
| code language-none |
|---|
|
사용량은 < 70%입니까?
- 예 - 문제가 해결되었습니다.
- 아니요 - 지원 티켓을 제출하여 더 많은 공간을 요청하세요.