Subskrybenci Oracle

Zaczyna się od SQL Server 2005, SQL Server obsługuje wypychanie subskrypcji do bazy danych Oracle, za pośrednictwem dostawca bazy danych Oracle OLE DB, dostarczonych przez bazy danych Oracle.

Konfigurowanie subskrybent bazy danych Oracle

Aby skonfigurować subskrybent bazy danych Oracle, wykonaj następujące kroki:

  1. Instalowanie i konfigurowanie oprogramowania klient Oracle i bazie Oracle OLE danych dostawca na SQL Server Dystrybutor, tak aby dystrybutor mogą łączyć się do DB Oracle subskrybent. Oprogramowanie sieciowe klient Oracle należy najnowszej dostępnej wersja.Firma Oracle zaleca, aby użytkownicy zainstalowali najnowsze wersje oprogramowania klient.Oprogramowanie klient w związku z tym jest często nowsza wersja niż oprogramowania bazy danych.Najbardziej prosty sposób zainstalować to oprogramowanie jest użycie Instalatora Universal Oracle na dysku klient Oracle.W Instalatorze Universal bazy danych Oracle będzie podać następujące informacje:

    Informacyjne

    Description

    Strona Główny programu Oracle

    Jest to ścieżka do katalogu instalacyjnego dla oprogramowania Oracle.Zaakceptuj domyślne ustawienie (C:\oracle\ora90 lub podobne) lub wprowadź inną ścieżka.Aby uzyskać więcej informacji o Główny bazy danych Oracle zobacz sekcję "Uwagi dotyczące dla Oracle Główny" w dalszej części tego tematu.

    Nazwa Główny Oracle

    Alias dla ścieżka macierzystego bazy danych Oracle.

    Typ instalacji

    W przypadku bazy danych Oracle 10 g, wybierz opcję Runtime or Administrator opcji instalacji.

  2. Utworzyć nazwę dla subskrybent.NAZWĘ (przezroczysty podłoża Network) jest używany przez baz danych Oracle warstwy komunikacji.Nazwę usługa TNS nazywa się za pomocą których znane jest wystąpienie bazy danych Oracle w sieci.Po skonfigurowaniu połączenia z bazą danych Oracle można przypisać nazwę usługa TNS.Replikacja wykorzystuje nazwę usługa do identyfikowania subskrybent oraz do ustanawiania połączeń.

    Po zakończeniu Instalatora Universal Oracle użyć sieci Asystent konfiguracja do konfigurowania połączeń sieciowych.Musisz podać cztery części informacji do skonfigurowania połączenia z siecią.Administrator bazy danych Oracle konfiguruje konfiguracja sieci, podczas konfigurowania bazy danych i odbiornika i powinny być w stanie udostępnia te informacje, jeśli nie ma go.Należy wykonać następujące czynności:

    Action

    Description

    Identyfikacja bazy danych

    Istnieją dwie metody identyfikacji bazy danych.Pierwsza metoda, która wykorzystuje identyfikator systemu Oracle (SID) i są dostępne w każdej wersji bazy danych Oracle.Druga metoda wykorzystuje nazwą usługa, który jest dostępny, począwszy od wersji bazy danych Oracle 8.0.Obie metoda należy użyć wartości, który jest skonfigurowany po utworzeniu bazy danych i jest ważne, że konfiguracja sieci klient korzystać z tej samej metoda nazewnictwa, administrator podczas Konfigurowanie odbiornika do bazy danych.

    Określić alias sieciowy dla bazy danych

    Musisz podać alias sieciowy, który jest używany do uzyskania dostępu do bazy danych Oracle.Alias sieciowy jest zasadniczo wskaźnik do zdalnego identyfikator SID lub nazwa usługa, które zostało skonfigurowane podczas tworzenia bazy danych; go ma zostały określone przez kilka nazw w różnych wersjach bazy danych Oracle i produkty, włącznie z sieci nazwa usługa i nazwę aliasu.SQL * plus monity dla tego alias jako parametr "Host ciąg" podczas logowania.

    Wybierz protokół sieciowy

    Należy wybrać odpowiednie protokoły, które chcesz obsługiwać.Większość aplikacji używa protokołu TCP.

    Określ informacje hosta do identyfikowania odbiornika bazy danych

    Host jest nazwę lub alias DNS komputera na którym jest uruchomiony odbiornik bazy danych Oracle, która zazwyczaj jest tym samym komputerze, na którym znajduje się w bazie danych.Niektóre protokoły trzeba podać dodatkowe informacje.Na przykład jeśli wybierzesz protokół TCP, musisz podać port, na którym odbiornik oczekuje na żądania połączeń do miejsce docelowe bazy danych.Domyślna konfiguracja TCP używany jest port 1521.

  3. Tworzenie publikacja migawka lub transakcyjnych, włącz go dla nie-SQL Server Subskrybenci, a następnie utworzyć subskrypcja wypychana dla subskrybent. Aby uzyskać więcej informacji, zobacz:

Ustawianie uprawnień do katalogu

Konto, pod którym SQL Server Usługa na uruchomienie dystrybutor musi być przyznane Odczyt i wykonać uprawnień do katalogu (i wszystkich podkatalogach) zainstalowano oprogramowanie sieciowe klient Oracle.

Testowanie łączności między dystrybutor programu SQL Server i Oracle Wydawca

W pobliżu końca sieci Asystent konfiguracja może być odpowiednią opcję, aby przetestować połączenie subskrybent bazy danych Oracle.Zanim przetestować połączenie, upewnij się, wystąpienie bazy danych Oracle jest w trybie online, a jest uruchomiony odbiornik bazy danych Oracle.Jeśli test zakończy się niepowodzeniem, skontaktuj się z DBA bazy danych Oracle, które jest odpowiedzialny za bazy danych, do których użytkownik chce się połączyć.

Po dokonaniu udanym połączeniu do bazy danych Oracle subskrybent próby logowania do bazy danych, przy użyciu tego samego konta i hasło, zgodnie z konfiguracją dla agenta dystrybucji dla subskrypcja:

  1. Kliknij przycisk Rozpocznij, a następnie kliknij przycisk Uruchamianie.

  2. Typ cmd a następnie kliknij przycisk OK.

  3. W wiersz polecenia należy wpisać:

    sqlplus <UserSchemaLogin>/<UserSchemaPassword>@<NetServiceName>

    Na przykład sqlplus replication/$tr0ngPasswerd@Oracle90Server.

  4. Jeśli konfiguracja sieci zakończyła się pomyślnie, logowania się powiedzie się i zostanie wyświetlony SQL w wierszu.

Uwagi dotyczące Główny bazy danych Oracle

Programu Oracle obsługuje instalację side-by-side plików binarnych aplikacji, ale tylko jeden zestaw plików binarnych mogą być używane przez replikacja w danej chwili.Każdy zestaw plików binarnych jest skojarzony z Główny bazy danych Oracle, pliki binarne znajdują się w katalogu % ORACLE_HOME%\bin.Należy się upewnić, że poprawny zestaw plików binarnych (w szczególności najnowszą wersja oprogramowanie sieciowe klient) jest używany podczas replikacja ustanawiającym połączenie subskrybent bazy danych Oracle.

Dziennik do dystrybutor z kontami, używane przez SQL Server usługi i SQL Server Usługa agenta i zestaw zmiennych środowiskowych odpowiednie. Aby odwołać się do punktu instalacji, określony, gdy zainstalowane jest oprogramowanie sieciowe klient, należy ustawić zmienną % ORACLE_HOME %.% ścieżka % musi zawierać katalogu \bin % ORACLE_HOME % jako po napotkaniu pierwszego wpisu bazy danych Oracle.Aby uzyskać informacje dotyczące ustawiania zmiennych środowiskowych Zobacz w dokumentacji systemu Windows.

Uwaga

Jeśli masz więcej niż jeden Oracle Główny na SQL Server Dystrybutor, upewnij się, że Agent dystrybucji jest używają najnowsze bazy danych Oracle OLE DB. W niektórych przypadkach bazy danych Oracle nie aktualizuje dostawca OLE DB domyślnie podczas aktualizowania składników klient na SQL Server Dystrybutor. Odinstalować starą dostawca OLE DB i zainstaluj najnowsze dostawca OLE DB.Aby uzyskać więcej informacji na temat instalowania i odinstalowywania dostawca w dokumentacji programu Oracle.

Uwagi dotyczące subskrybentów bazy danych Oracle

Oprócz zagadnienia, opisane w temacie -SQL Server subskrybentów, podczas replikowania bazy danych Oracle subskrybentów, wziąć pod uwagę następujące kwestie:

  • Oracle traktuje puste ciągi i wartości NULL jako wartość NULL.Jest to ważne, jeśli została zdefiniowana, SQL Server Kolumna NOT NULL, a jest replikowana w kolumnie do subskrybent bazy danych Oracle. Aby uniknąć błędów podczas stosowania zmian do Oracle subskrybent, wykonaj jedną z następujących czynności:

    • Upewnij się, że puste ciągi nie są wstawiane do tabela opublikowanych jako wartości kolumna.

    • Użycie –SkipErrors parametr dla agenta dystrybucji, jeśli jest dopuszczalna, aby otrzymywać powiadomienia o błędy w dzienniku historia Agent dystrybucji i kontynuować przetwarzanie.Specify the Oracle error code 1400 (-SkipErrors1400).Aby uzyskać więcej informacji na temat tego parametru zobacz Skipping Errors in Transactional Replication.

    • Zmodyfikuj skrypt wygenerowany utworzenia tabela, usuwanie atrybut NOT NULL z dowolnej kolumny znaków, które mogą być powiązane puste ciągi i dostarczyć zmodyfikowany skrypt jako skrypt tworzenia niestandardowych za pomocą parametru @ creation_script artykuł sp_addarticle.

  • Subskrybenci programu Oracle obsługuje opcję schemat z 0x4071.Aby uzyskać więcej informacji na temat opcji schematu Zobacz sp_addarticle (języka Transact-SQL).

Mapowanie typów danych z serwera SQL do bazy danych Oracle

W poniższej tabela przedstawiono mapowania typów danych, które są używane, gdy dane są replikowane do subskrybent z bazy danych Oracle.

Typ danych programu SQL Server

Typ danych Oracle

bigint

NUMBER(19,0)

binary(1-2000)

RAW(1-2000)

binary(2001-8000)

OBIEKT BLOB

bit

NUMBER(1)

char(1-2000)

CHAR(1-2000)

char(2001-4000)

VARCHAR2(2001-4000)

char(4001-8000)

CLOB

date

DATA

datetime

DATA

datetime2(0-7)

TIMESTAMP(7) Oracle 9 i Oracle 10; VARCHAR(27) dla programu Oracle 8

datetimeoffset(0-7)

TIMESTAMP(7) WITH czas ZONE Oracle 9 i Oracle 10; VARCHAR(34) dla programu Oracle 8

decimal(1-38, 0-38)

LICZBA (1-38 0 38)

float(53)

ZMIENNOPRZ

float

ZMIENNOPRZ

geography

OBIEKT BLOB

geometry

OBIEKT BLOB

hierarchyid

OBIEKT BLOB

image

OBIEKT BLOB

int

NUMBER(10,0)

money

NUMBER(19,4)

nchar(1-1000)

CHAR(1-1000)

nchar(1001-4000)

NCLOB

ntext

NCLOB

numeric(1-38, 0-38)

LICZBA (1-38 0 38)

nvarchar(1-1000)

VARCHAR2(1-2000)

nvarchar(1001-4000)

NCLOB

nvarchar(max)

NCLOB

real

RZECZYWISTE

smalldatetime

DATA

smallint

NUMBER(5,0)

smallmoney

NUMBER(10,4)

sql_variant

NIE DOTYCZY

sysname

VARCHAR2(128)

text

CLOB

time(0-7)

VARCHAR(16)

timestamp

RAW(8)

tinyint

NUMBER(3,0)

uniqueidentifier

CHAR(38)

varbinary(1-2000)

RAW(1-2000)

varbinary(2001-8000)

OBIEKT BLOB

varchar(1-4000)

VARCHAR2(1-4000)

varchar(4001-8000)

CLOB

varbinary(max)

OBIEKT BLOB

varchar(max)

CLOB

xml

NCLOB

Historia zmian

Microsoft Learning

Dodaje nowy SQL Server 2008 typy danych w tabela mapowania.