Aracılığıyla paylaş


Oracle aboneleri

İle başlayan SQL Server 2005, SQL Server için Oracle Oracle tarafından sağlanan Oracle ole db sağlayıcı aracılığıyla gönderme abonelikleri destekler

Oracle abone yapılandırma

Oracle abone yapılandırmak için şu adımları izleyin:

  1. Yükleme ve yapılandırma Oracle istemci ağ yazılımı ve Oracle ole db sağlayıcı üzerinde SQL Server dağıtıcı, dağıtıcı bağlantıları Oracle Subscriber. böyleceOracle istemci ağ yazılımının en son sürüm olmalıdır.Oracle kullanıcıların istemci yazılımını en son sürümlerini yüklemenizi önerir.istemci bu nedenle sıklıkta veritabanı yazılımı'den daha yeni bir sürüm yazılımıdır.Yazılımı yüklemek için en basit yol, Oracle istemci disk üzerinde Oracle Evrensel Installer kullanmaktır.Oracle Evrensel yükleyici aşağıdaki bilgileri sağlamanız:

    Bilgi

    Açıklama

    Oracle giriş

    Oracle yazılım yükleme dizini yol budur.Varsayılanı kabul (C:\oracle\ora90 veya benzer) veya başka bir yol girin.Oracle ev hakkında daha fazla bilgi için "Dikkat edilmesi gereken noktalar için Oracle giriş" bölümüne bakın. Bu konuda daha sonra.

    Oracle ev adı

    Oracle giriş yol için bir diğer ad.

    Yükleme türü

    Oracle 10 g, select, çalışma zamanı veya yönetici yükleme seçeneği.

  2. Bir abone için tns adı oluşturun.tns (saydam ağ maddeyi), Oracle veritabanları tarafından kullanılan bir iletişim katmanıdır.tns Service Name, bir Oracle veritabanı örnek ağda tanındığı adıdır.Oracle veritabanı bağlantısı yapılandırdığınızda, tns Service adı atayın.Çoğaltma tns Service adını abone tanımlamak ve bağlantıları kurmak için kullanır.

    Oracle Evrensel yükleyici tamamlandıktan sonra ağ yapılandırması Yardımcısı ağ bağlantısı yapılandırmak için kullanın.Dört ağ bağlantısı yapılandırmak için bilgi parçalarını sağlamanız gerekir.Oracle veritabanı yöneticisi ağ yapılandırır yapılandırma , veritabanı ve dinleyici ayarlama ve onu yoksa, bu bilgileri sağlamak görebilmeniz gerekir.Aşağıdakileri yapmanız gerekir:

    Eylem

    Açıklama

    Veritabanını saptama

    Veritabanı tanımlamak için iki yöntem vardır.İlk yöntem, Oracle sistem tanımlayıcısı (SID) kullanır ve her Oracle sürümde kullanılabilir.İkinci yöntem, Oracle 8.0 başlayarak kullanılabilir olduğu hizmet adı kullanır.Her iki yöntem de, veritabanı oluşturulduğunda ve istemci ağ yapılandırma Yöneticisi veritabanı için dinleyici yapılandırırken kullanılan aynı adlandırma yöntemini kullanmak önemlidir yapılandırılmış bir değeri kullanın.

    Bir ağı diğer ad veritabanı için

    Bir Oracle veritabanına erişmek için kullanılan ağ diğer ad ad adı belirtmeniz gerekir.diğer ad ad ağ adı aslında bir uzak SID veya veritabanı oluşturulduğunda, yapılandırılan hizmet adı işaretçidir; onu farklı Oracle sürümler ve ürünler, Net hizmet adı ve tns diğer adı da dahil olmak üzere birkaç adları tarafından başvurulan.sql * Plus bu diğer ad ad adı olarak "Host" sorar oturum açtığınızda parametre.

    Ağ seçinprotokol

    Desteklemek istediğiniz uygun iletişim kurallarını seçin.Çoğu uygulama tcp kullanır.

    Veritabanı dinleyici tanımlamak için ana bilgisayar bilgileri belirtin

    Ana bilgisayar veya dns diğer ad ad adı genellikle veritabanı üzerinde bulunduğu aynı bilgisayarı olan Oracle dinleyicisi çalıştığı bilgisayarın adıdır.Bazı iletişim kuralları için ek bilgiler sağlamanız gerekir.Örneğin, tcp seçerseniz, dinleyici hedef veritabanına bağlantı istekleri için dinleme bağlantı noktası sağlamanız gerekir.Varsayılan tcp yapılandırma kullandığı bağlantı noktası 1521.

  3. Anlık görüntü veya işlem yayın oluşturma, etkinleştirmek için olmayan-SQL Server aboneleri ve sonra bir gönderme temelli abonelik için abone.Daha fazla bilgi için, bkz:

Dizin izinlerini ayarlama

Hangi hesap SQL Server dağıtımcı çalıştırır üzerinde hizmet verilen okuma ve yürütmek izinleri Oracle istemci ağ yazılımı yüklü olduğu dizin (ve tüm alt dizinleri).

Dağıtıcı sql Server ve Oracle Yayımcı arasındaki bağlanırlığı sınama

Sonunda Net yapılandırma Yardımcısı Oracle Subscriber bağlantısını sınamak için bir seçenek olabilir.Bağlantısı sınamadan önce Oracle veritabanı örnek çevrimiçi olduğunu ve Oracle dinleyicisi çalıştığından emin olun.Sınama başarısız olursa, Oracle dba veritabanına bağlanmaya çalıştığınız için sorumlu kişi.

Oracle Subscriber başarılı bir bağlantı yaptıktan sonra abonelik için Dağıtım Aracısı için yapılandırıldığı gibi aynı hesabı ve parolayı kullanarak veritabanına oturum açmak denemek:

  1. ' I Startve i çalıştırmak.

  2. Türü 'ıcmd tıklatın ve Tamam.

  3. komut istemi isteminde şunu yazın:

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

    Örneğin: sqlplus replication/$tr0ngPasswerd@Oracle90Server

  4. Ağ yapılandırma başarılı oldu, oturum açma başarılı olur ve görürsünüz, bir SQL istemi.

Oracle giriş için dikkat edilmesi gereken noktalar

Oracle uygulama ikili dosyalarının derleneceğini yan yana yükleme destekler, ancak yalnızca bir dizi ikili çoğaltma tarafından kullanılabilir bir verilen saat.Her küme ikili dosyaları; bir Oracle giriş ile ilişkili olduğu ikili dosyalar dizini % ORACLE_HOME%\bin dir.Çoğaltma bağlantıları için Oracle Subscriber yaptığında, ikili dosyaları (özellikle en son sürüm ağ yazılımı istemci) doğru küme kullanılır emin olmanız gerekir.

Dağıtıcı tarafından kullanılan hesapları ile günlüğüne SQL Server hizmet ve SQL Server Aracısı hizmeti ve küme uygun ortam değişkenlerini.% oracle_home % değişken olmalı küme yükleme noktasına belirtilen ağ yazılımı istemci yüklü ne zaman başvurmak için.% path % karşılaşıldığında ilk Oracle girdi % oracle_home % \bin dizininde bulunmalıdır.Ortam değişkenlerini ayarlama hakkında bilgi için Windows belgelerine bakın.

Not

Birden fazla Oracle üzerinde ev varsa, SQL Server dağıtıcı, emin olun, Dağıtım Aracısı kullanarak en son Oracle ole db sağlayıcı.istemci bileşenlerini güncelleştirdiğinizde bazı durumlarda Oracle ole db sağlayıcı varsayılan olarak güncelleştirmez SQL Server dağıtıcı.Eski ole db kaldırma sağlayıcı ve en son ole db sağlayıcı.Yükleme ve kaldırma sağlayıcı hakkında daha fazla bilgi için Oracle belgelerine bakın.

Oracle aboneleri için değerlendirmeleri

Yanında dikkat edilmesi gereken noktalar konusunda ele alınan Olmayan-SQL Server aboneleri, Oracle aboneleri çoğaltılıyor olduğunda aşağıdaki konuları göz önünde bulundurun:

  • Oracle, hem boş dizeler ve null değerleri boş olarak davranır.Bu, sizin tanımladığınız önemlidir bir SQL Server gibi not null ve çoğaltmak için sütun sütunbir Oracle Subscriber. Oracle abone değişiklikleri uygularken hatalarını önlemek için aşağıdakilerden birini yapmanız gerekir:

    • Boş dizeler eklenmiş emin olun yayımlanan içine tablo sütun değerleri olarak.

    • Use –SkipErrors parametresi Dağıtım Aracısı geçmiş Günlüğü'ne hataların bildirilmesi için ve işleme devam etmek için kabul edilebilir olması durumunda Dağıtım Aracısı için.Specify the Oracle error code 1400 (-SkipErrors1400).Bu parametre hakkında daha fazla bilgi için bkz: İşlemsel kopyalama hatalar atlanıyor.

    • Komut dosyası oluşturulmuş oluşturma tablo Değiştir, not null öznitelik ilişkili olan tüm karakter sütunlarından kaldırma boş dizeler ve değiştirilmiş komut dosyası kullanarak makale için özel oluşturma komut dosyası olarak tedarik @creation_script parametresi sp_addarticle.

  • Oracle aboneleri 0x4071 bir şema seçeneği destekler.Şema seçenekleri hakkında daha fazla bilgi için bkz: sp_addarticle (Transact-sql).

Oracle için sql Server'dan veri türlerini eşleştirme

Aşağıdaki tablo, Oracle çalışan için bir abone veri çoğaltıldığında kullanılan veri türü eşlemeleri gösterir.

sql Server veri türü

Oracle veri türü

bigint

NUMBER(19,0)

binary(1-2000)

RAW(1-2000)

binary(2001-8000)

BLOB

bit

NUMBER(1)

char(1-2000)

CHAR(1-2000)

char(2001-4000)

VARCHAR2(2001-4000)

char(4001-8000)

CLOB

date

DATE

datetime

DATE

datetime2(0-7)

Oracle 9 ve 10 Oracle için TIMESTAMP(7); Oracle 8 için varchar(27)

datetimeoffset(0-7)

Oracle 9 ve Oracle 10 saat DİLİMİ ile TIMESTAMP(7); Oracle 8 için varchar(34)

decimal(1-38, 0-38)

NUMARASI (1-38, 0-38)

float(53)

FLOAT

float

FLOAT

geography

BLOB

geometry

BLOB

hierarchyid

BLOB

image

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)

NUMARASI (1-38, 0-38)

nvarchar(1-1000)

VARCHAR2(1-2000)

nvarchar(1001-4000)

NCLOB

nvarchar(max)

NCLOB

real

GERÇEK

smalldatetime

DATE

smallint

NUMBER(5,0)

smallmoney

NUMBER(10,4)

sql_variant

Yok

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)

BLOB

varchar(1-4000)

VARCHAR2(1-4000)

varchar(4001-8000)

CLOB

varbinary(max)

BLOB

varchar(max)

CLOB

xml

NCLOB