Nextcloud의 누락된 데이터베이스 인덱스 경고를 지우세요
Nextcloud의 OCC 복구 기능을 안전하게 실행하고, 데이터베이스 변경 사항을 미리 보고, 경고가 계속 표시되는 이유를 확인하십시오.
Nextcloud의 "데이터베이스에 일부 인덱스가 누락되었습니다" 경고를 해결하려면 occ db:add-missing-indices올바른 Nextcloud 설치 환경에서 웹 서버 사용자 권한으로 다음 명령을 실행하세요. 이 명령은 Nextcloud 또는 설치된 앱에서 정의했지만 데이터베이스에 누락된 인덱스를 추가합니다. 최신 Nextcloud 35 설명서에 따르면, --dry-run실행 전에 SQL 쿼리를 미리 볼 수 있습니다.

데이터베이스 인덱스는 전체 테이블을 스캔하지 않고도 데이터베이스에서 행을 찾을 수 있도록 도와주는 조회 구조입니다. Nextcloud와 해당 앱은 쿼리 성능 향상을 위해 인덱스를 추가하는 경우가 있습니다. 대규모 테이블에 인덱스를 생성하는 데 시간이 오래 걸리고 실행 중에 성능에 영향을 미칠 수 있으므로, 업그레이드 시 이러한 작업은 관리자의 몫이 될 수 있습니다. 인덱스 누락 경고는 일반적으로 유지 관리 알림이며, 파일이나 데이터베이스 레코드가 손상되었다는 증거는 아닙니다.
Nextcloud의 최신 데이터베이스 명령 참조 설명서db:add-missing-indices 에는 예상되는 스키마에 있지만 현재 설치에 없는 인덱스를 추가하는 방법이 설명되어 있습니다 . 또한 최신 설명서 --dry-run에는 SQL 문 미리 보기 방법도 나와 있습니다. 정확한 인덱스는 Nextcloud 버전과 설치된 앱에 따라 다릅니다.
www-data데비안이나 우분투, apache페도라나 센티오스, http아치 리눅스에서는 운영 체제 계정이 흔히 사용됩니다.Nextcloud의 OCC 가이드에 따르면 OCC occ는 서버의 명령줄 인터페이스이며 파일 소유권과 권한 일관성을 유지하기 위해 HTTP 사용자 계정으로 실행해야 합니다. www-data설치에 다른 계정을 사용하는 경우 OCC를 무턱대고 사용하지 마십시오.
Debian 또는 Ubuntu에 표준 아카이브 설치를 하려면 Nextcloud 서버에서 셸을 열고 파일이 있는 디렉토리로 이동하세요 occ. 이 예에서는 를 사용하지만 /var/www/nextcloud, 사용자의 경로는 다를 수 있습니다.
cd /var/www/nextcloud
sudo -E -u www-data php occ db:add-missing-indices --dry-run
드라이 런은 데이터베이스를 변경하지 않고 실행될 SQL 문을 출력합니다. 출력을 읽고 예상되는 유지 관리 작업인지 확인하십시오. 해당 --dry-run옵션은 최신 Nextcloud 35 설명서에 설명되어 있습니다. 이전 버전에서 해당 옵션을 사용할 수 없는 경우, 임의로 옵션을 제거하기보다는 해당 버전의 명령 도움말을 확인하십시오.

변경 사항을 적용할 준비가 되면 콜론(:) 없이 명령어를 실행하세요 --dry-run.
sudo -E -u www-data php occ db:add-missing-indices
Nextcloud는 관련 테이블을 확인하고 진행 상황을 보고합니다. 완료될 때까지 기다리십시오. 큰 테이블의 처리 시간이 예상보다 오래 걸린다고 해서 프로세스를 중단하지 마십시오. 업그레이드 설명서에는 이 명령이 인스턴스가 온라인 상태를 유지하는 동안 실행할 수 있는 시간이 오래 걸리는 스키마 작업 중 하나로 나와 있으므로 일반적으로 이 복구 작업에는 유지 관리 모드를 활성화할 필요가 없습니다. 이 명령이 실행되는 동안 다른 데이터베이스 유지 관리 작업을 동시에 수행하지 마십시오.

별도의 데이터베이스 컨테이너가 아닌 Nextcloud 애플리케이션 컨테이너에서 실행하십시오 . 일반적인 계정 이름으로 occ지정된 컨테이너의 경우 명령은 일반적으로 다음과 같습니다.nextcloudwww-data
docker exec --user www-data -it nextcloud php occ db:add-missing-indices
<애플리케이션 컨테이너 이름> 부분을 실제 애플리케이션 컨테이너 이름으로 바꾸십시오 nextcloud. 이미지 또는 배포에서 다른 컨테이너 사용자, PHP 바이너리 또는 명령 래퍼를 사용하는 경우 해당 이미지의 설명서를 참조하여 HTTP 사용자 권한으로 명령을 실행하십시오.
명령 실행이 완료되면 관리 설정 > 개요를 새로 고치세요 . Nextcloud에서 인덱스를 인식하면 누락된 인덱스 메시지가 사라집니다. 명령을 다시 실행해도 됩니다. 그러면 누락된 인덱스를 다시 추가할 필요 없이 완료됩니다. 이렇게 하면 스키마 검사가 완료되었음을 확인할 수 있지만, 전체 데이터베이스 성능을 측정하는 것은 아닙니다.

occ오류가 발생할 수 있다고 안내합니다.sudo -E -u www-data php occ db:schema:check스키마 차이를 검사하려면 다음 명령을 실행하십시오. 현재 참조 문서에 따르면 이 검사는 버전 35에서 추가되었습니다. 이전 버전에서는 해당 버전에 대해 문서화된 진단 도구를 사용하십시오.CREATE INDEX앱 또는 데이터베이스 관리자가 정확한 스키마에 맞는 명령문을 제공하지 않는 한, 직접 명령문을 실행하지 마십시오.운영 서버의 경우, 경고가 사라지고 애플리케이션이 정상적으로 작동할 때까지 데이터베이스 백업을 보관하십시오. Nextcloud의 업그레이드 안내에는 온라인 유지 관리 작업과 선택적 모의 실행에 대한 내용이 포함되어 있습니다.
Nextcloud의 OCC 복구 기능을 안전하게 실행하고, 데이터베이스 변경 사항을 미리 보고, 경고가 계속 표시되는 이유를 확인하십시오.
PHP, Nginx 또는 Apache, 임시 저장소 및 시간 초과 설정을 조정하여 Nextcloud 브라우저의 대용량 파일 업로드를 허용하고, 어떤 제한 사항이 파일 업로드를 차단하는지 확인하십시오.
Nextcloud에서 실제로 사용하는 PHP 메모리 제한을 설정하고, 해당 서비스를 재시작한 다음, 관리자 개요에서 512MB 설정이 제대로 되었는지 확인하십시오.
Nextcloud의 S3 백엔드를 사용하여 호환되는 객체 스토리지 버킷을 마운트하고, 올바른 엔드포인트, 자격 증명, 액세스 범위 및 검증 단계를 설정하십시오.
영구 UUID 마운트, 유지 관리 모드, 검증된 복사본 및 원본 경로 심볼릭 링크를 사용하여 Linux Nextcloud 데이터 디렉터리를 외부 드라이브로 안전하게 이동합니다.
SQL 오류를 진단하고, 데이터베이스 연결을 확인하고, 중단된 마이그레이션을 안전하게 완료하여 업데이트 후 Nextcloud 액세스를 복원하세요.
Nextcloud의 OCC 명령어를 사용하여 서버 셸에서 관리자 암호를 재설정하는 방법을 안내합니다. 사용자 이름, 권한 및 외부 로그인 공급자에 대한 지침도 제공됩니다.
Apache, NGINX 또는 TLS 프록시에서 헤더를 설정하여 Nextcloud의 HSTS 경고를 해제한 다음 공개 HTTPS 응답을 안전하게 확인하십시오.
Nextcloud 서버 자체의 DNS, HTTPS, 프록시, TLS 또는 구성 문제로 인해 App Store 설치가 실패하는 경우 원인을 추적하십시오.
썸네일 작업을 제어된 백그라운드 일정으로 이동하고, 사용하지 않는 미리보기 크기를 줄이고, Nextcloud 서버에 과부하를 주지 않고 대기열을 검증하세요.