Microsoft SQL Server
Bu konuda, Microsoft SQL Server hedef bağlayıcısı kullanılarak bir Microsoft SQL Server hedefine bağlantının nasıl yapılandırılacağı açıklanmaktadır.
Microsoft SQL Server hedefi bir Bir veri işlem hattında veya çoğaltma görevinde hedef veri platformu olarak. Bir veri işlem hattında, verileri saklama, verileri dönüştürme, veri ambarları oluşturma ve veri kaydetme dahil olmak üzere hedef platformda çeşitli ELT işlemleri gerçekleştirilebilir. Diğer yandan çoğaltma görevi, temel dönüştürme yetenekleriyle ancak ELT işlemleri için destek olmadan, verilerin doğrudan bir kaynak sistemden bir hedef sisteme çoğaltılmasını içerir. içinde kullanılabilir. Microsoft SQL Server hedefine bağlanmadan önce veritabanında Kullanıcı önkoşulları yapılandırması yapmanız gerekir. Microsoft SQL Server'a Veri Hareketi ağ geçidi üzerinden bağlanıyorsanız Sürücü kurulumu bölümünde açıklandığı gibi sürücüyü de yüklemeniz gerekir.
Microsoft SQL Server Hedef bağlayıcısını kullanırken dikkat edilmesi gereken hususlar ve sınırlamalar hakkında bilgi için bk. Sınırlamalar ve dikkate alınacak noktalar.
Bağlantı özelliklerini ayarlama
Bağlayıcıyı yapılandırmak için aşağıdakileri yapın:
-
Bağlantılar'da Bağlantı oluştur'a tıklayın.
-
Microsoft SQL Server hedef bağlayıcısını seçin ve ardından aşağıdaki ayarları sağlayın:
Veri Hareketi ağ geçidi
Microsoft SQL Server, bir veri ardışık düzeninde veya bir çoğaltma görevinde hedef olarak kullanılabilir. Bir veri hattında Microsoft SQL Server hedefine erişmek için bir Veri Hareketi ağ geçidi gerekebilirken (veritabanına Qlik Cloud öğesinden doğrudan erişilip erişilmediğine bağlı olarak), bir çoğaltma görevinde Microsoft SQL Server hedefi kullanılırken her zaman gereklidir.
Bir veri ardışık düzeninde Microsoft SQL Server hedefi kullanma
Veri ağ geçidi
Bir Veri Hareketi ağ geçidi yalnızca hedef veritabanına Qlik Cloud öğesinden erişilemiyorsa ve yalnızca bir Özel Bağlantı kullanılarak erişilebiliyorsa gereklidir (örneğin, bir güvenlik duvarının arkasında şirket içinde veya bir Sanal Özel Bulutta bulunuyorsa). Bu durumda, hedef veritabanına erişmek istediğiniz Veri Hareketi ağ geçidi öğesini seçin.
Kullanım durumunuza bağlı olarak, bu ya veri kaynağından veri taşımak için dağıtılanVeri Hareketi ağ geçidi ile aynı ya da farklı bir veri kaynağı olacaktır.
Veri Hareketi ağ geçidi kullanım durumları hakkında bilgi için bkz. Veri Hareketi ağ geçidi ne zaman gereklidir? ve Yaygın kullanım durumları.
Hedef veritabanına Qlik Cloud uygulamasından doğrudan erişilebiliyorsa Yok seçeneğini belirleyin.
Çoğaltma görevinde Microsoft SQL Server hedefi kullanma
Veri ağ geçidi: Microsoft SQL Server hedefine bağlantıyı test etmek için kullanılacak Veri Hareketi ağ geçidi öğesini seçin. Bu, veri kaynağına erişmek için kullanılan ağ geçidiyle aynı olmalıdır.
Veri Hareketi ağ geçidi 2023.5.10 veya üstünü gerektirir.
Veri hedefi
-
Bulut sağlayıcı: Aşağıdakilerden uygun olan birini seçin:
- Hiçbiri (şirket içi için)
- Amazon RDS
- Google Cloud
- Microsoft Azure (Hem Microsoft Azure Yönetilen Bulut Ortamı hem de Microsoft Azure Veritabanını destekler)
-
Sunucu: Microsoft SQL Server veritabanının yüklü olduğu bilgisayarın IP adresi veya konak adı.
Bilgi notuVarsayılan bağlantı noktasını geçersiz kılmak için bağlantı noktasını virgülle ayırarak sunucu adına ekleyin. Örneğin sunucu adı
myserver.company.local
ve bağlantı noktası3333
ise sunucu adının şu olması gerekir:myserver.company.local,3333
Hesap özellikleri
Kullanıcı Adı ve Parola: Microsoft SQL Server veritabanına erişim yetkisi olan bir kullanıcının kullanıcı adı ve parolası.
Veritabanı özellikleri
-
Veritabanı adı: Bir veritabanını belirtmek için kullanabileceğiniz iki yöntem vardır:
- 1. Yöntem - Bir listeden seç: Bu yöntem, kullanıcının ana veritabanında oluşturulmuş olmasını gerektirir. Veritabanı yükle'ye tıklayın ve ardından bir veritabanı seçin.
- 2. Yöntem - Manuel olarak: Veritabanı adını manuel olarak gir'i seçin ve ardından veritabanı adını girin.
- Şifreleyin (Güven sunucusu sertifikası): Qlik Cloud ile veritabanı sunucusu arasındaki iletişimi şifrelemek için seçin. Seçildiğinde, sunucu sertifikasına otomatik olarak güvenilecektir.
- Sertifikadaki ana bilgisayar adı: Sunucu sertifikasına yalnızca ana bilgisayar adı bu alanda belirtilen değerle eşleşiyorsa güvenmek için, sunucu sertifikasının ana bilgisayar adını girin.
Dahili özellikler
Dahili özellikler özel kullanım durumları içindir ve bu nedenle diyalog penceresinde gösterilmez. Bunları yalnızca Qlik Desteği tarafından talimat verildiği takdirde kullanmalısınız.
Gerektiği takdirde özellik eklemek veya kaldırmak için alanların sağındaki ve düğmelerini kullanın.
Ad
Bağlantının görünen adı.
Önkoşullar
Kullanıcı önkoşulları
- Bağlayıcı ayarlarında belirtilen kullanıcı, hedef Microsoft SQL Server veritabanında en azından
db_owner
kullanıcı rolüne sahip olmalıdır. - Bir veritabanı seçebilmek için (bağlayıcı diyalog penceresinde Veritabanı yükle'ye tıklayarak), bağlayıcı ayarlarında belirtilen kullanıcının ana veritabanı üzerinde oluşturulması gerekir.
Sürücü kurulumu
Bir sürücü yalnızca veritabanına Veri Hareketi ağ geçidi üzerinden erişiyorsanız gereklidir. Bir Veri Hareketi ağ geçidi gerektiren kullanım durumları hakkında daha fazla bilgi için yukarıdaki Veri Hareketi ağ geçidi bölümüne bakın.
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 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
-
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 sqlserver
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 sqlserver 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.
-
Yüklemenin tamamlanmasını ("Tamamlandı!" ifadesiyle belirtilir) bekleyin ve ardından 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
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 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
-
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 sqlserver
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 sqlserver 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.
-
Yüklemenin tamamlanmasını ("Tamamlandı!" ifadesiyle belirtilir) bekleyin ve ardından 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
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 sqlserver
driver kaldırılacaktır.
Sürücüleri manuel olarak yükleme
driver öğesini manuel olarak yüklemeyi yalnızca otomatik sürücü yükleme başarıyla tamamlanmadığında denemelisiniz.
Microsoft SQL Server'ı bir veri hattında hedef olarak kullanırken, hem ODBC sürücüsünü hem de JDBC sürücüsünü yüklemeniz gerekir. Microsoft SQL Server'ı çoğaltma görevinde hedef olarak kullanırken, yalnızca ODBC sürücüsünü yüklemeniz gerekir.
ODBC sürücüsünün yüklenmesi
Veri Hareketi ağ geçidi yüklendikten sonra msodbcsql<version>.x86_64.rpm sürücüsünü indirin. /opt/qlik/gateway/movement/drivers/manifests/sqlserver.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.
Data Movement gateway sunucusunda bir kabuk istemi açıp şunu yapın:
-
Data Movement gateway hizmetini durdurun:
sudo systemctl stop repagent
-
İsteğe bağlı olarak hizmetin durduğunu doğrulayın:
sudo systemctl status repagent
-
Sürücüyü (RPM) yükleyin.
-
Çalışma dizinini <urun_dizini>/bin dizinine çevirin.
-
Sürücü konumunu
site_arep_login.sh
dosyasına aşağıdaki gibi kopyalayın:echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/microsoft/
msodbcsql<version>
/lib64/" >> site_arep_login.sh
Bu, sürücüyü "LD_LIBRARY_PATH" değişkenine ekler ve site_arep_login.sh dosyasındaki 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
-
Data Movement gateway hizmetini başlatın:
sudo systemctl start repagent
-
İsteğe bağlı olarak hizmetin başlatıldığını doğrulayın:
sudo systemctl status repagent
Durum aşağıdaki gibi olmalıdır:
Active: active (running) since <timestamp> ago
-
Data Movement gateway aşağıdaki ODBC kitaplığını gerektirir: msodbcsql-18.1.so.1.1
Hangi kitaplık sürümünün yüklü durumda olduğunu denetlemek için şu komutu çağırın:
ls /opt/microsoft/msodbcsql<version>/lib64/
Mevcut kitaplığın sürüm numarası farklıysa (ör. libmsodbcsql-18.0.so.1.1) mevcut kitaplık ile gerekli kitaplık arasında sembolik bir bağlantı oluşturmanız gerekir.
Bunu yapmak için şu komutu çağırın:
cd /opt/microsoft/msodbcsql<version>/lib64/
ln -s existing_library_name
msodbcsql-18.1.so.1.1Burada
existing_library_name
o anda kurulu olan kütüphanenin adıdır (örneğin libmsodbcsql-18.0.so.1.1).
Durum aşağıdaki gibi olmalıdır:
Active: inactive (dead) since <timestamp> ago
JDBC sürücüsünün yüklenmesi
-
mssql-jdbc-<version>.jar dosyasını indirin. /opt/qlik/gateway/movement/drivers/manifests/sqlserver.yaml dizininde binary-artifacts altında desteklenen bir sürümün doğrudan indirme bağlantısını bulabilirsiniz. İndirme tamamlandığında JAR dosyasını Veri Hareketi ağ geçidi makinesinde aşağıdaki klasöre kopyalayın:
/opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib
-
Hizmeti yeniden başlatma bölümünde açıklanan komutu çalıştırarak Veri Hareketi ağ geçidi hizmetini yeniden başlatın
Sınırlamalar ve dikkate alınacak noktalar
Veri işlem hattında kullanıldığında sınırlamalar ve dikkate alınacak noktalar
- Bir veri işlem hattında Microsoft SQL Server'a veri yerleştirirken canlı görünümler desteklenmez. Canlı görünümler hakkında daha fazla bilgi için bkz. Veri kümelerini saklama.
Tüm veri görevleri için sınırlamalar ve dikkat edilecek hususlar
Aşağıdaki büyük nesne türleri kaynak veritabanında boşsa (0 bayt), Tam Yükten sonra boş olmayacaklardır:
- BLOB, 0x0000 (2 bayt) olarak yazılacaktır
- TEXT (VARCHAR(max)) 0X00 (1 bayt) olarak yazılacaktır
-
NTEXT (NVARCHAR(max)) 0x0000 (2 bayt) olarak yazılacaktır
Yalnızca çoğaltma görevleri için sınırlamalar ve dikkat edilecek hususlar
- Tam boyutlu LOB sütunları Toplu iyileştirme uygulama modunda desteklenmez. Görev ayarlarında LOB sütun boyutunu sınırlayarak veya İşlemsel uygulama moduna geçerek bu sınırlamayı aşabilirsiniz.
- Toplu iyileştirme uygulama ve Sınırlı LOB sütunlarını (KB) çoğalt seçeneklerinin her ikisi de etkinleştirildiğinde, hedefteki BLOB sütunları LOB sütun boyutunu şununla sınırla: alanında belirtilen boyutun dörtte biri kadar kesilirken CLOB sütunları, belirtilen boyutun yarısına kesilecektir.
- 4 baytlık emoji karakterlerini çoğaltmanız gerekiyorsa veri türünü WSTRING(n )'den WSTRING ( n*2 )'ye dönüştürmek için bir dönüşüm kullanın.
Veri türleri
Yerel veri türü bilgileri korunur ve veri kümesi görünümlerinde Yerel veri türü sütununda görüntülenir. Sütun görünür değilse veri kümesi görünümünün sütun seçicisini açmanız ve Yerel veri türü sütununu seçmeniz gerekir.
Qlik Cloud veri türleri | Microsoft SQL Server veri türleri |
---|---|
BOOLEAN |
TINYINT |
BYTES |
VARBINARY(uzunluk) |
DATE |
DATE |
TIME |
TIME(0) |
DATETIME |
DATETIME2(ölçek) |
INT1 |
SMALLINT |
INT2 |
SMALLINT |
INT4 |
INT |
INT8 |
BIGINT |
NUMERIC |
NUMERIC(p,s) |
REAL4 |
REAL |
REAL8 |
FLOAT |
STRING |
Sütun tarih veya saat ise: DATETIME2 Sütun bir tarih veya saat değilse: VARCHAR(uzunluk) |
UINT1 |
INT2 |
UINT2 |
INT4 |
UINT4 |
INT8 |
UINT8 |
NUMERIC(20) |
WSTRING |
NVARCHAR(uzunluk) |
BLOB |
VARBINARY(max) IMAGE |
CLOB |
VARCHAR(max) TEXT |
NCLOB |
NVARCHAR(max) NTEXT |
Aşağıdaki SQL Server veri türleri desteklenmez. Veriler okunmayacaktır.
-
CURSOR
-
SQL_VARIANT
-
TABLE
Aşağıdaki veri türleri VARCHAR (MAX)'a dönüştürülür:
-
XML
-
GEOGRAPHY
-
GEOMETRY