Копирование баз данных SQL Server 2005
В настоящее время у нас есть один SQL-сервер (2005, на компьютере с Windows Server 2003) с 3 БД на нем, который я хотел бы просто скопировать, чтобы я мог провести на них тест для обновления. Я не думаю, что смогу сделать это с помощью мастера копирования БД, так как я запускаю свои тестовые серверы на виртуальных машинах и не имею их должным образом подключенных к сети. Я также не могу снять эту базу данных, так как она должна быть 24/7 для компании. Итак, я спрашиваю: есть ли способ просто скопировать БД и затем импортировать их непосредственно в другую установку SQL-сервера (2005 или 2008, запускать тесты на обоих), не отключая БД и не повреждая что-либо случайно?, и заставить их работать так, как будто ничего не произошло на другой машине?
3 ответа
Вы можете создавать резервные копии баз данных и восстанавливать их на другом сервере (или на том же сервере с другими именами и путями баз данных), не влияя на производственное использование баз данных.
Исходный сервер: BACKUP DATABASE dbname to disk = 'sourcepathname\dbname.bak'
Целевой сервер: ВОССТАНОВИТЬ БАЗУ ДАННЫХ dbname с диска = '\sourceservername\sourcepathname\dbname.bak' С MOVE 'логические_данные_данных' в 'местоположение mdf', ПЕРЕМЕСТИТЬ 'логическое_имя_лога' в 'расположение ldf'
Предположим, что SQL 2005 установлен на вашем целевом сервере и логины вашего исходного сервера есть, и т. Д.
Довольно легким местом для начала является резервное копирование / восстановление. Используйте опцию "только для копирования", чтобы гарантировать, что вы не будете вмешиваться в какие-либо существующие расписания резервного копирования при создании резервных копий.