У нас только что появился новый сервер, поэтому мне нужно скопировать существующий экземпляр SQL Server 2008 из старого поля базы данных.
Обычно я делаю это, копируя файлы .mdf и log-файлы и прикрепляя их, но я не могу отключить dbs, так как они используются круглосуточно, поэтому я создал резервные копии баз данных и восстановил их на новом машина. Однако я столкнулся с несколькими проблемами, одна из которых связана с осиротевшими пользователями . Итак, что я ищу, так это безотказный процесс, чтобы переместить все с минимальной суетой / беспокойством / головной болью. Я разработчик .Net с достаточным количеством SQL под моим пристальным вниманием, но внутренняя работа SQL Server во многом для меня загадка, и я нахожу документацию MS болезненной для траления.
Пожалуйста помоги.
Ответы:
Если вы не можете перевести базы данных в автономный режим, необходимо выполнить резервное копирование / восстановление. Я бы предложил следующее:
Если вы построите и сконфигурируете новый блок так, чтобы он выглядел точно так же, как старый, то у вас будет минимальная суета.
Я понятия не имею, насколько велики ваши базы данных, поэтому этот метод может занять много времени. Самое простое, что можно сделать, это закрыть старый блок и скопировать файлы MDF и LDF, а затем (после восстановления master) вам потребуется только перезапустить SQL, чтобы ваши базы данных были в сети. Но вы заявили, что это не вариант, поскольку базы данных не могут быть отключены.
источник
Вы упомянули работу в режиме 24/7, поэтому лучший способ сделать это - создать зеркало базы данных в новой системе, тогда вы можете просто переключиться с минимальным, возможно, нулевым, в зависимости от того, как структурировано ваше приложение, - время простоя с использованием клиента. боковой редирект. Основные шаги:
WITH NORECOVERY
Создайте «конечные точки» на обоих серверах и обеспечьте подключение (например, правила брандмауэра), правильно задав порт и IP-адрес), например:
Настройте зеркальное отображение на зеркало, указывая на основное:
А на основной, указывающей на зеркало (просто другое имя базы данных и IP-адрес.
Затем, когда придет время, просто переключитесь с основного на зеркало:
Примечание: я предполагаю, что эти два сервера находятся в одной сети, поэтому будет нормально работать в синхронном режиме. Если это по каналу WAN, используйте асинхронный режим.
источник