sp_attachsubscription (Transact-SQL)
Присоединяет существующую базу данных подписки к любому подписчику. Эта хранимая процедура выполняется в базе данных master на новом подписчике.
Важно! |
---|
Данная функция является устаревшей и в следующем выпуске будет удалена. Использовать эту функцию для новых разработок не рекомендуется. Для публикаций слиянием, секционированных с помощью параметризованных фильтров, рекомендуется использовать новые возможности секционированных снимков, которые упрощают инициализацию большого числа подписок. Дополнительные сведения см. в разделе Моментальные снимки для публикаций слиянием с параметризованными фильтрами. Для несекционированных публикаций можно инициализировать подписку с помощью резервной копии. Дополнительные сведения см. в разделе Инициализация подписки на публикацию транзакций без моментального снимка. |
Синтаксические обозначения Transact-SQL
Синтаксис
sp_attachsubscription [ @dbname = ] 'dbname'
, [ @filename = ] 'filename'
[ , [ @subscriber_security_mode = ] 'subscriber_security_mode' ]
[ , [ @subscriber_login = ] 'subscriber_login' ]
[ , [ @subscriber_password = ] 'subscriber_password' ]
[ , [ @distributor_security_mode = ] distributor_security_mode ]
[ , [ @distributor_login = ] 'distributor_login' ]
[ , [ @distributor_password = ] 'distributor_password' ]
[ , [ @publisher_security_mode = ] publisher_security_mode ]
[ , [ @publisher_login = ] 'publisher_login' ]
[ , [ @publisher_password = ] 'publisher_password' ]
[ , [ @job_login = ] 'job_login' ]
[ , [ @job_password = ] 'job_password' ]
[ , [ @db_master_key_password = ] 'db_master_key_password' ]
Аргументы
[ @dbname= ] 'dbname'
Строка, которая указывает целевую базу данных подписки по имени. Аргумент dbname имеет тип sysname и не имеет значения по умолчанию.[ @filename= ] 'filename'
Имя и физическое расположение первичного файла MDF (файл данных master). Аргумент filename имеет тип nvarchar(260) и не имеет значения по умолчанию.[ @subscriber_security_mode= ] 'subscriber_security_mode'
Режим безопасности, используемый подписчиком для подключения к нему при синхронизации. Аргумент subscriber_security_mode имеет тип int и значение по умолчанию NULL.Примечание Необходимо использовать проверку подлинности Windows. Если аргумент subscriber_security_mode не равен 1 (проверка подлинности Windows), возвращается ошибка.
[ @subscriber_login= ] 'subscriber_login'
Имя входа подписчика, используемое для подключения к нему при синхронизации. Аргумент subscriber_login имеет тип sysname и значение по умолчанию NULL.Примечание Данный аргумент является устаревшим и сохранен только для поддержки обратной совместимости скриптов. Если аргумент subscriber_security_mode не равен 1 и указан аргумент subscriber_login, возвращается ошибка.
[ @subscriber_password= ] 'subscriber_password'
Пароль подписчика. Аргумент subscriber_password имеет тип sysname и значение по умолчанию NULL.Примечание Данный аргумент является устаревшим и сохранен только для поддержки обратной совместимости скриптов. Если аргумент subscriber_security_mode не равен 1 и указан аргумент subscriber_password, возвращается ошибка.
[ @distributor_security_mode= ] distributor_security_mode
Режим безопасности, используемый для подключения к распространителю при синхронизации. Аргумент distributor_security_mode имеет тип int и значение по умолчанию 0. Значение 0 указывает проверку подлинности SQL Server. Значение 1 указывает проверку подлинности Windows. По возможности используйте проверку подлинности Windows.[ @distributor_login= ] 'distributor_login'
Имя входа распространителя, используемое для подключения к нему при синхронизации. Аргумент distributor_login является обязательным, если значение distributor_security_mode равно 0. Аргумент distributor_login имеет тип sysname и значение по умолчанию NULL.[ @distributor_password= ] 'distributor_password'
Пароль распространителя. Аргумент distributor_password является обязательным, если значение distributor_security_mode равно 0. Аргумент distributor_password имеет тип sysname и значение по умолчанию NULL. Значение аргумента distributor_password должно содержать менее 120 символов Юникода.Примечание по безопасности Не используйте пустые пароли. Выбирайте надежные пароли. По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. В случае необходимости хранения учетных данных в файле скрипта этот файл следует защищать во избежание несанкционированного доступа.
[ @publisher_security_mode= ] publisher_security_mode
Режим безопасности, используемый для подключения к издателю при синхронизации. Аргумент publisher_security_mode имеет тип int и значение по умолчанию 1. Значение 0 указывает проверку подлинности SQL Server. Значение 1 указывает проверку подлинности Windows. По возможности используйте проверку подлинности Windows.[ @publisher_login= ] 'publisher_login'
Имя входа, используемое для подключения к издателю при синхронизации. Аргумент publisher_login имеет тип sysname и значение по умолчанию NULL.[ @publisher_password= ] 'publisher_password'
Пароль, используемый при соединении с издателем. Аргумент publisher_password имеет тип sysname и значение по умолчанию NULL. Значение аргумента publisher_password должно содержать менее 120 символов Юникода.Примечание по безопасности Не используйте пустые пароли. Выбирайте надежные пароли. По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. В случае необходимости хранения учетных данных в файле скрипта этот файл следует защищать во избежание несанкционированного доступа.
[ @job_login= ] 'job_login'
Имя входа для учетной записи Windows, под которой запускается агент. Аргумент job_login имеет тип nvarchar(257) и не имеет значения по умолчанию. Для соединений агента с распространителем всегда используется эта учетная запись Windows.[ @job_password= ] 'job_password'
Пароль для учетной записи Windows, под которой запускается агент. Аргумент job_password имеет тип sysname и не имеет значения по умолчанию. Значение аргумента job_password должно содержать менее 120 символов Юникода.Примечание по безопасности По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. В случае необходимости хранения учетных данных в файле скрипта этот файл следует защищать во избежание несанкционированного доступа.
[ @db_master_key_password= ] 'db_master_key_password'
Пароль определяемого пользователем главного ключа базы данных. Аргумент db_master_key_password имеет тип nvarchar(524) и значение по умолчанию NULL. Если аргумент db_master_key_password не указан, то существующий главный ключ базы данных будет удален и создан повторно.Примечание по безопасности По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. В случае необходимости хранения учетных данных в файле скрипта этот файл следует защищать во избежание несанкционированного доступа.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Процедура sp_attachsubscription используется в репликации моментальных снимков, репликации транзакций и репликации слиянием.
Подписка не может быть присоединена к публикации, если срок хранения публикации истек. При указании подписки с истекшим сроком хранения публикации возникает ошибка при присоединении или первой синхронизации подписки. Публикации со сроком хранения 0 (никогда не истекает) не обрабатываются.
Разрешения
Процедуру sp_attachsubscription могут выполнять только члены предопределенной роли сервера sysadmin.