데이터베이스 복원 중 index_users_on_username_lower 오류: 가져오기 실패

정말 미친 하루였지만, 저처럼 운이 진짜 진짜 안 좋으신 분들을 위해 제가 어떻게 모든 문제를 해결했는지 설명해 보겠습니다 :upside_down_face:

  1. 백업 파일을 다운로드하세요. 그리고 dump.sql 파일이 나올 때까지 몇 번 압축을 해제하세요

  2. vim과 같은 소프트웨어로 dump.sql 파일을 편집하세요 download : vim online

  3. 저는 SQL을 정말 못합니다. 올바른 테이블을 찾기 위해 username_lower,를 검색했습니다. users 테이블로 안내되었고, 거기서 "lea"를 검색했습니다. 두 개의 Lea 항목을 편집했습니다. 아마 훨씬 쉬운 방법이 있었을 겁니다. 하지만 기억하세요, 저는 SQL을 못합니다. 특히 1.5gb짜리 파일은요. 파일을 저장하세요.

  4. 7zip으로 dump.sql 파일을 gzip으로 압축하세요. dump.sql.gz라는 이름의 새 파일이 생성되어야 합니다

  5. :file_folder: /var/discourse/shared/standalone/backups/default/ 경로에 새 폴더를 만드세요. 저는 test를 사용했습니다

  6. 인터넷 연결이 좋다면, 백업 파일을 압축 해제했을 때 얻은 :file_folder: uploads 폴더를 업로드하고, 해당 폴더를 /var/discourse/shared/standalone/backups/default/test/ 안에 넣으세요
    6.1 저처럼 인터넷 연결이 안 좋다면, 서버에서 백업 파일 이름을 확인하고 이 명령어를 사용해야 합니다: tar xvzf /var/discourse/shared/standalone/backups/default/yourbackupfile.tar.gz -C /var/discourse/shared/standalone/backups/default/test
    6.2 test 폴더 안에는 dump.sql.gz 파일과 uploads 폴더가 있어야 합니다. 정상입니다.

  7. test 폴더에 있는 손상된 dump.sql.gz 파일을 대체하기 위해 dump.sql.gz 파일을 업로드하세요

  8. 서버에서: cd /var/discourse/shared/standalone/backups/default/test로 이동하세요

  9. 백업 파일을 다시 만들어야 합니다. 이전 백업 파일의 정확한 이름을 사용해야 합니다: tar -czvf yourbackupfile.tar.gz uploads/ dump.sql.gz

  10. ftp에서 :file_folder: /var/discourse/shared/standalone/backups/default/로 이동하여, 손상된 백업을 삭제하거나 다른 폴더로 이동하세요

  11. 새 백업 파일을 /var/discourse/shared/standalone/backups/default/로 이동하세요

  12. 백업을 복원하세요. 저는 이 방법을 선호합니다. 여기까지 오셨다면 쉽게 사용할 수 있을 겁니다: Restore a backup from the command line

백업이 성공해야 합니다 :sweat_smile:

쉬웠죠.