Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Публикации из издателей Oracle создаются таким же образом, как и типичные публикации моментальных снимков и транзакций, но перед созданием публикации из издателя Oracle необходимо выполнить следующие действия (шаги один, три и четыре подробно описаны в этом разделе.):
Создайте администратора репликации в базе данных Oracle с помощью предоставленного скрипта.
Для таблиц, которые вы будете публиковать, предоставьте пользователю Oracle, созданному на шаге один, разрешение SELECT непосредственно на каждой из них (а не через роль).
Установите пакет клиентских программ Oracle и поставщик вещественных данных OLE DB на сервер распространения Microsoft SQL Server, а затем остановите и перезапустите экземпляр SQL Server. Если распространитель работает на 64-разрядной платформе, необходимо использовать 64-разрядную версию поставщика Oracle OLE DB.
Настройте базу данных Oracle в качестве издателя на распределителе SQL Server.
Список объектов, которые можно реплицировать из базы данных Oracle, см. в разделе "Рекомендации по проектированию" и "Ограничения" для издателей Oracle.
Замечание
Необходимо быть членом фиксированной роли сервера sysadmin, чтобы включить издателя или распространителя и для создания публикации Oracle или подписки из публикации Oracle.
Создание схемы администратора репликации в базе данных Oracle
Агенты репликации подключаются к базе данных Oracle и выполняют операции в контексте пользовательской схемы, которую необходимо создать. Эта схема должна получить ряд прав, которые перечислены в следующем разделе. Эта схема владеет всеми объектами, созданными процессом репликации Microsoft SQL Server на издателе Oracle, за исключением общедоступного синонима MSSQLSERVERDISTRIBUTOR. Дополнительные сведения об объектах, созданных в базе данных Oracle, см. в разделе "Объекты, созданные на издателе Oracle".
Замечание
Удаление публичного синонима MSSQLSERVERDISTRIBUTOR и настроенного пользователя репликации Oracle с параметром CASCADE удаляет все объекты репликации из Oracle Publisher.
Пример скрипта был предоставлен для оказания помощи в настройке пользовательской схемы репликации Oracle. Скрипт доступен в следующем каталоге после установки SQL Server: <drive>:\\Program Files\Microsoft SQL Server<\InstanceName>\MSSQL\Install\oracleadmin.sql. Он также включен в раздел "Скрипт" для предоставления разрешений Oracle.
Подключитесь к базе данных Oracle с помощью учетной записи с привилегиями DBA и выполните скрипт. Этот скрипт запрашивает пользователя и пароль для схемы администратора репликации, а также пространство таблиц по умолчанию, в котором необходимо создать объекты (пространство таблиц должно уже существовать в базе данных Oracle). Сведения об указании других пространств таблиц для объектов см. в разделе "Управление пространствами таблиц Oracle". Выберите любое имя пользователя и надежный пароль, но запишите оба, так как вы будете запрашивать эти сведения позже при настройке базы данных Oracle в качестве издателя. Рекомендуется использовать схему только для объектов, необходимых для репликации; Не создавайте таблицы для публикации в этой схеме.
Создание пользовательской схемы вручную
Если вы создаете схему администратора репликации вручную, необходимо предоставить схеме следующие разрешения непосредственно или через роль в базе данных.
СОЗДАТЬ ОБЩЕДОСТУПНЫЙ СИНОНИМ И УДАЛИТЬ ОБЩЕДОСТУПНЫЙ СИНОНИМ
СОЗДАТЬ ПРОЦЕДУРУ
СОЗДАТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ
СОЗДАНИЕ СЕАНСА
Вы также должны предоставить пользователю следующие разрешения (а не через роль):
СОЗДАЙТЕ ЛЮБОЙ ТРИГГЕР. Это необходимо только для моментального снимка и репликации транзакций.
СОЗДАТЬ ТАБЛИЦУ
СОЗДАТЬ ПРЕДСТАВЛЕНИЕ
Установка и настройка сетевого клиентского программного обеспечения Oracle на распространителе SQL Server
Необходимо установить и настроить программное обеспечение клиентской сети Oracle и поставщика Oracle OLE DB на Дистрибьюторе SQL Server, чтобы Дистрибьютор мог установить подключение к Публикатору Oracle. После установки программного обеспечения задайте соответствующие разрешения для папок, в которых установлено программное обеспечение, а затем остановите и перезапустите экземпляр SQL Server, чтобы убедиться, что все параметры обновлены (разрешения описаны далее в разделе "Настройка разрешений каталога").
Замечание
Клиентское сетевое программное обеспечение Oracle должно быть самой последней доступной версией. Oracle рекомендует пользователям устанавливать самые последние версии клиентского программного обеспечения. Поэтому клиентское программное обеспечение часто является более последней версией, чем программное обеспечение базы данных.
Самый простой способ установки и настройки клиентского сетевого программного обеспечения — использовать помощник по настройке Oracle Universal Installer и Net Configuration Assistant на диске клиента Oracle.
В универсальном установщике Oracle вы укажите следующие сведения:
| Информация | Описание |
|---|---|
| Oracle Home | Это путь к каталогу установки программного обеспечения Oracle. Примите значение по умолчанию (C:\oracle\ora90 или аналогично) или введите другой путь. Дополнительные сведения о Oracle Home см. в разделе "Вопросы для Oracle Home" далее в этом разделе. |
| Имя дома Oracle | Псевдоним домашнего пути Oracle. |
| Тип установки | В Oracle 10g выберите параметр установки администратора . |
После завершения универсального установщика Oracle используйте помощник по настройке сети для настройки сетевого подключения. Для настройки сетевого подключения необходимо указать четыре части информации. Администратор базы данных Oracle настраивает конфигурацию сети при настройке базы данных и прослушивателя и должен иметь возможность предоставить эти сведения, если у вас нет. Необходимо выполнить следующие действия.
| Действие | Описание |
|---|---|
| Определение базы данных | Существует два метода идентификации базы данных. Первый метод использует идентификатор системы Oracle (SID) и доступен в каждом выпуске Oracle. Второй метод использует имя службы, доступное начиная с Oracle версии 8.0. Оба метода используют значение, настроенное при создании базы данных, и важно, чтобы конфигурация клиентской сети использовала тот же метод именования, который администратор использовал при настройке прослушивателя для базы данных. |
| Определение сетевого псевдонима для базы данных | Необходимо указать сетевой псевдоним, который используется для доступа к базе данных Oracle. Вы также предоставляете этот псевдоним при идентификации базы данных Oracle в качестве издателя на распределителе SQL Server. Сетевой псевдоним по сути является указателем на удаленный идентификатор безопасности или имя службы, настроенное при создании базы данных; она была названа несколькими именами в разных выпусках и продуктах Oracle, включая net Service Name и TNS Alias. SQL*Plus запрашивает этот псевдоним в качестве параметра "Строка узла" при входе. |
| Выбор сетевого протокола | Выберите соответствующие протоколы, которые вы хотите поддерживать. Большинство приложений используют TCP. |
| Указание сведений о узле для идентификации прослушивателя базы данных | Имя узла или DNS- псевдоним компьютера, на котором работает прослушиватель Oracle, как правило, совпадает с компьютером, на котором находится база данных. Для некоторых протоколов необходимо указать дополнительные сведения. Например, при выборе TCP необходимо указать порт, на котором прослушиватель прослушивает запросы подключения к целевой базе данных. Конфигурация TCP по умолчанию использует порт 1521. |
Настройка разрешений каталога
Учетная запись, под которой выполняется служба SQL Server на Дистрибьюторе, должна иметь разрешения на чтение и выполнение для каталога (и всех подкаталогов), в котором установлено клиентское сетевое программное обеспечение Oracle.
Тестирование подключения между распространителем SQL Server и издателем Oracle
В конце помощника по настройке Net может быть возможность проверить подключение к издателю Oracle. Перед проверкой подключения убедитесь, что экземпляр базы данных Oracle находится в сети и что прослушиватель Oracle запущен. Если тест не выполнен, обратитесь к DBA Oracle, ответственной за базу данных, к которой вы пытаетесь подключиться.
После успешного подключения к издателю Oracle попытайтесь войти в базу данных, используя учетную запись и пароль, связанные с созданной схемой администратора репликации. При выполнении под той же учетной записью Windows, которую использует служба SQL Server, необходимо выполнить следующее:
Нажмите кнопку "Пуск" и нажмите кнопку "Выполнить".
Введите
cmdи нажмите кнопку "ОК".В командной строке введите:
sqlplus <UserSchemaLogin>/<UserSchemaPassword>@<NetServiceName>Например:
sqlplus replication/$tr0ngPasswerd@Oracle90ServerЕсли конфигурация сети была успешной, имя входа будет успешно выполнено, и появится
SQLзапрос.Если возникают проблемы с подключением к базе данных Oracle, см. раздел "Распространитель SQL Server не может подключиться к экземпляру базы данных Oracle" в разделе "Устранение неполадок издателей Oracle".
Рекомендации по Oracle Home
Oracle поддерживает параллельное установку двоичных файлов приложений, но только один набор двоичных файлов может использоваться репликацией в определенное время. Каждый набор двоичных файлов связан с Oracle Home; двоичные файлы находятся в каталоге %ORACLE_HOME%\bin. Необходимо убедиться, что правильный набор бинарных файлов (особенно последняя версия клиентского сетевого программного обеспечения) используется во время подключения к издателю Oracle.
Войдите в распространитель с учетными записями, используемыми службой SQL Server и службой агента SQL Server, и задайте соответствующие переменные среды. Переменная %ORACLE_HOME% должна ссылаться на точку установки, указанную при установке клиентского сетевого программного обеспечения. %PATH% должен содержать директорию %ORACLE_HOME% \bin как первую обнаруженную запись Oracle. Сведения о настройке переменных среды см. в документации по Windows.
Настройка базы данных Oracle в качестве публикатора на дистрибьюторе SQL Server
Издатели Oracle всегда используют удаленный распространитель; Необходимо настроить экземпляр SQL Server для роли распространителя для издателя Oracle (издатель Oracle может использовать только один распространитель, но один распространитель может обслуживать более одного издателя Oracle). После настройки распространителя определите экземпляр базы данных Oracle в качестве издателя на распространителе SQL Server через SQL Server Management Studio, Transact-SQL или объекты управления репликацией (RMO). Дополнительные сведения о настройке распространителя см. в разделе "Настройка распространения".
Замечание
Издатель Oracle не может иметь то же имя, что и его распространитель SQL Server или то же имя, что и любой из издателей SQL Server, использующих тот же распространитель.
При идентификации базы данных Oracle в качестве издателя необходимо выбрать вариант публикации Oracle: Complete или Oracle Gateway. После идентификации издателя этот параметр не может быть изменен без удаления и перенастройки издателя. Параметр Complete предназначен для предоставления публикаций моментальных снимков и транзакций с полным набором поддерживаемых функций для публикации Oracle. Опция Шлюза Oracle предоставляет специфические оптимизации проектирования для повышения производительности в случаях, когда репликация служит шлюзом между системами.
После обнаружения издателя Oracle на распространителе SQL Server репликация создает связанный сервер с именем, совпадающим с именем службы TNS базы данных Oracle. Этот связанный сервер может использоваться только репликацией. Если необходимо подключиться к издателю Oracle через связанное подключение к серверу, создайте другое имя службы TNS, а затем используйте это имя при вызове sp_addlinkedserver (Transact-SQL).
Сведения о настройке издателя Oracle и создании публикации см. в статье "Создание публикации из базы данных Oracle".
См. также
Административные рекомендации для издателей Oracle
Сопоставление типов данных для издателей Oracle
Глоссарий терминов по публикации Oracle
Обзор публикации Oracle