Модификация базы данных внутри резервной копии для удаления дублирующегося тега ключа, чтобы избежать сбоя при восстановлении

Наш сайт снова работает! Спасибо всем за помощь.

Кажется, я решил эту проблему несколько дней назад, но был невнимателен при чтении сообщения об ошибке. Были два дублирующихся тега: ‘socialmedia’ и ‘social-media’. После исправления первого я не заметил, что сообщение об ошибке изменилось, учитывая, насколько похожи оба дублирующихся тега.

Вот процесс исправления этих двух ошибок:

1. Поиск таблицы тегов и дублирующегося тега

  • Загрузите резервную копию на вашу операционную систему. Данное руководство предназначено для Windows, но процесс будет примерно таким же на Linux.

  • Распакуйте все сжатые папки, что должно оставить у вас файл dump.sql и папку uploads.

  • Откройте файл dump.sql в текстовом редакторе; я использовал Visual Studio Code.

  • Найдите строку “COPY public.tags”, чтобы locate таблицу тегов. Она должна быть ближе к концу и выглядеть примерно так:

  • Либо просмотрите её вручную, либо скопируйте таблицу тегов в отдельный документ, где можно использовать функцию поиска для нахождения дублирующегося тега.

  • Сохраните исправленный файл dump.sql как dump.sql.

2. Порядок и имена файлов и папок должны быть идеальными при повторном сжатии.

  • После распаковки у вас должен быть файл dump.sql и папка uploads.

  • Щёлкните правой кнопкой мыши на файле dump.sql, выберите 7zip и «Добавить в архив».

  • Выберите формат архива gzip, оставив имя файла без изменений.

  • Выберите новый файл dump.sql.gz и папку uploads, затем щёлкните правой кнопкой мыши > 7zip > Добавить в архив > Формат архива: tar. Убедитесь, что имя файла точно совпадает с именем исходной резервной копии; оно должно выглядеть примерно так: ‘public-happiness-2023-07-25-033857-v20220628031850’.

  • Выберите ваш новый файл .tar > 7zip > Добавить в архив > Формат архива: gzip. Убедитесь, что имя файла точно совпадает с именем исходной резервной копии; оно должно выглядеть примерно так: ‘public-happiness-2023-07-25-033857-v20220628031850’.

  • Ваш конечный результат должен быть файлом .tar.gz с тем же именем, что и ваша исходная резервная копия.

  • Загрузите его в панель администратора и восстановите вашу резервную копию.