Поделиться через


Подписчики, отличные от подписчиков SQL Server

Следующие подписчики, не относящиеся к SQL Server, могут подписаться на публикации моментальных снимков и публикации транзакций, используя принудительные подписки. Подписки поддерживаются для двух самых последних версий каждой из баз данных, приведенных в списке, с использованием самой последней версии поставщика OLE DB из приводимого списка.

Разнородная репликация на подписчики, отличные от подписчика SQL Server, устарела. Публикация Oracle устарела. Для перемещения данных создайте решения с помощью системы отслеживания измененных данных и служб Службы SSIS.

ПредупреждениеВнимание!

В будущей версии Microsoft SQL Server этот компонент будет удален. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

База данных

Операционная система

Поставщик

Oracle

Все платформы, поддерживаемые Oracle

Поставщик OLE DB для Oracle (поставляемый Oracle)

IBM DB2

MVS, AS400, Unix, Linux, Windows, за исключением версии 9.x

Поставщик OLE DB для Microsoft Host Integration Server (HIS)

Сведения о создании подписок для Oracle и IBM DB2 см. в разделах Подписчики Oracle и Подписчики IBM DB2.

Вопросы использования подписчиков, отличных от подписчиков SQL Server

При репликации на подписчики, не относящиеся к SQL Server, необходимо помнить о следующем:

Общие рекомендации

  • Репликация поддерживает публикацию таблиц и индексированных представлений в виде таблиц для подписчиков, не относящихся к SQL Server (индексированные представления не могут быть реплицированы как индексированные представления).

  • Когда публикация создается в мастере создания публикаций, а затем включается для подписчиков, отличных от подписчиков SQL Server, с помощью диалогового окна «Свойства публикации», владелец всех объектов в базе данных подписки не указывается для подписчиков, отличных от подписчиков SQL Server, в то время как для подписчиков Microsoft SQL Server он устанавливается как владелец соответствующего объекта в базе данных публикации.

  • Если публикация имеет подписчиков SQL Server и подписчиков, не относящихся к SQL Server, то публикация должна быть включена для подписчиков, не относящихся к SQL Server, перед тем как будут созданы какие-либо подписки для подписчиков SQL Server.

  • По умолчанию скрипты, создаваемые агентом моментальных снимков для подписчиков, не относящихся к SQL Server, используют в синтаксисе инструкции CREATE TABLE идентификаторы без кавычек. Поэтому опубликованная таблица с именем 'test' реплицируется как 'TEST'. Для использования тех же самых регистров символов, что и в имени таблицы в базе данных публикации, используйте для агента распространителя параметр -QuotedIdentifier. Параметр -QuotedIdentifier должен также применяться, если имена опубликованных объектов (таких как таблицы, столбцы и ограничения) содержат пробелы или слова, которые являются зарезервированными словами в версии базы данных на подписчике, не являющемся подписчиком SQL Server. Дополнительные сведения об этом параметре см. в разделе Агент распространения репликации.

  • Учетная запись, под которой запускается агент распространителя, должна иметь доступ с правом на чтение к установочному каталогу поставщика OLE DB.

  • По умолчанию для подписчиков, не являющихся подписчиками SQL Server, агент распространителя использует значение [(адреса по умолчанию)] для базы данных подписки (параметр -SubscriberDB для агента распространителя):

  • Если распространитель SQL Server выполняется на 64-разрядной платформе, необходимо использовать 64-разрядную версию соответствующего поставщика OLE DB.

  • Репликация перемещает данные в формате Юникода независимо от параметров сортировки и кодовых страниц, используемых на издателе и подписчике. При репликации между издателями и подписчиками рекомендуется выбрать совместимые параметры сортировки и кодовую страницу.

  • Если статья добавляется или удаляется из публикации, то подписки для подписчиков, не относящихся к SQL Server, должны быть повторно инициализированы.

  • Для всех подписчиков, не относящихся к SQL Server, поддерживаются только следующие ограничения: NULL и NOT NULL. Ограничения первичного ключа реплицируются как уникальные индексы.

  • В разных базах данных значение NULL обрабатывается по-разному, что влияет на представление пустых значений, пустых строк и значений NULL. Это в свою очередь влияет на поведение значений, вставляемых в столбцы с определяемыми уникальными ограничениями. Например, СУБД Oracle допускает существование нескольких значений NULL в столбце, который считается уникальным, тогда как SQL Server допускает наличие только одного значения NULL в уникальном столбце.

    Дополнительным фактором, который следует учитывать, является порядок обработки значений NULL, пустых строк и пустых значений в случае, когда столбец определяется как NOT NULL. Сведения по этому вопросу для подписчиков Oracle см. в разделе Подписчики Oracle.

  • Связанные с репликацией метаданные (таблица последовательности транзакций) на поставщиках SQL Server не удаляются при удалении подписки. 

Соответствие требованиям базы данных подписчика

  • Опубликованные схема и данные должны соответствовать требованиям базы данных подписчика. Например, если база данных, не относящаяся к SQL Server, имеет меньший максимальный размер строки, чем SQL Server, то следует убедиться, что опубликованные схема и данные не превышают этот размер.

  • Таблицы, которые реплицируются на подписчики, не относящиеся к SQL Server, должны следовать соглашениям об именовании таблиц базы данных подписчика.

  • DDL не поддерживается для подписчиков, отличных от подписчиков SQL Server. Дополнительные сведения об изменениях схем см. в разделе Внесение изменений схем в базы данных публикации.

Поддержка возможности репликации

  • SQL Server предлагает два типа подписок: принудительные и по запросу. Подписчики, не относящиеся к SQL Server, должны использовать принудительные подписки, для которых агент распространителя запускается на распространителе SQL Server.

  • SQL Server предлагает для использования два формата моментальных снимков: собственный bcp-режим и символьный режим. Подписчики, не относящиеся к SQL Server, требуют использования моментальных снимков символьного формата.

  • Подписчики, не относящиеся к SQL Server, не могут использовать подписки с немедленным обновлением или обновлением посредством очередей и не могут быть узлами одноранговой топологии.

  • Подписчики, не относящиеся к SQL Server, не могут быть автоматически инициализированы из резервной копии.

См. также

Основные понятия

Разнородная репликация базы данных

Подписка на публикации