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

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

База данных

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

Поставщик

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 Management Studio не разрешает публикации SQL Server 2000 для подписчиков, отличных от подписчиков SQL Server. Чтобы разрешить публикации SQL Server 2000 для подписчиков, отличных от подписчиков SQL Server, используйте мастер создания публикаций, который вызывается из программы Enterprise Manager, входящей в состав SQL Server 2000. В мастере создания публикаций на странице Определить типы подписчиков выберите Разнородные источники данных, например Oracle или Microsoft Access.

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

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

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

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

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

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

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

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

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

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

Журнал изменений

Обновленное содержимое

В раздел «Поддержка функций репликации» добавлена информация о том, что метаданные репликации не удаляются на разнородных подписчиках при удалении подписки.