Tüm Ürünler
Search
Belge Merkezi

ApsaraDB for SelectDB:DTS kullanarak veri aktarma

Son Güncelleme:Oct 08, 2026

Alibaba Cloud Data Transmission Service (DTS), gerçek zamanlı veri akışı sağlar ve ilişkisel veritabanları (RDBMS), ilişkisel olmayan veritabanları (NoSQL) ve çevrimiçi analitik işleme (OLAP) sistemleri gibi veri kaynakları arasında veri alışverişini destekler. MySQL veya PostgreSQL veritabanından bir ApsaraDB for SelectDB örneğine veri geçişi yapmak veya verileri senkronize etmek için DTS'i kullanın.

Desteklenen veri kaynakları ve aktarım yöntemleri

DTS, MySQL ve PostgreSQL kaynak veritabanlarını destekler. Desteklenen MySQL kaynakları; kendi yönetiminizdeki bir MySQL, ApsaraDB RDS for MySQL veya PolarDB for MySQL veritabanıdır. Desteklenen PostgreSQL kaynakları ise kendi yönetiminizdeki bir PostgreSQL, ApsaraDB RDS for PostgreSQL veya PolarDB for PostgreSQL veritabanıdır. ApsaraDB for SelectDB üzerinde, alt saniye yanıt süreleriyle devasa veri hacimlerinde sorgu çalıştırabilir, on binlerce eşzamanlı nokta sorgusunu yönetebilir ve yüksek aktarım hızına sahip karmaşık analizler yapabilirsiniz.

Bu konuda, şemaları, tam verileri ve artımlı verileri bir ApsaraDB for SelectDB örneğine nasıl senkronize edeceğinizi açıklamak için ApsaraDB RDS for MySQL örnek olarak kullanılmıştır. Farklı bir kaynak veritabanı motoruna veya aktarım yöntemine ilişkin konu için bkz. Referanslar.

DTS veri senkronizasyonu genellikle mevcut verilerin geçirilmesini ve artımlı verilerin gerçek zamanlı olarak senkronize edilmesini içerir. Aşağıdaki tabloda veri geçişi ile veri senkronizasyonu karşılaştırılmaktadır.


Karşılaştırma öğesi


Veri geçişi


Veri senkronizasyonu


Senaryolar


Öncelikli olarak buluta geçiş senaryolarında kullanılır. Örneğin, şirket içi bir veritabanının, bir ECS örneğinde barındırılan kendi yönetiminizdeki bir veritabanının veya üçüncü taraf bir cloud veritabanının Alibaba Cloud veritabanına taşınması.


İki veri kaynağı arasında gerçek zamanlı veri senkronizasyonu için öncelikli olarak kullanılır. Aktif coğrafi çoğaltma, olağanüstü durum kurtarma, sınır ötesi veri senkronizasyonu, sorgu ve rapor yükünü hafifletme, cloud BI ve gerçek zamanlı veri ambarı gibi senaryolar için uygundur.


Amaç


Genellikle mevcut geçmiş verilerin taşınması amacıyla kullanılır.


Genellikle mevcut verilerin taşınması ve artımlı verilerin gerçek zamanlı olarak senkronize edilmesi amacıyla kullanılır.


Faturalama yöntemi


Yalnızca kullandıkça öde modeli desteklenir.


Hem kullandıkça öde hem de abonelik modelleri desteklenir.


Faturalama kuralları


Yalnızca artımlı veri geçişi çalışırken ücretlendirilirsiniz; duraklatıldığı dönemler hariçtir. Şema geçişi ve tam veri geçişi ücretsizdir.


Kullandıkça öde modelinde, artımlı veri senkronizasyonu çalışırken (duraklatıldığı dönemler dahil) ücretlendirilirsiniz. Şema senkronizasyonu ve tam veri senkronizasyonu ücretsizdir. Abonelik modelinde ise satın alma sırasında seçtiğiniz yapılandırma ve miktara göre tek seferlik bir ücret ödersiniz.

Daha fazla bilgi için bkz. DTS'te veri senkronizasyonu ile veri geçişi arasındaki fark nedir? ve DTS SSS.

Sınırlamalar

ApsaraDB RDS for MySQL'den ApsaraDB for SelectDB'ye veri senkronize etmeden önce aşağıdaki sınırlamaları göz önünde bulundurun:

  • Kaynak tablo anahtarları — Senkronize etmek istediğiniz tabloların birincil anahtarı veya benzersiz kısıtlaması olmalı ve alanlar benzersiz olmalıdır.

  • Hedef veri modeli — Verileri yalnızca bir ApsaraDB for SelectDB örneğinde unique veri modelini kullanan tablolara senkronize edebilirsiniz.

  • Veritabanı yükü — Veri senkronizasyonundan önce kaynak ve hedef veritabanlarının performansını değerlendirin. Veri senkronizasyonunu yoğun olmayan saatlerde gerçekleştirin. Aksi takdirde tam veri başlatma işlemi, her iki veritabanının da okuma ve yazma kaynaklarını tüketir ve veritabanı yükünü artırabilir.

  • Çevrimiçi DDL işlemleri — Veri senkronizasyonu sırasında, kaynak veritabanındaki senkronizasyon nesneleri üzerinde pt-online-schema-change gibi araçlar kullanarak çevrimiçi DDL işlemleri yapmayın. Aksi takdirde senkronizasyon başarısız olur.

  • Diğer kaynaklardan yapılan yazma işlemleri — Senkronizasyon sırasında, DTS dışındaki bir kaynak tarafından hedef veritabanına veri yazılırsa kaynak ve hedef veritabanlarındaki veriler tutarsız hale gelebilir.

    Belirli kaynak veritabanı türleri için aşağıdaki sınırlamalar geçerlidir:

  • Kendi yönetiminizdeki bir MySQL kaynak veritabanı için:

    • Senkronizasyon sırasında kaynak veritabanında birincil/ikincil anahtar değiştirme işlemi gerçekleşirse görev başarısız olur.

    • DTS, son senkronize edilen kaydın zaman damgasını mevcut saatle karşılaştırarak gecikme süresini hesaplar. Kaynak veritabanında uzun süre boyunca herhangi bir DML işlemi çalışmazsa gecikme raporlaması yanlış olabilir. Gecikme süresi çok yüksek görünüyorsa gecikmeyi güncellemek için kaynak veritabanında bir DML işlemi çalıştırın.

      Not

      Senkronizasyon için tam bir veritabanı seçtiyseniz bir kalp atışı tablosu oluşturun. Bu tabloyu her saniye güncelleyin veya üzerine yazın.

    • DTS, ikili günlük ofsetini ilerletmek için kaynak veritabanında periyodik olarak CREATE DATABASE IF NOT EXISTS test komutunu çalıştırır.

    • Kaynak veritabanınız Amazon Aurora MySQL veya başka bir kümelendirilmiş MySQL örneği ise görev yapılandırmasında kullanılan etki alanı adının veya IP adresinin —ve bunun DNS çözümlemesinin— her zaman bir okuma/yazma (RW) düğümünü işaret ettiğinden emin olun. Aksi takdirde senkronizasyon başarısız olabilir.

  • ApsaraDB RDS for MySQL kaynak veritabanı için:

    • İşlem günlüklerini kaydetmeyen salt okunur örnekler (örneğin ApsaraDB RDS for MySQL 5.6 salt okunur örnekleri) kaynak veritabanı olarak hizmet edemez.

    • DTS, ikili günlük ofsetini ilerletmek için kaynak veritabanında periyodik olarak CREATE DATABASE IF NOT EXISTS test komutunu çalıştırır.

Kendi yönetiminizdeki bir MySQL kaynak veritabanı için:

  • Senkronizasyon sırasında kaynak veritabanında birincil/ikincil anahtar değiştirme işlemi gerçekleşirse görev başarısız olur.

  • DTS, son senkronize edilen kaydın zaman damgasını mevcut saatle karşılaştırarak gecikme süresini hesaplar. Kaynak veritabanında uzun süre boyunca herhangi bir DML işlemi çalışmazsa gecikme raporlaması yanlış olabilir. Gecikme süresi çok yüksek görünüyorsa gecikmeyi güncellemek için kaynak veritabanında bir DML işlemi çalıştırın.

  • Not

    Senkronizasyon için tam bir veritabanı seçtiyseniz bir kalp atışı tablosu oluşturun. Bu tabloyu her saniye güncelleyin veya üzerine yazın.

  • DTS, ikili günlük ofsetini ilerletmek için kaynak veritabanında periyodik olarak CREATE DATABASE IF NOT EXISTS test komutunu çalıştırır.

  • Kaynak veritabanınız Amazon Aurora MySQL veya başka bir kümelendirilmiş MySQL örneği ise görev yapılandırmasında kullanılan etki alanı adının veya IP adresinin —ve bunun DNS çözümlemesinin— her zaman bir okuma/yazma (RW) düğümünü işaret ettiğinden emin olun. Aksi takdirde senkronizasyon başarısız olabilir.

ApsaraDB RDS for MySQL kaynak veritabanı için:

  • İşlem günlüklerini kaydetmeyen salt okunur örnekler (örneğin ApsaraDB RDS for MySQL 5.6 salt okunur örnekleri) kaynak veritabanı olarak hizmet edemez.

  • DTS, ikili günlük ofsetini ilerletmek için kaynak veritabanında periyodik olarak CREATE DATABASE IF NOT EXISTS test komutunu çalıştırır.

Önkoşullar

İzinler


Veritabanı


Gerekli izinler


Kaynak ApsaraDB RDS for MySQL


Senkronize etmek istediğiniz nesneler üzerinde okuma ve yazma izinleri.


Hedef ApsaraDB for SelectDB


Küme erişim izni (Usage_priv) ve veritabanı üzerinde okuma ve yazma izinleri (Select_priv, Load_priv, Alter_priv, Create_priv ve Drop_priv).

Not

Kullandığınız kaynak veritabanı hesabı ApsaraDB RDS for MySQL konsolunda oluşturulup yetkilendirilmediyse hesabın REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW ve SELECT izinlerine sahip olduğundan emin olun.

Kaynak veritabanında ikili günlüğe kaydetme

ApsaraDB RDS for MySQL için ikili günlüğe kaydetme varsayılan olarak etkindir. Senkronizasyon görevini yapılandırmadan önce aşağıdaki ayarları doğrulayın:

  • Satır görüntüsü biçimi — binlog_row_image parametresinin full olarak ayarlandığından emin olun. Aksi takdirde ön denetim sırasında bir hata bildirilir ve veri senkronizasyonu görevi başlatılamaz. Parametrenin nasıl yapılandırılacağı hakkında bilgi için bkz. Örnek parametrelerini ayarlama.

  • Kendi yönetiminizdeki MySQL veritabanları — Kaynak örnek kendi yönetiminizdeki bir MySQL veritabanıysa ikili günlüğe kaydetmeyi etkinleştirin, binlog_format parametresini row olarak ve binlog_row_image parametresini full olarak ayarlayın.

  • Çift birincil kümeler — Kaynak kendi yönetiminizdeki MySQL örneği, her düğümün diğerinin çoğaltması olduğu çift birincil bir küme ise DTS'in tüm ikili günlükleri alabilmesi için log_slave_updates parametresini etkinleştirin. Daha fazla bilgi için bkz. Kendi yönetiminizdeki bir MySQL veritabanı için hesap oluşturma ve ikili günlüğü yapılandırma.

  • Günlük saklama — DTS, kaynak veritabanının yerel ikili günlüklerinin en az yedi gün boyunca saklanmasını gerektirir. Aksi takdirde DTS ikili günlükleri alamayabilir ve görev başarısız olabilir. Aşırı durumlarda veri tutarsızlığı veya veri kaybı meydana gelebilir. İkili günlük saklama süresinin DTS tarafından gereken süreden kısa olmasından kaynaklanan sorunlar DTS Hizmet Seviyesi Sözleşmesi (SLA) kapsamında değildir. Kaynak bir ApsaraDB RDS for MySQL örneği ise bkz. Yerel günlükleri (ikili günlükler) yönetme.

Hedef tablolar

Hedef tabloları DTS'in şemaları senkronize etmesine bırakmak yerine kendiniz oluşturuyorsanız görevi başlatmadan önce hedef ApsaraDB for SelectDB örneğinde unique veri modelini kullanan tablolar oluşturun. Kullanılacak sütun türleri için bkz. Veri türü eşlemeleri. Kararın kendisi için bkz. Senkronizasyon nesnelerini ve gelişmiş ayarları yapılandırma.

Yordam

Kaynak ve hedef veritabanlarını yapılandırma

  1. ApsaraDB for SelectDB konsolunda oturum açın.

  2. Üst gezinme çubuğunda örneğinizin bulunduğu bölgeyi seçin.

  3. Instances sayfasında, Instance Details sayfasına gitmek için örneğin ID değerini tıklayın.

  4. Instance Details sayfasında sol gezinme bölmesinde Data Pipeline seçeneğini tıklayın. Üst menü çubuğunda Data Synchronization sekmesini seçin.

  5. Create Synchronization Task seçeneğini tıklayın ve aşağıdaki tabloda açıklandığı gibi kaynak ve hedef veritabanı bilgilerini yapılandırın.


    Kategori


    Ayar


    Açıklama


    Görev bilgileri


    Task Name


    DTS otomatik olarak bir görev adı oluşturur. Kolay tanımlama için açıklayıcı bir ad belirtmenizi öneririz. Adın benzersiz olması gerekmez.


    Kaynak veritabanı


    Database Type


    MySQL seçeneğini belirleyin.


    Access Method


    Alibaba Cloud Instance seçeneğini belirleyin.


    Instance Region


    Kaynak ApsaraDB RDS for MySQL örneğinin bölgesini seçin.


    RDS Instance ID


    Kaynak ApsaraDB RDS for MySQL örneğinin kimliğini seçin.


    Database Account


    Kaynak ApsaraDB RDS for MySQL örneğinin veritabanı hesabını girin. Gerekli izinler hakkında bilgi için bkz. İzinler.


    Database Password


    Veritabanı hesabına karşılık gelen parolayı girin.


    Encryption


    Gereksinimlerinize göre Non-encrypted veya SSL-encrypted seçeneğini belirleyin. SSL-encrypted seçeneğini belirlerseniz RDS for MySQL örneği için SSL şifrelemeyi önceden etkinleştirmeniz gerekir. Daha fazla bilgi için bkz. SSL şifrelemeyi hızlıca etkinleştirmek için cloud sertifikası kullanma.


    Hedef veritabanı


    Database Type


    SelectDB seçeneğini belirleyin.


    Access Method


    Alibaba Cloud Instance seçeneğini belirleyin.


    Instance Region


    Hedef ApsaraDB for SelectDB örneğinin bölgesini seçin.


    Instance ID


    Hedef ApsaraDB for SelectDB örneğinin kimliğini seçin.


    Database Account


    Hedef ApsaraDB for SelectDB örneğinin veritabanı hesabını girin. Gerekli izinler hakkında bilgi için bkz. İzinler.


    Database Password


    Veritabanı hesabına karşılık gelen parolayı girin.

  6. Yapılandırmayı tamamladıktan sonra sayfanın alt kısmındaki Test Connection to Proceed seçeneğini tıklayın.

    Kaynak veya hedef veritabanı ApsaraDB for SelectDB, ApsaraDB RDS for MySQL veya ApsaraDB for MongoDB gibi bir Alibaba Cloud veritabanı örneğiyse DTS, ilgili bölgedeki DTS sunucularının IP adreslerini Alibaba Cloud veritabanı örneğinin izin listesine otomatik olarak ekler.

Uyarı

DTS sunucularının genel IP adres aralıklarının DTS tarafından otomatik olarak veya sizin tarafınızdan manuel olarak eklenmesi güvenlik riskleri oluşturabilir. Bu ürünü kullanarak bu potansiyel riskleri kabul ettiğinizi beyan edersiniz. Hesap parolalarını güçlendirmek, her ağ segmentinde açık olan bağlantı noktalarını sınırlamak, dahili API'ler arasındaki iletişim için kimlik doğrulama kullanmak ve gereksiz ağ segmentlerini düzenli olarak gözden geçirip kısıtlamak dahil ancak bunlarla sınırlı olmamak üzere temel güvenlik önlemlerini uygulamanız gerekir. Express Connect, VPN ağ geçidi veya Smart Access Gateway kullanarak dahili ağ üzerinden de bağlanabilirsiniz.

Senkronizasyon nesnelerini ve gelişmiş ayarları yapılandırma

  1. Görev nesnelerini ve gelişmiş ayarları yapılandırın. Aşağıdaki tabloda ayarlar açıklanmaktadır.

    Ayar

    Açıklama

    Synchronization Types

    Incremental Data Synchronization seçili gelir. Varsayılan olarak Schema Synchronization ve Full Data Synchronization seçeneklerini de belirlemeniz gerekir. Ön denetim tamamlandıktan sonra DTS, seçilen nesnelerin tam veri senkronizasyonunu kaynak örnekten hedef kümeye gerçekleştirir. Bu işlem, sonraki artımlı veri senkronizasyonu için temel veriler olarak hizmet eder.

    Schema Synchronization seçip seçmemeniz, hedef örnekte ne hazırlamanız gerektiğini belirler. İki dal için bu tablonun ardından gelen açıklamaya bakın.

    Processing Mode of Conflicting Tables

    • Precheck and Report Errors: Hedef veritabanında aynı ada sahip bir tablonun olup olmadığını kontrol eder. Aynı ada sahip bir tablo yoksa ön denetim başarılı olur. Aynı ada sahip bir tablo varsa ön denetim başarısız olur ve veri senkronizasyonu görevi başlamaz.

      Not

      Hedef veritabanındaki aynı ada sahip tabloyu silemiyor veya yeniden adlandıramıyorsanız bunu farklı bir tablo adıyla eşleyebilirsiniz. Daha fazla bilgi için bkz. Tablo ve sütun adlarını eşleme.

    • Ignore Errors and Proceed: Hedef veritabanındaki yinelenen tablo adları kontrolünü atlar.

      Uyarı

      Ignore Errors and Proceed seçeneğini belirlemek veri tutarsızlığına neden olabilir ve işinizi riske atabilir. Örneğin:

      • Tablo şemaları aynıysa ve hedef veritabanındaki bir kayıt, kaynak veritabanındaki bir kayıtla aynı birincil anahtar veya benzersiz anahtar değerine sahipse:

        • Tam senkronizasyon sırasında DTS, hedef kümedeki kaydı korur. Kaynak veritabanından gelen ilgili kayıt senkronize edilmez.

        • Artımlı senkronizasyon sırasında kaynak veritabanından gelen kayıt, hedef veritabanındaki kaydın üzerine yazar.

      • Tablo şemaları farklıysa ilk veri senkronizasyonu başarısız olabilir. Bu durum, yalnızca kısmi sütun verilerinin senkronize edilmesine veya senkronizasyonun tamamen başarısız olmasına neden olabilir. Dikkatli ilerleyin.

    Capitalization of Object Names in Destination Instance

    Hedef örnekteki senkronizasyon nesnelerinin veritabanı, tablo ve sütun adları için büyük/küçük harf ilkesini yapılandırın. Varsayılan olarak DTS Default Policy kullanılır: veritabanı ve tablo adları küçük harfe eşlenir, sütun adlarının büyük/küçük harf durumu ise kaynak veritabanındakiyle aynıdır. Same as Source veya Same as Target Default gibi başka bir ilke de seçebilirsiniz. Daha fazla bilgi için bkz. Hedef veritabanı nesne adları için büyük/küçük harf ilkesi.

    Source Objects

    Source Objects kutusunda senkronize etmek istediğiniz nesneleri tıklayın ve ardından bunları Selected Objects kutusuna taşımak için Right arrow simgesini tıklayın. Senkronizasyon nesnelerini veritabanı, tablo veya sütun düzeyinde seçebilirsiniz. Nesneleri veritabanı düzeyinde seçerseniz daha sonra eklenen tablolar için veri senkronizasyonu desteklenmez. DTS'i kullanırken tablolar eklemeniz gerekebilecekse senkronizasyon nesnelerini tablo düzeyinde seçin. Bunları daha sonra görev listesindeki İşlemler sütunundaki Modify Synchronization Objects seçeneğini kullanarak değiştirebilirsiniz. Nesneleri tablo düzeyinde seçer ve sütun adlarını eşleme gibi düzenlemeler yapmanız gerekirse tek bir senkronizasyon görevi en fazla 1.000 tabloyu destekler. Bu sınırı aşarsanız görevi gönderdikten sonra bir hata döndürülür. Bu durumda tabloları bölün ve birden fazla görevi toplu olarak yapılandırın veya tüm veritabanını senkronize eden bir görev yapılandırın.

    Selected Objects

    Not: Veritabanı veya tablo düzeyinde senkronize edilecek SQL işlemlerini seçmek için Selected Objects içinde senkronize etmek istediğiniz nesneye sağ tıklayın ve ardından açılan iletişim kutusunda gerekli SQL işlemlerini seçin. Desteklenen işlemler için bkz. Artımlı senkronizasyon için desteklenen SQL işlemleri. Bir WHERE koşulu kullanarak verileri filtrelemek için Selected Objects içinde senkronize etmek istediğiniz tabloya sağ tıklayın ve ardından açılan iletişim kutusunda filtre koşulunu ayarlayın. Daha fazla bilgi için bkz. Filtre koşullarını yapılandırma. Nesne adı eşleme özelliğini kullanırsanız eşlenen nesneye bağlı diğer nesnelerin senkronizasyonu başarısız olabilir.

    Synchronization Types için yaptığınız seçim, hedef tabloları kimin oluşturacağını belirler:

    • Schema Synchronization seçerseniz — Hedef tablo yapısını bir sonraki aşamada, Hedef tablo şemalarını ve alanlarını yapılandırma aşamasında tanımlayabilirsiniz. Kaynak tablonun birincil anahtarı veya benzersiz kısıtlaması yoksa bu aşamada tabloyu unique veri modelini kullanacak şekilde yapılandırın ve birincil anahtar sütununu manuel olarak belirtin.

    • Schema Synchronization seçmezseniz — Gerekli şemayla unique veri modelini kullanan tabloları hedef ApsaraDB for SelectDB örneğinde önceden oluşturun. Bu durumda hedef tablo şemalarını ve alanlarını yapılandırma aşaması kullanılamaz. Daha fazla bilgi için bkz. Veri türü eşlemeleri ve Veri Modelleri.

  2. Sayfanın alt kısmında, isteğe bağlı olarak Advanced seçeneğini genişleterek gelişmiş ayarları yapılandırabilirsiniz. Aşağıdaki tabloda gelişmiş ayarlar açıklanmaktadır.

Ayar

Açıklama

Dedicated Cluster for Task Scheduling

Varsayılan olarak DTS, görevleri paylaşılan bir küme üzerinde zamanlar ve bir küme seçmeniz gerekmez. Daha kararlı performans için DTS senkronizasyon görevlerini çalıştırmak üzere özel bir küme satın alabilirsiniz. Daha fazla bilgi için bkz. DTS özel kümesi nedir?.

Retry Time for Failed Connections

Bir senkronizasyon görevi başladıktan sonra kaynak veya hedef veritabanına bağlantı başarısız olursa DTS bir hata bildirir ve hemen bağlantıyı yeniden denemeye başlar. Varsayılan yeniden deneme süresi 720 dakikadır. 10 ile 1.440 dakika arasında özel bir yeniden deneme süresi de belirtebilirsiniz. Süreyi 30 dakika veya daha fazla olarak ayarlamanızı öneririz. DTS, belirtilen süre içinde veritabanına başarıyla yeniden bağlanırsa senkronizasyon görevi otomatik olarak devam eder. Aksi takdirde görev başarısız olur.

Not
  • Aynı kaynağı veya hedefi paylaşan birden fazla DTS örneğiniz varsa (örneğin Örnek A ve Örnek B) ve Örnek A için ağ yeniden deneme süresini 30 dakika, Örnek B için 60 dakika olarak ayarlarsanız her ikisi için de daha kısa olan 30 dakikalık süre kullanılır.

  • DTS, bağlantı yeniden deneme süresi boyunca görev çalışma süresi için ücret aldığından yeniden deneme süresini iş ihtiyaçlarınıza göre özelleştirmenizi veya kaynak ve hedef veritabanı örnekleri serbest bırakıldıktan sonra DTS örneğini mümkün olan en kısa sürede serbest bırakmanızı öneririz.

Retry Time for Other Issues

Senkronizasyon görevi başladıktan sonra kaynak veya hedef veritabanında bağlantı dışı diğer sorunlar (DDL veya DML çalıştırma istisnaları gibi) oluşursa DTS bir hata bildirir ve hemen sürekli yeniden deneme işlemlerini başlatır. Varsayılan yeniden deneme süresi 10 dakikadır. 1 ile 1.440 dakika arasında özel bir yeniden deneme süresi de belirtebilirsiniz. Süreyi 10 dakika veya daha fazla olarak ayarlamanızı öneririz. İlgili işlemler belirlenen yeniden deneme süresi içinde başarılı olursa senkronizasyon görevi otomatik olarak devam eder. Aksi takdirde görev başarısız olur.

Önemli

Retry Time for Other Issues değeri Retry Time for Failed Connections değerinden düşük olmalıdır.

Enable Throttling for Full Data Synchronization

Tam senkronizasyon aşamasında DTS, kaynak ve hedef veritabanlarından okuma ve yazma kaynaklarını tüketir; bu durum veritabanı yükünü artırabilir. Kaynak ve hedef veritabanlarındaki yükü azaltmak için Queries per second (QPS) to the source database, RPS of Full Data Migration ve Data migration speed for full migration (MB/s) parametrelerini yapılandırarak tam senkronizasyon görevi için bir hız sınırı ayarlayabilirsiniz.

Not
  • Bu yapılandırma öğesi yalnızca Synchronization Types değeri Full Data Synchronization olarak ayarlandığında kullanılabilir.

  • Senkronizasyon örneği çalışırken tam senkronizasyon hızını ayarlayabilirsiniz da.

Enable Throttling for Incremental Data Synchronization

Artımlı senkronizasyon görevi için de bir hız sınırı ayarlayabilirsiniz. Hedef veritabanındaki baskıyı azaltmak için RPS of Incremental Data Synchronization ve Data synchronization speed for incremental synchronization (MB/s) değerlerini ayarlayın.

Environment Tag

Gereksinimlerinize göre örneği tanımlamak için bir ortam etiketi seçin. Bu örnekte etiket gerekmez.

Whether to delete SQL operations on heartbeat tables of forward and reverse tasks

DTS örneği çalışırken kalp atışı SQL bilgilerinin kaynak veritabanına yazılıp yazılmayacağını seçin.

  • Yes: Kalp atışı SQL bilgileri kaynak veritabanına yazılmaz. Bu durum DTS örneğinin gecikme bildirmesine neden olabilir.

  • No: Kalp atışı SQL bilgilerini kaynak veritabanına yazar. Bu durum, kaynak veritabanının fiziksel yedekleme ve klonlama gibi özelliklerini engelleyebilir.

Configure ETL

Çıkarma, dönüştürme ve yükleme (ETL) özelliğini etkinleştirip etkinleştirmeyeceğinizi seçin. Daha fazla bilgi için bkz. ETL nedir? Geçerli değerler:

Monitoring and Alerting

Uyarıları yapılandırıp yapılandırmayacağınızı belirtin. Senkronizasyon başarısız olursa veya gecikme belirtilen eşiği aşarsa bir uyarı kişisine bildirim gönderilir.

Hedef tablo şemalarını ve alanlarını yapılandırma

  1. (İsteğe bağlı) Önceki yapılandırmaları tamamladıktan sonra hedef örnekte senkronize etmek istediğiniz tabloların Primary Key Column, Distribution Key ve Engine ayarlarını yapmak için Next: Configure Database and Table Fields seçeneğini tıklayın.

    • Bu adım, görev nesnelerini yapılandırırken Synchronization Types seçeneği Schema Synchronization içerdiğinde kullanılabilir. Definition Status seçeneğini All olarak ayarlayabilir ve ardından değişiklikler yapabilirsiniz.

    • Primary Key Column için bileşik birincil anahtar oluşturmak üzere birden çok sütun seçebilirsiniz. Ayrıca Primary Key Column içinden bir veya daha fazla sütunu Distribution Key olarak seçmeniz gerekir. Engine için yalnızca unique seçebilirsiniz.

Görev ayarlarını kaydetme ve ön denetim çalıştırma

DTS, senkronizasyon görevi başlamadan önce bir ön denetim çalıştırır. Görev yalnızca ön denetim başarılı olduktan sonra başlayabilir.

  1. Görevi kaydedin ve ön denetimi çalıştırın.

    • Bu örneği yapılandırmak için bir API işlemi çağırırken kullanılan parametreleri görüntülemek için fare imlecini Next: Save Task Settings and Precheck düğmesinin üzerine getirin. Ardından görüntülenen mesajda Preview OpenAPI parameters seçeneğini tıklayın.

    • API parametrelerini görüntülemeniz gerekmiyorsa veya görüntülemeyi tamamladıysanız sayfanın alt kısmındaki Next: Save Task Settings and Precheck seçeneğini tıklayın.

  2. Ön denetim sonucunu aşağıdaki gibi işleyin:

    • Başarısız denetim öğeleri — Başarısız denetim öğesinin yanındaki View Details seçeneğini tıklayın, istendiği gibi sorunu giderin ve ardından ön denetimi yeniden çalıştırın.

    • Yoksayılamayan uyarı denetim öğeleri — Başarısız denetim öğesinin yanındaki View Details seçeneğini tıklayın, istendiği gibi sorunu giderin ve ardından ön denetimi yeniden çalıştırın.

    • Düzeltmeden yoksayabileceğiniz uyarı denetim öğeleri — Sırasıyla View Alert Details, Confirm Ignore, OK ve Run Pre-check Again seçeneklerini tıklayarak uyarı denetim öğelerini atlayın ve ön denetimi yeniden çalıştırın. Uyarı denetim öğelerini atlarsanız veri tutarsızlığı gibi sorunlar oluşabilir ve işiniz riske girebilir.

  3. Precheck Pass Rate değeri %100 gösterdiğinde Next: Purchase seçeneğini tıklayın.

Örneği satın alma ve görevi başlatma

  1. Purchase Instance sayfasında veri senkronizasyonu örneğinin faturalama yöntemini ve senkronizasyon örneği sınıfını seçin. Daha fazla bilgi için aşağıdaki tabloya bakın.


    Kategori


    Parametre


    Açıklama


    New Instance Class


    Faturalama yöntemi


    Abonelik: Örneği oluştururken ödeme yaparsınız. Bu yöntem uzun vadeli kullanım için uygundur. Kullandıkça öde modeline göre daha maliyet etkindir ve abonelik süresi ne kadar uzun olursa indirim o kadar büyük olur. Kullandıkça öde: Saat başına faturalandırılırsınız. Bu yöntem kısa vadeli kullanım için uygundur. Maliyetleri azaltmak için kullanımdan sonra örneği hemen serbest bırakabilirsiniz.


    Kaynak grubu ayarları


    Örneğin ait olduğu kaynak grubu. Varsayılan değer default resource group şeklindedir. Daha fazla bilgi için bkz. Kaynak Yönetimi nedir.


    Senkronizasyon örneği sınıfı


    DTS, farklı performans seviyelerine sahip senkronizasyon örneği sınıfları sunar. Örnek sınıfı senkronizasyon hızını etkiler. İş senaryonuzu temel alarak bir örnek sınıfı seçin. Daha fazla bilgi için bkz. Veri senkronizasyonu örneklerinin teknik özellikleri.


    Abonelik süresi


    Abonelik faturalama yöntemini kullanıyorsanız süreyi ve örnek sayısını seçin. Aylık abonelik için 1 ila 9 ay, yıllık abonelik için 1, 2, 3 veya 5 yıl seçebilirsiniz. Not: Bu seçenek yalnızca faturalama yöntemi Subscription olduğunda görüntülenir.

  2. Yapılandırmayı tamamladıktan sonra Data Transmission (Pay-As-You-Go) Terms of Service metnini okuyun ve kabul edin.

  3. Buy and Start seçeneğini tıklayın.

    Senkronizasyon görevi başlar. Görev ilerlemesini Data Synchronization sayfasında görüntüleyebilirsiniz.

Artımlı senkronizasyon için desteklenen SQL işlemleri

Aşağıdaki tabloda DTS'in artımlı senkronizasyon sırasında senkronize ettiği SQL işlemleri listelenmektedir.


İşlem türü


SQL deyimi


DML


INSERT, UPDATE, DELETE


DDL


ADD COLUMN; DROP COLUMN, DROP TABLE; TRUNCATE TABLE

Veri türü eşlemeleri

Veriler MySQL'den ApsaraDB for SelectDB'ye senkronize edilirken veri türleri dönüştürülür. Aşağıdaki tabloda DTS'in uyguladığı eşlemeler listelenmektedir.


Kategori


MySQL veri türü


ApsaraDB for SelectDB veri türü


Sayısal


TINYINT


TINYINT


TINYINT UNSIGNED


SMALLINT


SMALLINT


SMALLINT


SMALLINT UNSIGNED


INT


MEDIUMINT


INT


MEDIUMINT UNSIGNED


BIGINT


INT


INT


INT UNSIGNED


BIGINT


BIGINT


BIGINT


BIGINT UNSIGNED


LARGEINT


BIT(M)


INT


DECIMAL


DECIMAL


NUMERIC


DECIMAL


FLOAT


FLOAT


DOUBLE


DOUBLE


BOOL, BOOLEAN


BOOLEAN


Tarih ve saat


DATE


DATEV2


DATETIME[(fsp)]


DATETIMEV2


TIMESTAMP[(fsp)]


DATETIMEV2


TIME[(fsp)]


VARCHAR


YEAR[(4)]


INT


Dize


CHAR, VARCHAR


VARCHAR


BINARY, VARBINARY


STRING


TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT


STRING


TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB


STRING


ENUM


STRING


SET


STRING


JSON


STRING

Belirli dönüşümler için aşağıdaki kurallar geçerlidir:

  • DECIMAL — zerofill desteklenmez.

  • CHAR ve VARCHAR — Veri kaybını önlemek için CHAR ve VARCHAR(n) verileri ApsaraDB for SelectDB'ye senkronize edildikten sonra VARCHAR(3*n) değerine dönüştürülür. Veri uzunluğu belirtilmezse ApsaraDB for SelectDB varsayılan değeri olan VARCHAR(65533) kullanılır. Veri uzunluğu 65.533'ü aşarsa veriler ApsaraDB for SelectDB'ye senkronize edildikten sonra STRING değerine dönüştürülür.

SSS

S: DTS'te veri senkronizasyonu ile veri geçişi arasındaki fark nedir?

C: İki mod senaryolar, amaç ve faturalama açısından farklılık gösterir. Karşılaştırma için bkz. Desteklenen veri kaynakları ve aktarım yöntemleri.

S: Kaynak tabloya alan ekleyebilir miyim?

C: Alan işlemleri için ADD COLUMN ve DROP COLUMN desteklenir ve DTS bunları otomatik olarak senkronize eder. Artımlı olarak senkronize edilebilen diğer deyimler için bkz. Artımlı senkronizasyon için desteklenen SQL işlemleri.

S: Yeni tabloların (CREATE TABLE) senkronizasyonu destekleniyor mu?

C: Source Objects için seçtiğiniz granülerliğe bağlı olarak aşağıdaki ilkeler uygulanır:

  • Senkronizasyon nesnelerini veritabanı düzeyinde seçtiyseniz yeni tabloların senkronizasyonu desteklenmez. Ancak ilgili tabloyu ApsaraDB for SelectDB'de manuel olarak oluşturabilirsiniz; DTS daha sonra yeni tablonun verilerini otomatik olarak senkronize eder.

  • Senkronizasyon nesnelerini tablo düzeyinde seçtiyseniz görev listesindeki İşlemler sütununda Modify Synchronization Objects seçeneğini tıklayarak yeni tabloyu ekleyebilirsiniz.

S: Birincil anahtarı veya benzersiz anahtar kısıtlaması olmayan bir tabloyu nasıl işlerim?

C: Tablo için birincil anahtar tanımlamak üzere şema senkronizasyonunu kullanın: tabloyu unique veri modelini kullanacak şekilde yapılandırın ve birincil anahtar sütununu manuel olarak belirtin. Bu seçimin ait olduğu dal için bkz. Senkronizasyon nesnelerini ve gelişmiş ayarları yapılandırma.

Referanslar

Başka bir kaynak veritabanı motorundan veri senkronize etmek veya geçirmek için kaynak veritabanınıza ve aktarım yönteminize uygun konuya bakın.


Kaynak veritabanı


Mevcut verileri geçirme


Şemaları, tam verileri ve artımlı verileri senkronize etme


ApsaraDB RDS for MySQL


ApsaraDB RDS for MySQL'den ApsaraDB for SelectDB'ye veri geçirme


ApsaraDB RDS for MySQL'den ApsaraDB for SelectDB'ye veri senkronize etme


PolarDB for MySQL


PolarDB for MySQL'den ApsaraDB for SelectDB'ye veri geçirme


PolarDB for MySQL'den ApsaraDB for SelectDB'ye veri senkronize etme


ApsaraDB RDS for PostgreSQL


ApsaraDB RDS for PostgreSQL'den ApsaraDB for SelectDB'ye veri geçirme


ApsaraDB RDS for PostgreSQL'den ApsaraDB for SelectDB'ye veri senkronize etme


PolarDB for PostgreSQL


PolarDB for PostgreSQL'den ApsaraDB for SelectDB'ye veri geçirme


PolarDB for PostgreSQL'den ApsaraDB for SelectDB'ye veri senkronize etme