Önkoşullar
Verileri yerleştirebilmeniz veya çoğaltabilmeniz için önce aşağıdaki önkoşulları yerine getirdiğinizden emin olun:
-
Gerekli driver öğesini Veri Hareketi ağ geçidi sunucusuna yükleyin
Bilgi notuBu yalnızca Veri Hareketi ağ geçidi ile çalışmayı seçtiyseniz gereklidir. Veri Hareketi ağ geçidi avantajları ve ne zaman gerekli olduğu zaman hakkında bilgiler için bkz. Qlik Data Gateway - Veri Hareketi.
Unutmayın: Veri Hareketi ağ geçidi, Qlik Talend Cloud Başlangıç Kılavuzu aboneliğiyle kullanılamaz.
-
Veri kaynağında gerekli izinleri verin
-
Veri kaynağı bağlayıcısını yapılandırma
Desteklenen sürümler
Aşağıdaki MySQL sürümleri desteklenmektedir:
- MySQL Community Edition
- MySQL Standard Edition
- MySQL Enterprise Edition
- MySQL Cluster Carrier Grade Edition
Sürücü kurulumu
driver öğesini, sürücü yükleme yardımcı programını kullanarak (önerilir) veya manuel olarak yükleyebilirsiniz. Manuel yükleme, nadir görülen şekilde sürücü yükleme yardımcı programında bir sorunla karşılaşmanız durumunda denenmelidir.
Sürücüyü yüklemek için sürücü yükleme yardımcı programı kullanma
Bu bölümde, gerekli driver öğesinin nasıl yükleneceği açıklanmıştır. Sürece, gerekli driver öğesini otomatik olarak indirecek, yükleyecek ve yapılandıracak bir komut dosyası çalıştırma işlemi dahildir. Gerektiğinde driver öğesini güncellemek ve kaldırmak için de komut dosyaları çalıştırabilirsiniz.
Yüklemeyi hazırlama
-
Python 3.6 veya daha yeni bir sürümünün Veri Hareketi ağ geçidi sunucusunda yüklü olduğundan emin olun.
Python, çoğu Linux dağıtımında önceden yüklenmiş şekilde sunulur. Aşağıdaki komutu çalıştırarak sisteminizde yüklü olan Python sürümünü öğrenebilirsiniz:
python3 --version
driver uygulamasını yükleme
driver öğesini indirip yüklemek için:
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./install mysql
driver yüklenemiyorsa (erişim kısıtlamaları veya teknik sorunlar nedeniyle) driver öğesini nereden indireceğiniz ve Veri Hareketi ağ geçidi makinesinde nereye kopyalayacağınız konusunda size talimat veren bir mesaj görünür. Bu işlemi yaptıktan sonra install mysql komutunu tekrar çalıştırın.
Aksi durumda, driver öğesinin EULA'sı görünür.
-
Şunlardan birini yapın:
- EULA'da yavaşça gezinmek için [Enter] tuşuna tekrar tekrar basın.
- EULA'da hızlı bir şekilde gezinmek için Boşluk tuşuna tekrar tekrar basın.
- Lisans metninden çıkmak ve EULA kabul seçeneklerine ulaşmak için q tuşuna basın.
-
Şunlardan birini yapın:
- EULA'yı kabul etmek ve yükleme işlemini başlatmak için "y" yazıp [Enter] tuşuna basın.
- EULA'yı reddetmek ve yükleme işleminden çıkmak için "n" yazıp [Enter] tuşuna basın.
-
EULA'yı tekrar görüntülemek için "v" yazıp [Enter] tuşuna basın.
driver yüklenir.
driver öğesini güncelleme
Sağlanan driver öğesini yüklemeden önce driver öğesinin eski sürümlerini kaldırmak istiyorsanız güncelleme komutunu çalıştırın.
driver öğesini indirip güncellemek için:
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./update mysql
driver yüklenemiyorsa (erişim kısıtlamaları veya teknik sorunlar nedeniyle) driver öğesini nereden indireceğiniz ve Veri Hareketi ağ geçidi makinesinde nereye kopyalayacağınız konusunda size talimat veren bir mesaj görünür. Bu işlemi yaptıktan sonra update mysql komutunu tekrar çalıştırın.
Aksi durumda, driver öğesinin EULA'sı görünür.
-
Şunlardan birini yapın:
- EULA'da yavaşça gezinmek için [Enter] tuşuna tekrar tekrar basın.
- EULA'da hızlı bir şekilde gezinmek için Boşluk tuşuna tekrar tekrar basın.
- Lisans metninden çıkmak ve EULA kabul seçeneklerine ulaşmak için q tuşuna basın.
-
Şunlardan birini yapın:
- EULA'yı kabul etmek ve yükleme işlemini başlatmak için "y" yazıp [Enter] tuşuna basın.
- EULA'yı reddetmek ve yükleme işleminden çıkmak için "n" yazıp [Enter] tuşuna basın.
- EULA'yı baştan incelemek için "v" yazıp [Enter] tuşuna basın.
Eski driver kaldırılacak ve yeni driver yüklenecektir.
driver öğesini kaldırma
driver öğesini kaldırmak istiyorsanız kaldırma komutunu çalıştırın.
driver öğesini kaldırmak için:
-
Bu bağlayıcıyı kullanmak için yapılandırılan tüm görevleri durdurun.
-
Veri Hareketi ağ geçidi makinesinde, çalışan dizini şu şekilde değiştirin:
opt/qlik/gateway/movement/drivers/bin
-
Şu komutu çalıştırın:
Söz Dizimi:
./uninstall mysql
driver kaldırılacaktır.
Sürücüyü manuel olarak yükleme
driver öğesini manuel olarak yüklemeyi yalnızca otomatik sürücü yükleme başarıyla tamamlanmadığında denemelisiniz.
Veri Hareketi ağ geçidi yüklendikten sonra mysql-connector-odbc-<version>.x86_64.rpm sürücüsünü indirin. /opt/qlik/gateway/movement/drivers/manifests/mysql.yaml dizininde binary-artifacts altında desteklenen bir sürümün doğrudan indirme bağlantısını bulabilirsiniz. İndirme tamamlandığında RPM'yi Veri Hareketi ağ geçidi makinesine kopyalayın.
Veri Hareketi ağ geçidi sunucusunda bir kabuk istemi açıp şunu yapın:
-
Veri Hareketi ağ geçidi hizmetini durdurun:
sudo systemctl stop repagent
-
İsteğe bağlı olarak hizmetin durduğunu doğrulayın:
sudo systemctl status repagent
Durum aşağıdaki gibi olmalıdır:
Active: inactive (dead) since <timestamp> ago
- Sürücüyü Veri Hareketi ağ geçidi makinesine yükleyin.
-
<Veri Hareketi ağ geçidi-Yukleme-Dizini>/bin dizinine geçin.
-
Sürücü konumunu site_arep_login.sh dosyasına kopyalayın:
echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib64" >> site_arep_login.sh
Bu, sürücüyü "LD_LIBRARY_PATH" değişkenine ekler ve site_arep_login.sh dosyasında sürücü konumunu günceller.
-
İsteğe bağlı olarak sürücü konumunun kopyalandığını doğrulayın:
cat site_arep_login.sh
-
/etc/odbcinst.ini dosyasının, aşağıdaki örnekteki gibi bir MySQL girişi içerdiğinden emin olun:
[MySQL ODBC 8.0 Unicode Driver]
Driver = /usr/lib64/libmyodbc8w.so
UsageCount = 1
-
Veri Hareketi ağ geçidi hizmetini başlatın:
sudo systemctl start repagent
-
İsteğe bağlı olarak hizmetin başladığını doğrulayın:
sudo systemctl status repagent
Durum aşağıdaki gibi olmalıdır:
Active: active (running) since <timestamp> ago
Bağlantı noktası
Veri Hareketi ağ geçidi sunucusunda 3306 numaralı bağlantı noktasının giden iletişim için varsayılan olarak açılması gerekir. Bunu bağlayıcı ayarlarında değiştirebilirsiniz.
Genel önkoşullar
Şu önkoşulların karşılandığından emin olun:
- Gerekli izinler ile bir MySQL hesabı.
- MySQL 8: Değişiklikleri yakalamak için standart kimlik doğrulaması
-
Sertifikalı MySQL sürümleri zamansal veri türleri (MySQL 5.6'da çıkmıştır) için kesirli değerleri destekler. Bu nedenle eski zamansal veri türü formatı için moving işlemi artık desteklenmemektedir.
Bilgi notuMySQL'i zamansal veri türleri için kesirli değeri destekleyen sürümlerine yükseltmenin zamansal veri türü formatını otomatik olarak yükseltmediğini unutmayın. Bunun ayrıca yapılması gerekir. Bu ayrıca MariaDB 10.1'dan yükseltme sırasında da geçerlidir. Zamansal veri türü formatını yükseltmeye yönelik talimatlar için satıcının çevrimiçi yardımına bakın.
Müşteri tarafından yüklenmiş bir MySQL veritabanından değişiklik yakalama
Aşağıdaki bölümde bir şirket içi MySQL veritabanından değişiklik yakalamak için önkoşullar anlatılmaktadır.
İkili günlüğü etkinleştir
İkili günlüğü (CDC moving için gereklidir) etkinleştirmek için MySQL programının my.ini (Windows) veya my.cnf (UNIX) dosyalarında aşağıdaki parametreler yapılandırılmalıdır.
Parametre | Değer |
---|---|
server_id |
1'den herhangi bir değer. Örnek: server_id=1 |
log-bin=<yol> |
İkili günlük dosyasının (uzantısız) yolu. Örnek: log-bin=E:\MySql_Logs\BinLog |
binlog_format |
Şu olmalıdır: binlog_format=row |
expire_logs_days |
Disk alanı sorunlarını önlemek için varsayılan değerin (0) kullanılmaması özellikle önerilir. Örnek: expire_logs_days=5 |
binlog_row_image |
Şu olmalıdır: binlog_row_image=full |
Küme önkoşulları
Kümelenmiş (NDB) tablolarını Taşı (küme düğümlerinden herhangi birine bağlanarak) için MySQL programının my.ini (Windows) veya my.cnf (UNIX) dosyalarında aşağıdaki parametrelerin yapılandırılması gerekir.
Kaynak olarak Percona kullanırken bu bölümde anlatılan prosedürleri gerçekleştirmeye gerek yoktur.
Parametre | Değer |
---|---|
ndb_log_bin |
Şu olmalıdır: ndb_log_bin=on Kümeye alınmış tablolardaki değişikliklerin ikili günlüğe kaydedilmesini sağlar. |
ndb_log_update_as_write |
Şu olmalıdır: ndb_log_update_as_write=OFF UPDATE işlemlerinin ikili günlüğe INSERT işlemleri olarak yazılmasını önler. |
ndb_log_updated_only |
Şu olmalıdır: ndb_log_updated_only=OFF İkili günlüğün yalnızca değişen sütunları değil tüm satırı içermesini sağlar. |
Google Cloud for MySQL'den değişiklik yakalama
İkili günlük
Değişiklikleri yakalamak için ikili günlük gereklidir İkili günlüğün etkin mi (varsayılan) olduğunu denetlemek için veritabanının binlog_row_image
parametresinin full
olarak ayarlandığından emin olun.
Çoğaltma
Çoğaltma işlemi, birincil veritabanı sunucusundan verilerin bir veya daha fazla ikincil sunucuya kopyalanmasına olanak tanır.
Veriler birincil veya ikincil bir sunucudan yerleştirilebilir.
İkincil bir sunucudan değişiklikleri yakalamak için ikili günlük parametresi log_slave_updates
şu şekilde ayarlanmalıdır: true
(1
).
Başka kaynaklar: https://cloud.google.com/sql/docs/mysql/replication
Amazon RDS for MySQL'dan ve Amazon Aurora for MySQL'dan değişiklik yakalama
İkili günlük
MySQL için Amazon RDS'yi veya CDC için MySQL için Amazon Aurora'yı ayarlama:
-
AWS Yardımı'ndaki yönergeleri izleyerek yeni bir Parametre Grubu oluşturun (İkili Günlük Biçimi bölümüne bakın).
-
Yeni Parametre Grubu'nu oluştururken şunu ayarlayın:
binlog_format=row
- Yeni Parametre Grubu'nu kaydedin.
- Mevcut bir MySQL için Amazon RDS örneğiniz varsa örneği yukarıdaki 2. Adımda belirtilen parametreyi kullanacak şekilde düzenleyin. Yeni bir MySQL için Amazon RDS örneği sağlıyorsanız yukarıdaki 1. Adımda oluşurulan yeni Parametre Grubu'na referansta bulunun.
- Son olarak, otomatik yedeklemenin etkinleştirildiğinden (varsayılan) emin olun.
Daha fazla bilgi: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.BinaryFormat.html
Çoğaltma
Çoğaltma işlemi, birincil veritabanı sunucusundan verilerin bir veya daha fazla ikincil sunucuya kopyalanmasına olanak tanır.
Veriler birincil veya ikincil bir sunucudan yerleştirilebilir.
İkincil bir sunucudan değişiklikleri yakalamak için ikili günlük parametresi log_slave_updates
şu şekilde ayarlanmalıdır: true
(1
).
Başka kaynaklar: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_MySQL.Replication.html
Microsoft Azure database for MySQL'dan değişiklik yakalama
Değişiklikleri yakalamak için ikili günlük gereklidir İkili günlüğün etkin mi (varsayılan) olduğunu denetlemek için veritabanının binlog_row_image
parametresinin full
olarak ayarlandığından emin olun.