2013-07-15 1 views
0

Я задерживаю одно место в sql-сервере. У нас более 100 баз данных (.mdf). Я хочу скопировать обновленные данные в файл mdf в другое место. Предположим, что в первый раз я отключил все базы данных из местоположения C: \ Program Files (x86) \ Microsoft SQL Server \ MSSQL10_50.MSSQLSERVER \ MSSQL \ DATA и скопировал их в другое место, скажем C: \ и снова подключить все оригиналы файлы (отсоединяться из-за использования сервером sql). Теперь у меня есть копия на диске C. Я хочу, чтобы запрос или шаги регулярно копировали обновленные данные из всех баз данных из моего исходного местоположения в скопированное местоположение (которое находится на диске c). Я искал эту проблему и нашел решение, которое сначала остановит ваши услуги. Но я не могу этого сделать, потому что в моей компании обновлена ​​24-часовая смена и регулярные данные. Таким образом, нет никакого шанса сделать это. а также я проверил его с Batch-файлом.Как скопировать данные mdf в другой файл mdf в sql-сервере

xcopy /y /d /r /s /e "C:\Program Files (x86)\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestAxle.mdf" "c:\TestAxle.mdf"

Но показывая сообщение об ошибке Sharing Voilation также протестированы с командой ниже:

copy /y "C:\Program Files (x86)\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestAxle.mdf" "c:\TestAxle.mdf"

Но его также показывает файл используется другим процессом.

Скажите, пожалуйста, как мне регулярно копировать обновленные данные в файл mdf.

Благодаря

ответ

1

Это звучит для меня, как вы пытаетесь создать резервную копию. Если это так, вместо этого используйте команду резервного копирования. Хотя он не создает файл «mdf», резервная копия будет содержать все исходные файлы mdf, включая содержимое неиспользуемых страниц.

Резервное копирование с использованием команды CREATE BACKUP (http://msdn.microsoft.com/en-us/library/ms187510(v=sql.105).aspx), которую вы можете предпринять, не отключая службу или иным образом блокируя доступ к базе данных. (В большинстве случаев даже не наблюдается заметного влияния на производительность.)

Также имейте в виду, что резервная копия SQL Server гарантированно совместима с транзакциями. Копия файла mdf (по крайней мере, если он хранится без файла ldf) не гарантированно совместим с транзакциями.

Получение фактической копии файла mdf невозможно, так как файлы заблокированы службой. Единственный способ, которым я могу думать, - это репликация SAN.

Если эти два варианта не работают в вашем случае, сообщите о том, чего вы пытаетесь достичь, имея эти копии.

+0

Нет Я не хочу создавать резервные копии базы данных. Это похоже на резервное копирование. На самом деле я хочу динамически обновлять обновленные данные в процессе производства в моем резервном файле. Когда пользователь вставляет или обновляет данные из базы данных, любое расписание запускается в определенное время и проверяет, имеет ли таблицы базы данных новое обновление и копирует эти данные в мой файл резервной копии. Пожалуйста, дайте мне знать, как это сделать. –

+0

SQL Server знает три типа резервных копий: полный, дифференциальный и журнал. Полная резервная копия - это копия всего набора данных, дифференциальная резервная копия содержит все, что было изменено с момента последней полной резервной копии, а в резервной копии журнала содержится достаточно информации, чтобы воссоздать изменения, произошедшие со времени предыдущей резервной копии журнала. Место для поиска информации о том, как создать стратегию резервного копирования, - http://msdn.microsoft.com/en-us/library/ms191239(v=sql.105).aspx или просто поиск «Стратегия резервного копирования SQL Server ». –

Смежные вопросы