Tüm Ürünler
Search
Belge Merkezi

ApsaraDB RDS:Use native replication instances

Son Güncelleme:Oct 03, 2026

ApsaraDB RDS for MySQL yerel çoğaltma özelliği, ek geçiş araçları veya ücretli veri aktarım hizmetlerine gerek kalmadan, standart MySQL çoğaltma protokolünü kullanarak verilerinizi kendi yönettiğiniz bir MySQL veritabanından doğrudan bir RDS örneğine aktarmanızı sağlar.

Kullanım senaryoları

  • Minimum kesinti süresiyle cloud'a geçiş: Kendi yönettiğiniz veritabanınızın tam yedeğini içe aktarın ve uygulamanızı yeni ortama taşıyana kadar RDS örneğini çoğaltma yoluyla senkronize tutun.

  • Hibrit veri senkronizasyonu: Örneğin aşamalı bir geçiş sürecinde veya olağanüstü durum kurtarma kurulumunda, şirket içi MySQL sunucunuz ile cloud'daki RDS örneğiniz arasında sürekli senkronizasyon sağlayın.

  • Çoklu cloud çoğaltması: Başka bir cloud sağlayıcısında barındırılan bir MySQL veritabanından ApsaraDB RDS for MySQL örneğine veri çoğaltın.

Ön koşullar

Başlamadan önce aşağıdaki koşulları sağladığınızdan emin olun:

  • Veritabanı sürümü: MySQL 5.7 (küçük sürüm 20240930 veya üzeri) ya da MySQL 8,0 (küçük sürüm 20250531 veya üzeri)

  • Ürün serisi: Basic Edition

  • Faturalama yöntemi: Abonelik veya kullandıkça öde

  • Bölge: China (Shanghai), China (Beijing), China (Shenzhen), China (Guangzhou) veya China (Chengdu)

Yerel çoğaltma özelliği şu anda yalnızca yukarıda listelenen bölgelerde kullanılabilir. Diğer bölgelerde bu özelliğe ihtiyaç duyuyorsanız destek talebi oluşturun .

Serverless yerel çoğaltma örneği kullanmak için öncelikle kullandıkça öde faturalama yöntemine sahip bir örnek oluşturun, yerel çoğaltmayı etkinleştirin ve ardından faturalama yöntemini Serverless olarak değiştirin.

Faturalandırma

  • Yerel çoğaltma etkinleştirilmiş yeni örnek: Standart örnek ücretleri geçerlidir. Yerel çoğaltma özelliğinin kendisi için ek bir ücret alınmaz.

  • Mevcut bir örneği yükseltme: Ek ücret yoktur.

  • Object Storage Service (OSS) üzerinden veri içe aktarma: Yedekleme dosyası OSS'te depolandığı sürece OSS depolama ücretleri uygulanır.

Sınırlamalar

İşlevsel sınırlamalar

  • Yerel çoğaltma etkin olduğu sürece örnek read-only modunda çalışır.

  • Ana sürüm yükseltmeleri desteklenmez.

  • Farklı ana sürümler arasında çoğaltma desteklenmez. Kendi yönettiğiniz MySQL veritabanı ile RDS yerel çoğaltma örneği aynı ana sürümü çalıştırmalıdır (örneğin, her ikisi de MySQL 8,0 olmalıdır).

  • Ürün serisi yükseltmesi desteklenmez (örneğin, Basic Edition'dan High-availability Edition veya Cluster Edition'a geçiş).

  • VPC değiştirme işlemi desteklenmez.

  • Veritabanı ve tablo kurtarma işlemi desteklenmez.

  • Mevcut bir örneği yerel çoğaltma örneğine yükselttiğinizde yaklaşık 30 saniye süren geçici bir bağlantı kesintisi yaşanabilir. Bu işlemi yoğun olmayan saatlerde gerçekleştirin ve uygulamanızın yeniden bağlantı mekanizmasına sahip olduğundan emin olun.

İzin sınırlamaları

Yetkili hesap kapsamı

Yerel çoğaltma için gereken bazı SUPER yetkileri, RDS örneğinin yetkili hesabına atanmıştır. Yalnızca yetkili hesap, CHANGE MASTER TO (MySQL 5.7) veya CHANGE REPLICATION SOURCE TO (MySQL 8,0) gibi yerel çoğaltma komutlarını çalıştırabilir.

Çoğaltma izinleri beyaz listesi

Yerel çoğaltma, harici bir kaynaktan binary log olaylarını uygularken öncelikle izinleri kontrol eder. Aşağıdaki listede belirtilenlerin ötesinde izin gerektiren herhangi bir işlem reddedilir ve çoğaltma bağlantısı kopar:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE,
DROP, RELOAD, PROCESS, REFERENCES, INDEX,
ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES,
LOCK TABLES, EXECUTE, REPLICATION SLAVE,
REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,
CREATE ROUTINE, ALTER ROUTINE, CREATE USER,
EVENT, TRIGGER ON *.* TO XXX;

Sistem veritabanı sınırlamaları

Çoğaltma sırasında sistem veritabanları üzerinde yapılan tüm işlemler yok sayılır. Sistem veritabanları şunlardır: mysql, sys, information_schema, performance_schema ve __recyclebin__.

Sistem veritabanlarını dolaylı olarak değiştiren işlemler —örneğin CREATE USER ve GRANT —yok sayılmaz. Bu işlemlerin çoğaltma izinleri beyaz listesine uygun olması gerekir. Atanan izinlerin ötesindeki ifadeler, örneğin GRANT SUPER ON *.* TO xxx; , çoğaltma bağlantısını koparacaktır.

GTID sınırlamaları

ApsaraDB RDS for MySQL, Global Transaction Identifier (GTID) modunun etkin olmasını gerektirir ve bu modun devre dışı bırakılmasını desteklemez. Harici bir MySQL veritabanından çoğaltma yapmak için kaynak veritabanında da GTID'nin etkin olması gerekir.

Çoğaltmayı ayarlamadan önce, GTID durumunu kontrol etmek için kaynak veritabanında aşağıdaki komutu çalıştırın:

SHOW VARIABLES LIKE 'gtid_mode';

GTID etkin değilse aşağıdaki komutu çalıştırın:

SET GLOBAL gtid_mode = ON;

Bakım davranışı

Sunucu arası geçiş veya küçük sürüm yükseltmesi gibi bakım işlemleri sırasında, yerel çoğaltma komut izinleri ve parametre değiştirme izinleri geçici olarak iptal edilir. Çoğaltma işlemi bundan etkilenmez. Bakım tamamlandıktan sonra izinler otomatik olarak geri yüklenir.

Yerel çoğaltma izinleri

Yerel çoğaltma örneklerindeki yetkili hesaplar, standart RDS örneklerinde bulunmayan ek izinlere sahiptir.

Çoğaltma komutları

Komut (MySQL 5.7) Komut (MySQL 8,0) Açıklama
CHANGE MASTER TO CHANGE REPLICATION SOURCE TO Çoğaltma için kaynak ve başlangıç konumunu yapılandırın. Bkz. MySQL 5.7 belgeleri.
START SLAVE START REPLICA Çoğaltma işlemini başlatın.
STOP SLAVE STOP REPLICA Çoğaltma işlemini durdurun.
RESET SLAVE RESET REPLICA Çoğaltmayı kaynaktan yeniden başlatmak için çoğaltma durumunu sıfırlayın.

Parametre değişikliği

Yetkili hesaplar aşağıdaki çalışma zamanı parametrelerini de değiştirebilir:

  • `SET GLOBAL read_only = ON/OFF;` — Örneği salt okunur (ON) ve okuma/yazma (OFF) modları arasında değiştirin.

  • SET SESSION sql_log_bin = ON/OFF; — Geçerli oturumdaki SQL ifadelerinin binary log'a kaydedilip kaydedilmeyeceğini kontrol edin.

  • SET SESSION GTID_NEXT = "<gtid_value>"; — Sonraki işlem için GTID değerini ayarlayın.

Adım 1: Yerel çoğaltmayı etkinleştirin

Yeni bir örnekte yerel çoğaltmayı etkinleştirin

Standard Create sayfasında yeni bir ApsaraDB RDS for MySQL örneği oluştururken sayfanın en altına gidin, More seçeneğini genişletin ve Native Replication anahtarını açın.

Bu anahtar yalnızca örnek yapılandırması ön koşulları karşıladığında görünür.

image

Mevcut bir örnekte yerel çoğaltmayı etkinleştirin

Önemli

Mevcut bir örneği yükseltmek yaklaşık 30 saniye süren geçici bir bağlantı kesintisine neden olur. Bu işlemi yoğun olmayan saatlerde gerçekleştirin ve uygulamanızın yeniden bağlantı mekanizmasına sahip olduğundan emin olun.

  1. RDS Instances sayfasına gidin, bir bölge seçin ve hedef örneğin ID değerine tıklayın.

  2. Sol gezinme bölmesinde Native Replication öğesine tıklayın, ardından Enable seçeneğine tıklayın.

  3. İletişim kutusundaki bilgileri gözden geçirin ve OK düğmesine tıklayın.

Resmi ApsaraDB RDS hizmet hesabının henüz OSS'inize erişim izni ve esnek ağ arayüzleri (ENI) oluşturma ve bunları iliştirme izni yoksa, bu izinleri vermek için iletişim kutusundaki ilgili onay kutularını işaretleyin.

Adım 2: Ağ bağlantısını yapılandırın

Verileri içe aktarmadan önce, kendi yönettiğiniz MySQL veritabanının RDS örneği ile ağ üzerinden iletişim kurabildiğinden emin olun.

Senaryo Yapılandırma Ücretler
Aynı VPC içindeki ECS üzerinde kendi yönetilen MySQL Ağ bağlantısı varsayılan olarak kullanılabilir. RDS örneği IP'sinden gelen 3306 numaralı bağlantı noktasındaki gelen trafiğe izin vermek için ECS güvenlik grubunu yapılandırın. RDS örneği IP'sini almak için örneğe bağlanın ve SHOW VARIABLES LIKE 'report_host'; komutunu çalıştırın. Yok
Alibaba Cloud üzerinde çapraz VPC veya çapraz bölge VPC eşlemesi bağlantısı veya Cloud Enterprise Network (CEN) kullanın. VPC eşlemesi bağlantısı ücretleri geçerlidir. CEN örnekleri ücretsizdir ancak veri aktarımı ve bant genişliği ücretleri uygulanabilir.
Şirket içi veri merkezinden cloud'a Veri merkezinizi VPC'ye bağlamak için VPN Gateway veya kiralık hat kullanın. Ücretler kullanılan yönteme göre değişir. Ayrıntılar için resmi belgelere bakın.
Başka bir cloud sağlayıcısından ApsaraDB RDS'e Cloud'lar arası ağ bağlantısı kurmak için VPN veya kiralık hat kullanın. Ücretler kullanılan yönteme göre değişir. Ayrıntılar için resmi belgelere bakın.
Genel ağ (önerilmez) ApsaraDB RDS yerel çoğaltma örnekleri genel ağ erişimini destekler. Güvenlik riskleri nedeniyle bu yöntem önerilmez. Ücretler kullanılan yönteme göre değişir.

Tam bir referans için bkz. Bağlantılar ve ağ.

Adım 3: Tam verileri içe aktarın ve çoğaltmayı ayarlayın

Kendi yönettiğiniz veritabanınızın tam yedeğini RDS'e aktarın, ardından iki veritabanını senkronize tutmak için artımlı çoğaltmayı ayarlayın.

Percona XtraBackup'i yükleyin ve kaynak veritabanını yedekleyin

Kendi yönettiğiniz veritabanı ana bilgisayarınıza Percona XtraBackup yükleyin.

CentOS üzerine yükleme

MySQL 5.7 için:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

MySQL 8,0 için:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

Ubuntu üzerine yükleme

MySQL 5.7 için:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

MySQL 8,0 için:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

Ubuntu üzerindeki XtraBackup qpress içermez. Ayrı olarak yükleyin:

sudo apt-get install -y qpress

Yedeklemeyi oluşturun

Aşağıdaki komutlar öncelikle InnoDB motorunu kullanan veritabanları içindir. Veritabanınız MyISAM tabloları içeriyorsa bunun yerine innobackupex komutunu kullanın.

Üç sıkıştırma yöntemi desteklenir. Birini seçin:

Yöntem 1: Varsayılan qpress sıkıştırması

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>.xb

Yöntem 2: QuickLZ sıkıştırması

XtraBackup sürüm 8,0.34-29 veya önceki bir sürüm gerektirir. Ayrıntılar için Percona XtraBackup belgelerine bakın.

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>_qp.xb

Yöntem 3: Zstandard (zstd) sıkıştırması

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  | zstd -q - > ./<backup_file_name>.xb.zstd

Yedeği içe aktarın ve çoğaltmayı ayarlayın

İki içe aktarma yöntemi mevcuttur. Yedekleme dosyasını OSS'e yükleyebiliyorsanız 1. Yöntemi kullanın. Ortamınız kısıtlıysa ve doğrudan akış tercih ediliyorsa 2. Yöntemi kullanın.

1. Yöntem: OSS'ten bir yedekleme dosyasını içe aktarma

Yedeği bir OSS paketlerine yükleyin

OSS paketi, RDS örneği ile aynı bölgede olmalıdır.

ossutil'i yükleyin:

yum install -y unzip
sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash
ossutil config

Yedekleme dosyasını yükleyin:

ossutil -e <OSS_Endpoint> -i <your_AccessKeyId> -k <your_AccessKeySecret> cp <backup_file_name> oss://<bucket_name>/

Yedeği RDS'e aktarın

  1. RDS Instances sayfasına gidin, bir bölge seçin ve örnek ID'sine tıklayın.

  2. Sol gezinme bölmesinde Native Replication öğesine tıklayın.

  3. Import Full Data seçeneğine tıklayın, parametreleri yapılandırın ve OK düğmesine tıklayın.

Kategori Parametre Açıklama
Yedekleme yükleme yöntemi (gerekli) MySQL version Otomatik olarak 5.7 veya 8.0 olarak görüntülenir. Yapılandırma gerekmez.
Import method Import from OSS seçeneğini belirleyin.
OSS bucket Yedekleme dosyanızı içeren OSS paketini seçin.
OSS file name Yedekleme dosyasını seçin. Dosya bir alt dizindeyse tam yolu girin. Desteklenen formatlar: .xb (xbstream), _qp.xb (QuickLZ), .xb.zst (zstd).
Otomatik çoğaltma kurulumu (isteğe bağlı) Auto replication building İçe aktarmadan sonra kaynak veritabanından çoğaltmayı otomatik olarak ayarlamak için açın. Bu seçeneği kapatırsanız, içe aktardıktan sonra çoğaltmayı manuel olarak ayarlamanız gerekir.
Source IP address Kaynak kendi yönetilen veritabanının IP adresi.
Source port Kaynak kendi yönetilen veritabanının bağlantı noktası.
Source account Kaynak veritabanındaki hesap. REPLICATION CLIENT ve REPLICATION SLAVE izinlerine sahip olmalıdır.
Account password Kaynak hesabının parolası.

2. Yöntem: Yedeği doğrudan RDS'e akışla gönderme

backup-helper aracını yükleyin ve yedekleme akışını başlatın

# Install the backup-helper tool
wget -O backup-helper https://mysql-backup-helper.oss-cn-beijing.aliyuncs.com/v1.0.0-alpha/backup-helper && chmod +x backup-helper

# Start the backup stream (requires MySQL and the matching XtraBackup version to be installed)
./backup-helper --backup --mode=stream --host=<MySQL_IP> --port=<MySQL_port> --user=<MySQL_account> --password=<MySQL_password>

Akışı RDS'e aktarın

  1. ApsaraDB RDS konsoluna giriş yapın, bir bölge seçin ve örnek ID'sine tıklayın.

  2. Sol gezinme bölmesinde Native Replication öğesine tıklayın.

  3. Import Full Data seçeneğine tıklayın, parametreleri yapılandırın ve OK düğmesine tıklayın.

Kategori Parametre Açıklama
Yedekleme yükleme yöntemi (gerekli) MySQL version Otomatik olarak 5.7 veya 8.0 olarak görüntülenir. Yapılandırma gerekmez.
Import method Direct Stream Backup seçeneğini belirleyin.
Source backup IP address Yedekleme akışı için kullanılan IP adresi.
Source backup port Yedekleme akışı için kullanılan bağlantı noktası. Varsayılan: 9999.
Otomatik çoğaltma kurulumu (isteğe bağlı) Auto replication building İçe aktarmadan sonra kaynak veritabanından çoğaltmayı otomatik olarak ayarlamak için açın. Bu seçeneği kapatırsanız, içe aktardıktan sonra çoğaltmayı manuel olarak ayarlamanız gerekir.
Source IP address Kaynak kendi yönetilen veritabanının IP adresi.
Source port Kaynak kendi yönetilen veritabanının bağlantı noktası.
Source account Kaynak veritabanındaki hesap. REPLICATION CLIENT ve REPLICATION SLAVE izinlerine sahip olmalıdır.
Account password Kaynak hesabının parolası.

Gerekirse çoğaltmayı manuel olarak ayarlayın

İçe aktarma sırasında Auto replication building seçeneğini etkinleştirmediyseniz veya otomatik kurulum başarısız oldu ve kurtarılamadıysa, çoğaltma bağlantısını manuel olarak ayarlayın.

  1. RDS örneğinde yetkili bir hesap oluşturun.

  2. Kaynak kendi yönetilen veritabanında bir çoğaltma hesabı oluşturun ve gerekli izinleri verin:

    -- Create a replication account. For production, restrict the allowed IP address instead of using '%'.
    -- Replace 'Test123!' with a strong password.
    CREATE USER 'replica'@'%' IDENTIFIED BY 'Test123!';
    
    -- Grant replication permissions
    GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replica'@'%';
    
    -- Apply the changes
    FLUSH PRIVILEGES;
  3. RDS örneğine yetkili hesapla giriş yapın ve aşağıdaki komutları çalıştırın: MySQL 5.7

    -- Configure the replication source
    CHANGE MASTER TO
      MASTER_HOST='<source_IP>',
      MASTER_PORT='<source_port>',
      MASTER_USER='<replication_account>',
      MASTER_PASSWORD='<replication_account_password>',
      MASTER_AUTO_POSITION=1;
    
    -- Start replication
    START SLAVE;
    
    -- Check replication status
    SHOW SLAVE STATUS;

    MySQL 8,0

    -- Configure the replication source
    CHANGE REPLICATION SOURCE TO
      SOURCE_HOST='<source_IP>',
      SOURCE_PORT='<source_port>',
      SOURCE_USER='<replication_account>',
      SOURCE_PASSWORD='<replication_account_password>',
      SOURCE_AUTO_POSITION=1;
    
    -- Start replication
    START REPLICA;
    
    -- Check replication status
    SHOW REPLICA STATUS;

Çoğaltma durumunu doğrulayın

RDS örneğinin Native Replication sayfasında çoğaltma durumunu kontrol edin. Durum Running olarak gösterildiğinde, çoğaltma bağlantısı etkin olur ve veriler senkronize edilir.

Yerel çoğaltmayı devre dışı bırakın

Uygulamanızı yeni ortama taşımaya hazır olduğunuzda veya çoğaltmaya artık ihtiyacınız kalmadığında, örneği tekrar okuma/yazma moduna geçirmek için yerel çoğaltmayı devre dışı bırakın.

  1. RDS Instances sayfasına gidin, bir bölge seçin ve örnek ID'sine tıklayın.

  2. Sol gezinme bölmesinde Native Replication öğesine tıklayın, ardından Disable seçeneğine tıklayın.

  3. OK düğmesine tıklayın.

Önemli

OK düğmesine tıkladıktan sonra, kaynak veritabanından gelen çoğaltma bağlantısı sonlandırılır. RDS örneği standart bir ApsaraDB RDS for MySQL örneğine döner ve salt okunur moddan okuma/yazma moduna geçerek yazma işlemlerine izin verir.

API referansı

İşlem API Notlar
Yerel çoğaltma ile örnek oluşturma CreateDBInstance ExternalReplication parametresini ON olarak ayarlayın. Temel örnek yapılandırması ön koşulları karşılamalıdır.
Mevcut bir örnek için yerel çoğaltma bağlantısı kurma ImportUserBackupFile —

Sonraki adımlar