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

Создание страховочных копий баз данных MS SQL.

Очень важно делать страховочные копии баз данных. Это позволит исключить риски потери данных в случае выхода из строя оборудования или действий пользователя. При этом лучше всего иметь несколько копий и на разных носителях. Выделите на сервере отдельный жесткий диск под страховочные копии, еще лучше если этот диск будет иметь зеркало, т.е. второй диск, полностью копирующий данные с первого диска.

Средствами SQL Server можно настроить сервер, чтобы каждый день, в определенное время автоматически делалась копия базы на выделенном диске сервера. И перезаписывать эту копию в соответствующий день недели. Тогда у Вас всегда будут полноценные копии за последние семь дней.
В добавок можно настроить создание разностных копий каждый час. Это позволит восстановить данные на определенный час и при этом не тратить много дискового пространства под их хранение.

Настройку автоматической архивации лучше производить в Microsoft SQL Server Managment Studio  в разделе Управление -> Планы обслуживания.

Для ручного копирования можно использовать утилиту «Администратор SQL» разработанную в Фолио
Утилита администрирования служит для следующих целей :

  1. Cоздание новых баз данных ФОЛИО на сервере и их удаление.
  2. Настройка паролей вхождения и пользователей, а также их принадлежности к определенным группам.
  3. Проведение страховочного копирования и восстановление данных (Backup/Restore).
  4. Проведение аварийной проверки и исправление частично испорченной базы данных.
  5. Замена серверной части программы ФОЛИО WinСклад при смене версии программы.
  6. Исполнение на сервере внешних запросов на языке SQL или процедур, находящихся в файле.

Восстановление баз данных

Восстановление может потребоваться для переноса базы на другой сервер или при повреждении базы данных.

Повреждение может произойти из-за каких-то необдуманных действий пользователя, например приеме документов с удаленном склада может произойти задвоение или массовое удаление документов. Администратор тоже может случайно испортить данные запустив непроверенный SQL-запрос.

Бывает, что жесткий диск подвел или отключение электричества — в итоге база повреждена. Хорошо, если есть свежая страховочная копия. Восстановление не займет много времени. Гораздо хуже, если оказалось, что страховочных копий нет… а база имеет статус SUSPECT

В этом случае нужно остановить службу SQL Server и скопировать файлы MDF и LDF базы в надежное место. Затем запустить службу SQL Server и переходить к восстановлению.
Воспользуемся командами восстановления:

Use master
go
sp_configure ‘allow updates’, 1
go
reconfigure with override
EXEC sp_resetstatus ‘Foliobase’;

ALTER DATABASE DataBaseName SET EMERGENCY
ALTER DATABASE Foliobase SET SINGLE_USER
DBCC CHECKDB (‘Foliobase’, REPAIR_FAST) WITH ALL_ERRORMSGS
DBCC CHECKDB (‘Foliobase’, REPAIR_REBUILD)
ALTER DATABASE Foliobase SET MULTI_USER

Use master
go
sp_configure ‘allow updates’, 0
go

где Foliobase — имя Вашей базы.

 

Еще можно попробовать отсоединить базу данных (Detach database), удалить журнал транзакций (файл с расширением ldf) и присоединить базу данных (Attach database) выбрав MDF базы. Это может сработать если MDF файл не поврежден, тогда база успешно будет восстановлена

 

Свяжитесь со мной, если Вам нужна помощь в настройке страховочного копирования или восстановления поврежденной базы