Если вы хотите переместить содержание одной базы геоданных в другую базу данных на том же экземпляре Microsoft SQL Server, вы можете создать вторую базу данных и переместить данные. Если вы хотите переместить базу геоданных на новый экземпляр SQL Server, вы можете переместить всю базу данных, используя одну из нескольких опций SQL Server.
Перемещение данных в другую базу геоданных на том же экземпляре SQL Server
Имена базы данных и базы геоданных должны быть уникальными в пределах одного экземпляра SQL Server; поэтому, если вы хотите переместить данные в другую базу геоданных в том же экземпляре, создайте вторую базу данных на экземпляре и переместите существующие данные в новую базу геоданных. Данные в ArcGIS могут быть перемещены посредством копирования и вставки, использования инструмента Экспорт (Export), использования мастера Извлечь данные (Extract Data) или с помощью документов рабочей области XML.
Имейте в виду, что пользователь, который вошел в систему во время загрузки данных в новую базу геоданных, станет их владельцем. Если требуется, чтобы у данных был тот же владелец в новой базе геоданных, попросите каждого пользователя перенести свои данные.
Перемещение базы данных на новый экземпляр SQL Server
Если вы хотите переместить базу геоданных в новый экземпляр SQL Server, вы можете использовать для перемещения всей базы данных инструменты SQL Server. К возможностям перемещения базы данных относятся отключение файла базы данных от экземпляра SQL Server и его подключение к новому экземпляру, создание архивной копии базы данных и ее восстановление на новом экземпляре SQL Server, а также использование Мастера копирования баз данных.
Независимо от того, какие методы используются для перемещения базы данных SQL Server, переименовывать базу данных невозможно. Когда вы восстанавливаете базу данных, например, ее можно восстановить под другим именем. Однако в отношении базы геоданных этого делать не следует, так как подключиться к ней будет невозможно.
Все имена объектов в системных таблицах базы геоданных полностью соответствуют имени базы данных. Кроме того, во многих сохраненных процедурах используется сторонний синтаксис имен в коде, который соответствует формату <база_данных>.<владелец>.<объект>. Если имя базы данных изменяется, выполнить эти процедуры будет невозможно.
Использование отсоединения и присоединения
Самым простым способом перемещения базы геоданных, сохраненной в локальной базе данных SQL Server, является ее отсоединение от исходного сервера и присоединение к целевому серверу. При этом необходимо помнить о следующих особенностях.
- Никто не должен быть подключен к базе данных, когда выполняется отсоединение.
- Отсоединение приводит к чистой остановке базы данных.
- Отсоединение/присоединение может выполняться быстрее, чем резервное копирование и восстановление базы данных.
- В процессе отсоединения/присоединения создаются одинаковые базы данных на исходном и целевом серверах.
- Этот метод может быть полезен для переноса больших объемов данных.
- Чтобы отсоединить базу данных от экземпляра SQL Server, в ней должны быть предоставлены по меньшей мере права доступа для db_owner.
- Для подключения базы данных к экземпляру SQL Server необходимо получить права доступа CREATE DATABASE.
- Для многопользовательских баз геоданных на SQL Server можно указать все данные и файлы журнала в команде CREATE DATABASE FOR ATTACH SQL.
Восстановление резервной копии другой базы данных
Еще одним способом перемещения локальной базы данных SQL Server является создание ее полной резервной копии и восстановление файла этой копии на целевом сервере. При этом необходимо помнить о следующих особенностях.
- Изменять логическое имя файла во время операции восстановления невозможно.
- Пользователей можно присоединять во время процесса резервного копирования, но не во время восстановления.
Дополнительные сведения о восстановлении баз данных SQL Server из резервных копий см. в документации к SQL Server.
Мастер копирования баз данных (Copy Database wizard)
В состав SQL Server Management Studio входит мастер копирования базы данных (Copy Database wizard), который можно использовать для перемещения баз данных. Ниже перечислены некоторые особенности, которые следует учитывать при использовании мастера копирования баз данных (Copy Database wizard).
- Можно копировать несколько баз данных.
- Мастер копирования баз данных (Copy Database wizard) невозможно использовать для создания копии базы данных в одном и том же экземпляре.
- Из мастера копирования баз данных (Copy Database wizard) невозможно исключить имена пользователей для входа, поэтому они переносятся в копированную базу данных с новыми пользовательскими ID для серверов (SID).
- Для мастера требуется, чтобы исходный и целевой серверы были подключены.