Инструменты пользователя

Инструменты сайта


uniserver:journal_delete_photo

Администрирование. Чистка (урезание) базы, удаление старых фото и графиков

Ручное урезание базы, чистка фотоснимков и графиков за прошлый период. Внимание!!! Данные операции следует выполнять только администратору.


  1. Устанавливаем ПО SQLiteStudio

Требуемая версия SQLiteStudio 3.3

  1. Остановить службу UniServer Auto

    stopservice.jpg
  2. Заходим в папку Data и делаем резервные копии баз AutoScaleJournal1.db и AutoScaleJournal1Blob.db

    copybd.jpg
  3. Запустить ПО SQLiteStudio. Добавляем базы AutoScaleJournal1.db и AutoScaleJournal1Blob.db (через меню «Database → Open a database»)

    По умолчанию путь к базам данных: C:\VesySoft\UniServerAUTO\BIN\Data

    opendb.jpg
    Подключаемся к базам данных. Выделяем левой кнопкой мыши по очереди базы и нажимаем «Сonect to the database»

  4. Откроем редактор SQL в пункте меню «Tools → Open SQL editor»

    opensql.jpg

  5. Удалим непосредственно блобы (фото и графики) в базе AutoScaleJournal1Blob.db в таблице BlobData

    Напишем следующий SQL запрос, с указанием нужной даты, по которую удаляться все старые записи:

    delete from AutoScaleJournal1Blob.BlobData
      where (CODE =
        (select CODE from AutoScaleJournal1.Journal as ASJournal
            where (DATETIME_CREATE < '2020-03-18T11:15:00.000') and
                  (CODE =  AutoScaleJournal1Blob.BlobData.CODE)
            LIMIT 1
        )
      )

    Нажать кнопку выполнить запрос
    request1.jpg

  6. Удалим ссылки на блобы в базе AutoScaleJournal1.db в таблице BlobInfo

    Напишем следующий запрос с указанием нужной даты:

    delete from AutoScaleJournal1.BlobInfo
      where (CODE =
        (select CODE from AutoScaleJournal1.Journal as ASJournal
            where (DATETIME_CREATE < '2020-03-18T11:15:00.000') and
                  (CODE =  AutoScaleJournal1.BlobInfo.CODE)
            LIMIT 1
        )
      ) 

    В статусе будет примерно такое: Запрос выполнен за 0.007 секунд. Затронуто строк: 10.
    Оба запроса отработали верно.
  7. Упакуем обе базы, чтобы уменьшить их размер. Выделяем левой кнопкой мыши по очереди базы и нажимаем пункт меню «DataBase → VACUUM» для каждой базы.

    vacuumdb.jpg
  8. Выход из ПО SQLiteStudio. Запускаем службу UniServer Service. Смотрим результат.
uniserver/journal_delete_photo.txt · Последние изменения: 2025/05/22 15:22 — pavlasd