Ошибка восстановления БД при backup/restore
Модераторы: kdv, Alexey Kovyazin
Ошибка восстановления БД при backup/restore
У меня возникают ошибки в базе после backup/restore, если их выполнять когда, к базе подключены пользователи.
Следует ли отключать пользователей всякий раз при backup/restore.
Следует ли отключать пользователей всякий раз при backup/restore.
при бэккапе необязательно - но тогда инфа в бэкапе будет неактуальной на момент рестора - всё, что пользователи наколбасят за это время, не будет в бэкапеСледует ли отключать пользователей всякий раз при backup/restore
а если полный бэкап-рестор юез потери инфы, то обязательно отключать, причём ресторить не в файл боевой базы, а в сторонку, а потом боевую базу переименовывать (во избежание -))) и подменять свежеотресторенной.
а какие ошибки? ты случаем не поверх боевой базы ресторишь?
-
- Заслуженный разработчик
- Сообщения: 644
- Зарегистрирован: 15 фев 2005, 11:34
-
- Заслуженный разработчик
- Сообщения: 644
- Зарегистрирован: 15 фев 2005, 11:34
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
-
- Заслуженный разработчик
- Сообщения: 644
- Зарегистрирован: 15 фев 2005, 11:34
Я так и думал. Только все это у меня делается автоматом из бат файла.
Поэтому сделал так, чтобы пользователи не подключались во время бэкап/рестора:
1. Остановил Интербэйз сервис.
2. Переименовал файл базы, чтобы пользователи не могли подключиться.
3. Запустил Интербэйз сервис.
4. Сделал бэкап. Затем рестор в другой файл.
5.Остановил Интербэйз сервис. Преименовал старый файл базы. Преименовал новый файл базы.
6. Запустил Интербэйз сервис.
Все.
Если можно проще, подскажите как.
Такая схема имеет существенный недостаток.
Останов/запуск сервиса я делаю через net stop/net start.
Когда запускается net stop, он запускается как параллельнй процесс и управление в бат файле передается на следующую команду, а останов в это время может быть еще не выполнен, и в результате вся остальная цепочка в батике не срабатывает. Как этого избежать?
Поэтому сделал так, чтобы пользователи не подключались во время бэкап/рестора:
1. Остановил Интербэйз сервис.
2. Переименовал файл базы, чтобы пользователи не могли подключиться.
3. Запустил Интербэйз сервис.
4. Сделал бэкап. Затем рестор в другой файл.
5.Остановил Интербэйз сервис. Преименовал старый файл базы. Преименовал новый файл базы.
6. Запустил Интербэйз сервис.
Все.
Если можно проще, подскажите как.
Такая схема имеет существенный недостаток.
Останов/запуск сервиса я делаю через net stop/net start.
Когда запускается net stop, он запускается как параллельнй процесс и управление в бат файле передается на следующую команду, а останов в это время может быть еще не выполнен, и в результате вся остальная цепочка в батике не срабатывает. Как этого избежать?