Обслуживание базы данных

Как один из вариантов обслуживания базы данных могут быть рекомендованы следующие мероприятия:

  1. Резервное копирование БД Docsvision.

    Резервное копирование рекомендуется делать не реже, чем раз в сутки.

  2. Очистка офлайн-сессий.

    Пользовательские сессии, находящиеся в офлайне не удаляются автоматически. Рекомендуется регулярно (2-3 раза в неделю) проверять количество записей в таблице dvsys_sessions с помощью скрипта SQL:

    USE [Имя_БД]
    SELECT *
    FROM [dbo].[dvsys_sessions]
    WHERE Offline='1'

    Результаты работы скрипта необходимо проанализировать. Если присутствуют офлайн-сессии, которые более не актуальны, их необходимо удалить из таблицы.

    Пример SQL скрипта, удаляющего офлайн-сессии, которые не активны более пяти дней:

    use [Имя_БД]
    DECLARE @dt datetimeoffset = DATEADD(day, -5, SYSDATETIME())
    delete sES
    from dvsys_sessions sES
    where sES.offline=1 and (sES.lastaccesstime < @dt)
  3. Дефрагментация и оптимизация индексов.

    Оптимизацию индексов рекомендуется делать не реже одного раза в неделю. Вариант оптимизации зависит от показателей фрагментации:

    • Для индексов с фрагментацией больше 30% — выполнять REBUILD.

    • Для индексов с фрагментацией больше 10% — выполнять REORGANIZE.

      Дефрагментацию и реорганизацию можно проводить с помощью скрипта indexes_update_proc, который самостоятельно определяет уровень фрагментации и, в зависимости от значения, выполняет REBUILD или REORGANIZE.

      Оптимизацию индексов следует выполнять в нерабочее время. Перед выполнением процедуры рекомендуется создать резервную копию БД.

  4. Проверка целостности таблиц и индексов базы данных (Database Integrity Check).

    Проверку рекомендуется делать не реже одного раза в месяц.

Общие правила обслуживания базы данных

  • При восстановлении основной БД также нужно восстанавливать сателлитные БД.

  • При остановке или перезапуске Microsoft SQL Server рекомендуется останавливать все службы Docsvision.

  • Если база данных участвует в процессе архивирования (или репликации) данных, то перед её обновлением архивирование (репликацию) необходимо отключить.

    Отключить процесс архивирования (репликации) необходимо и перед загрузкой в БД новых модулей Docsvision.

  • База данных Docsvision, созданная на редакции SQL Enterprise, не может быть перенесена резервным копированием на редакцию SQL Standard. Для получения дополнительных разъяснений обратитесь в службу технической поддержки.

  • Если для базы данных изменить уровень совместимости, например, при переносе на другую версию SQL Server, то при работе с базой могут возникнуть ошибки безопасности. Поэтому, при изменении уровня совместимости, необходимо выполнить обновление базы данных Docsvision и всех библиотек карточек.