Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Linux üzerinde SQL Server
SQL Server 2017 (14.x) ile başlayarak, SQL Server hem Linux hem de Windows üzerinde desteklenir. Windows tabanlı SQL Server dağıtımları gibi, SQL Server veritabanlarının ve örneklerinin Linux altında yüksek oranda kullanılabilir olması gerekir.
Bu makale, yüksek oranda kullanılabilir Linux tabanlı SQL Server örneklerini ve veritabanlarını planlamanın ve dağıtmanın teknik yönlerini kapsar ve Windows tabanlı yüklemelerden önemli farkları vurgular. SQL Server veya Linux sizin için yeni olabileceği için, bu makalede size zaten tanıdık gelen kavramlar ele alınmaktadır.
Linux dağıtımları için SQL Server kullanılabilirlik seçenekleri
Yedekleme ve geri yüklemenin yanı sıra, Windows tabanlı dağıtımlarda olduğu gibi Linux'ta da aynı üç kullanılabilirlik özelliği mevcuttur:
- Linux üzerinde SQL Server için kullanılabilirlik grupları
- Yük Devretme Kümesi Birimleri - Linux üzerinde SQL Server
- Linux'ta log shipping ile çalışmaya başlama
Windows'da, FCI'ler her zaman temel alınan bir Windows Server yük devretme kümesi (WSFC) gerektirir. Dağıtım senaryosuna bağlı olarak, AG genellikle SQL Server 2017'deki (14.x) yeni 'None' varyantı dışında temel bir WSFC gerektirir. Linux'ta WSFC yoktur. Linux'ta kümeleme uygulaması, Kullanılabilirlik grupları ve Linux üzerinde yük devretme kümesi örnekleri için Pacemaker'da ele alınıyor.
Hızlı bir Linux astarı
Bazı Linux yüklemeleri bir arabirim içerse de çoğu içermez. İşletim sistemi katmanındaki neredeyse her şey için komut satırını kullanırsınız. Linux dünyasında bu komut satırının ortak terimi bir kabuk olup en yaygın olanıdır bash.
Linux'ta, Windows Server'da yönetici ayrıcalıklarına ihtiyaç duymaya benzer şekilde birçok komutu çalıştırmak için yükseltilmiş ayrıcalıklara ihtiyacınız vardır. Yükseltilmiş ayrıcalıklara sahip komutları iki şekilde çalıştırabilirsiniz:
Komutu uygun kullanıcı olarak çalıştırın. Farklı bir kullanıcıya geçmek için komutunu kullanın
su. Kullanıcı adı olmadansuçalıştırırsanız ve parolayı biliyorsanız,rootolarak bir kabuğa girersiniz.komutundan önce kullanın
sudo. Bu yöntem daha yaygın ve daha güvenlidir. Bu makaledeki birçok örneksudokullanır.
Bazı yaygın komutlar aşağıdadır. Her komutun çevrimiçi olarak araştırabileceğiniz çeşitli anahtarları ve seçenekleri vardır:
-
cd- dizini değiştirme -
chmod- dosya veya dizinin izinlerini değiştirme -
chown- dosya veya dizinin sahipliğini değiştirme -
ls- dizinin içeriğini gösterme -
mkdir- sürücüde klasör (dizin) oluşturma -
mv- dosyayı bir konumdan diğerine taşıma -
ps- tüm çalışma süreçlerini gösterme -
rm- sunucuda bir dosyayı yerel olarak silme -
rmdir- klasör silme (dizin) -
systemctl- hizmetleri başlatma, durdurma veya etkinleştirme - Metin düzenleyici komutları. Linux'ta vi ve emacs gibi çeşitli metin düzenleyici seçenekleri vardır.
Linux üzerinde SQL Server'ın kullanılabilirlik yapılandırmaları için yaygın görevler
Bu bölüm, tüm Linux tabanlı SQL Server dağıtımlarında ortak olan görevleri kapsar.
Dosyaları kopyalayabileceğinizden emin olun
Linux üzerinde SQL Server'ı yöneten herkesin dosyaları bir sunucudan diğerine kopyalayabilmesi gerekir. Bu görev AG yapılandırmaları için gereklidir.
İzin sorunları hem Linux hem de Windows tabanlı yüklemelerde bulunabilir. Ancak, dosyaları sunucudan sunucuya kopyalama hakkında bilgi sahibi olan Windows kullanıcıları, Linux'ta nasıl yapıldığını bilmiyor olabilir. Yaygın bir yöntem, scp anlamına gelen komut satırı yardımcı programını kullanmaktır. Arka planda scp OpenSSH kullanır. SSH , güvenli kabuk anlamına gelir. Linux dağıtımına bağlı olarak OpenSSH'nin kendisi yüklenmemiş olabilir. Değilse, OpenSSH'yi yüklemeniz gerekir.
Linux dağıtımınız için OpenSSH'yi yapılandırma hakkında daha fazla bilgi için bkz:
Uyarı
SQL Server 2025'te (17.x) başlayarak SUSE Linux Enterprise Server (SLES) desteklenmez.
scp kullanırken, kaynak veya hedef değilse sunucunun kimlik bilgilerini sağlamanız gerekir. Örneğin, aşağıdaki komut dosyayı MyAGCert.cer diğer sunucuda belirtilen klasöre kopyalar:
scp MyAGCert.cer username@servername:/folder/subfolder
Kopyalamak için dosyanın izinlerine ve büyük olasılıkla sahipliğine sahip olmanız gerekir, bu nedenle kopyalamadan önce kullanmanız chown gerekebilir. Benzer şekilde, alıcı tarafında, dosyayı işlemek için doğru kullanıcının erişmesi gerekir. Örneğin, bu sertifika dosyasını mssql geri yüklemek için kullanıcının dosyaya erişebilmesi gerekir.
Sunucu ileti bloğunun (SMB) Linux çeşidi olan Samba, gibi \\SERVERNAME\SHAREUNC yolları tarafından erişilen paylaşımlar oluşturmak için de kullanılabilir. Samba'yı yapılandırma hakkında daha fazla bilgi için her dağıtım için aşağıdaki bağlantılardaki bilgilere bakın:
Uyarı
SQL Server 2025'te (17.x) başlayarak SUSE Linux Enterprise Server (SLES) desteklenmez.
Windows tabanlı SMB paylaşımlarını da kullanabilirsiniz. Samba'nın istemci bölümü SQL Server'ı barındıran Linux sunucusunda düzgün yapılandırıldığı ve paylaşımın doğru erişime sahip olduğu sürece SMB paylaşımlarının Linux tabanlı olması gerekmez. Karma bir ortamdaki müşteriler için bu yaklaşım Linux tabanlı SQL Server dağıtımları için mevcut altyapıyı kullanmanıza olanak tanır.
Dağıttığınız Samba sürümü SMB 3.0 uyumlu olmalıdır. SQL Server 2012'ye (11.x) SMB desteği eklendiğinde, tüm paylaşımların SMB 3.0'ı desteklemesi gerekiyordu. Samba'yı Windows Server için değil de paylaşım için kullanıyorsanız, Samba tabanlı paylaşım Samba 4.0 veya üzerini ve ideal olarak SMB 3.1.1'i destekleyen 4.3 veya üzerini kullanmalıdır. SMB ve Linux hakkında iyi bir bilgi kaynağı Samba'daki SMB3'tür.
Son olarak, bir ağ dosya sistemi (NFS) paylaşımı kullanmak bir seçenektir. NFS'yi SQL Server'ın Windows tabanlı dağıtımlarında kullanamazsınız ve yalnızca Linux tabanlı dağıtımlar için kullanılabilir.
Güvenlik duvarını yapılandırma
Windows'a benzer şekilde, Linux dağıtımlarında da yerleşik bir güvenlik duvarı vardır. Kuruluşunuz sunucular için bir dış güvenlik duvarı kullanıyorsa, Linux'ta güvenlik duvarlarını devre dışı bırakabilirsiniz. Ancak, güvenlik duvarını nerede etkinleştirdiğinizden bağımsız olarak bağlantı noktalarını açmanız gerekir. Aşağıdaki tabloda, Linux üzerinde yüksek oranda kullanılabilir SQL Server dağıtımları için gereken ortak bağlantı noktaları listelenmiştir.
| Port Numarası | Türü | Açıklama |
|---|---|---|
111 |
TCP/UDP | NFS- rpcbind/sunrpc |
135 |
TCP | Samba (kullanılıyorsa) - Uç Nokta Eşleştiricisi |
137 |
Kullanıcı Datagram Protokolü (UDP) | Samba (kullanılıyorsa) - NetBIOS Ad Hizmeti |
138 |
Kullanıcı Datagram Protokolü (UDP) | Samba (kullanılıyorsa) - NetBIOS Veri Birimi |
139 |
TCP | Samba (kullanılıyorsa) - NetBIOS Oturumu |
445 |
TCP | Samba (kullanılıyorsa) - TCP üzerinden SMB |
1433 |
TCP | SQL Server - varsayılan bağlantı noktası; istenirse, mssql-conf set network.tcpport <portnumber> ile değiştirilebilir. |
2049 |
TCP, UDP | NFS (kullanılıyorsa) |
2224 |
TCP | Pacemaker - tarafından kullanılır pcsd |
3121 |
TCP | Pacemaker - Pacemaker Uzak düğümleri varsa gereklidir |
3260 |
TCP | iSCSI Başlatıcısı (kullanılıyorsa) - /etc/iscsi/iscsid.config (RHEL) içinde değiştirilebilir, ancak iSCSI Hedefinin bağlantı noktasıyla eşleşmelidir. |
5022 |
TCP | SQL Server - AG uç noktası için kullanılan varsayılan bağlantı noktası; uç nokta oluşturulurken değiştirilebilir |
5403 |
TCP | Kalp pili |
5404 |
Kullanıcı Datagram Protokolü (UDP) | Pacemaker - Çok noktaya yayın UDP kullanıldığında Corosync tarafından gereklidir |
5405 |
Kullanıcı Datagram Protokolü (UDP) | Pacemaker - Corosync tarafından gereklidir |
21064 |
TCP | Pacemaker - DLM kullanan kaynaklar için gereklidir |
| Değişken | TCP | AG uç noktası bağlantı noktası; varsayılan değer 5022'dir |
| Değişken | TCP | NFS - bağlantı noktası ( LOCKD_TCPPORT RHEL'de /etc/sysconfig/nfs bulunur) |
| Değişken | Kullanıcı Datagram Protokolü (UDP) | NFS - bağlantı noktası ( LOCKD_UDPPORT RHEL'de /etc/sysconfig/nfs bulunur) |
| Değişken | TCP/UDP | NFS - bağlantı noktası ( MOUNTD_PORT RHEL'de /etc/sysconfig/nfs bulunur) |
| Değişken | TCP/UDP | NFS - bağlantı noktası ( STATD_PORT RHEL'de /etc/sysconfig/nfs bulunur) |
Samba'nın kullandığı diğer bağlantı noktaları için bkz. Samba Bağlantı Noktası Kullanımı.
Buna karşılık, hizmetin adını bağlantı noktası yerine özel durum olarak Linux altına ekleyebilirsiniz. Örneğin Pacemaker için kullanın high-availability . Uygun adlar için yazılım dağıtımınıza bakın. Örneğin RHEL'de Pacemaker'a eklenecek komut şöyledir:
sudo firewall-cmd --permanent --add-service=high-availability
Güvenlik duvarı belgeleri
Uyarı
SQL Server 2025'te (17.x) başlayarak SUSE Linux Enterprise Server (SLES) desteklenmez.
Kullanılabilirlik için SQL Server paketlerini yükleme
Windows tabanlı bir SQL Server yüklemesinde, bazı bileşenler temel altyapı yüklemesinde bile yüklenirken, diğerleri yüklenmez. Linux altında, yükleme işleminin bir parçası olarak yalnızca SQL Server altyapısı yüklenir. Diğer her şey isteğe bağlıdır. Linux altındaki yüksek oranda kullanılabilir SQL Server örnekleri için SQL Server ile iki paket yüklenmelidir:
- SQL Server Aracısı (
mssql-server-agent) - yüksek kullanılabilirlik (HA) paketi (
mssql-server-ha)
SQL Server Aracısı teknik olarak isteğe bağlı olsa da, SQL Server işleri için varsayılan zamanlayıcıdır ve günlük gönderimi için gereklidir, bu nedenle yükleme önerilir.
CU 4 ve sonraki sürümleriyle SQL Server 2017'de (14.x), SQL Server Agent Veritabanı Altyapısı paketine dahil edilir, ancak yine de etkinleştirmeniz gerekir. Windows tabanlı yüklemelerde SQL Server Aracısı isteğe bağlı değildir.
Uyarı
SQL Server Aracısı, SQL Server için yerleşik iş zamanlayıcıdır. Yedeklemeler ve rutin bakım gibi görevleri zamanlamak için kullanılır. Windows'da SQL Server Aracısı ayrı bir hizmet olarak çalışır. Linux'ta SQL Server bağlamında çalışır.
Windows tabanlı bir yapılandırmada AG'leri veya FCI'leri yapılandırdığınızda, bunlar küme farkındadır. Küme tanıma, SQL Server'ın bir WSFC'nin bildiği belirli kaynak DLL'lerine (sqagtres.dll ve sqsrvres.dll FC'ler için, hadrres.dll AG'ler için) sahip olduğu ve SQL Server kümelenmiş işlevselliğinin çalıştığından, çalıştığından ve düzgün çalıştığından emin olmak için WSFC tarafından kullanıldığı anlamına gelir.
Kümeleme yalnızca SQL Server'ın değil Linux'un da dışında olduğundan, Microsoft'un Linux tabanlı AG ve FCI dağıtımları için kaynak DLL'sinin eşdeğerini kodlanması gerekiyordu. Bu kaynak, Pacemaker için SQL Server kaynak aracısı olarak da bilinen pakettir mssql-server-ha . Paketi yüklemek için bkz: mssql-server-haLinux üzerinde SQL Server için Pacemaker kümesi dağıtma.
Linux'ta Full-Text Arama (mssql-server-fts) ve Integration Services (mssql-server-is), isteğe bağlı SQL Server paketleridir ve FCI veya AG için gerekli değildir.
SQL Server yüksek kullanılabilirlik ve olağanüstü durum kurtarma iş ortakları
SQL Server hizmetleriniz için yüksek kullanılabilirlik ve olağanüstü durum kurtarma sağlamak için çok çeşitli sektör lideri araçlar arasından seçim yapın. Bu bölümde, SQL Server'ı destekleyen yüksek kullanılabilirlik ve olağanüstü durum kurtarma çözümlerine sahip Microsoft iş ortağı şirketleri vurgulanmaktadır.
| İş Ortağı | Açıklama |
|---|---|
| DH2i | DxEnterprise, Windows, Linux ve kapsayıcı ortamları için bir kullanılabilirlik yönetimi çözümüdür. Yüksek kullanılabilirliği destekler, planlı ve plansız kapalı kalma süresini azaltır ve fiziksel ve mantıksal kaynakların yönetimini basitleştirir. - Kubernetes'te DH2i DxEnterprise ile kullanılabilirlik gruplarını dağıtma - Öğretici: DH2i DxEnterprise ile üç düğümlü Always On kullanılabilirlik grubu ayarlama |
| HPE Serviceguard | HPE SGLX, Yük Devretme Kümesi Örneği ve AlwaysOn Kullanılabilirlik Grupları için bağlama duyarlı izleme ve kurtarma seçenekleri sunar. Veri bütünlüğünden ve performansından ödün vermeden HPE SGLX ile çalışma süresini en üst düzeye çıkarın. - Öğretici: Linux için HPE Serviceguard ile üç düğümlü Always On kullanılabilirlik grubu ayarlama. |
| Kalp pili | Pacemaker, açık kaynak yüksek kullanılabilirlik kümesi kaynak yöneticisidir. Pacemaker, açık kaynak grup iletişim sistemi Corosync ile bileşen hatalarını algılayabilir ve uygulamalarda kesintileri en aza indirmek için gerekli yük devretme prosedürlerini düzenleyebilir. - Linux'ta Kullanılabilirlik Grupları ve Yük Devretme Kümesi Örnekleri için Pacemaker - Linux üzerinde SQL Server için Pacemaker kümesi dağıtma |