{"id":1151,"date":"2026-11-04T10:23:13","date_gmt":"2026-11-04T10:23:13","guid":{"rendered":"https:\/\/www.vps.tc\/blog\/?p=1151"},"modified":"2026-11-04T09:30:58","modified_gmt":"2026-11-04T09:30:58","slug":"windows-server-sql-server-kurulumu-ilk-ayarlar","status":"publish","type":"post","link":"https:\/\/www.vps.tc\/blog\/tr\/windows-server-sql-server-kurulumu-ilk-ayarlar\/","title":{"rendered":"Windows Server&#8217;da SQL Server Kurulumu ve \u0130lk Ayarlar"},"content":{"rendered":"<div class=\"aiw-summary\" id=\"aiw-ozet\">\n<p class=\"aiw-summary-title\">H\u0131zl\u0131 \u00d6zet &#8211; Windows Server SQL Server Kurulumu<\/p>\n<p>Varsay\u0131msal SQL01 laboratuvar\u0131nda Windows Server 2022 \u00fczerinde SQL Server 2022 Developer kurulumu planlan\u0131r. Hedef yaln\u0131zca \u00e7al\u0131\u015fan bir hizmet de\u011fil; s\u0131n\u0131rland\u0131r\u0131lm\u0131\u015f eri\u015fim ve geri y\u00fcklenebilir veridir.<\/p>\n<ul>\n<li><strong>Ortam ve lisans<\/strong> \u2014 4 vCPU ve 8 GB RAM \u00f6rnek ba\u015flang\u0131\u00e7 kapasitesidir; Developer yaln\u0131zca geli\u015ftirme ve test i\u00e7indir, \u00fcretim kullan\u0131m\u0131na lisans vermez.<\/li>\n<li><strong>Dar kurulum kapsam\u0131<\/strong> \u2014 Yaln\u0131zca Database Engine Services bile\u015fenini, varsay\u0131lan MSSQLSERVER \u00f6rne\u011fini ve NT SERVICE\\MSSQLSERVER hizmet hesab\u0131n\u0131 kullan\u0131n.<\/li>\n<li><strong>S\u0131n\u0131rl\u0131 uygulama yetkisi<\/strong> \u2014 Yerel y\u00f6netimde Windows kimlik do\u011frulamas\u0131n\u0131 kullan\u0131n; SQL oturumu gerekiyorsa karma modu a\u00e7\u0131p uygulamaya yaln\u0131zca gerekli nesne izinlerini verin.<\/li>\n<li><strong>\u00d6l\u00e7\u00fclebilir ba\u015flang\u0131\u00e7 ayarlar\u0131<\/strong> \u2014 Bu laboratuvarda max server memory i\u00e7in 4096 MB, tempdb i\u00e7in e\u015fit boyutlu 4 veri dosyas\u0131 ve 1 g\u00fcnl\u00fck dosyas\u0131 ba\u015flang\u0131\u00e7 olarak de\u011ferlendirilir.<\/li>\n<li><strong>Korumal\u0131 uzak ba\u011flant\u0131<\/strong> \u2014 Statik TCP 1433 eri\u015fimini uygulama ve y\u00f6netim IP adresleriyle s\u0131n\u0131rland\u0131r\u0131n; SSMS ba\u011flant\u0131s\u0131nda Mandatory \u015fifreleme ve do\u011frulanabilir TLS sertifikas\u0131 kullan\u0131n.<\/li>\n<li><strong>Geri d\u00f6n\u00fc\u015f kan\u0131t\u0131<\/strong> \u2014 Tam ve transaction log yedeklerini sunucu d\u0131\u015f\u0131nda da saklay\u0131n; ayr\u0131 bir veritaban\u0131na ger\u00e7ek geri y\u00fckleme yapmadan yedek s\u00fcrecini tamamlanm\u0131\u015f saymay\u0131n.<\/li>\n<\/ul>\n<\/div>\n<p class=\"aiw-lead\">SQL Server hizmetinin ba\u015flamas\u0131, kurulumun tamamland\u0131\u011f\u0131n\u0131 g\u00f6stermez. Windows Server SQL Server kurulumu; uygun lisans ve disk haz\u0131rl\u0131\u011f\u0131ndan sonra Database Engine y\u00fcklemeyi, y\u00f6netici hesab\u0131n\u0131 tan\u0131mlamay\u0131 ve g\u00fcncellemeleri uygulamay\u0131 gerektirir. Kullan\u0131ma ge\u00e7meden bellek s\u0131n\u0131r\u0131n\u0131, TLS ile korunan TCP eri\u015fimini ve yedekten d\u00f6n\u00fc\u015f\u00fc do\u011frulay\u0131n. Buradaki \u00f6rnekler, \u00fcretim d\u0131\u015f\u0131 Windows Server 2022 laboratuvar\u0131na dayan\u0131r.<\/p>\n<div class=\"aiw-toc\" style=\"border:1px solid #dbe3ea;border-radius:8px;padding:16px 20px;margin:0 0 28px\">\n<p class=\"aiw-toc-head\"><strong>\u0130\u00e7indekiler<\/strong><span class=\"aiw-toc-meta\"> \u00b7 17 dk okuma<\/span><\/p>\n<ol style=\"margin:10px 0 0;padding-left:22px\">\n<li><a href=\"#kurulumdan-once-vps-disk-ve-lisans-kontrolu\">Kurulumdan \u00f6nce VPS, disk ve lisans kontrol\u00fc<\/a><\/li>\n<li><a href=\"#sql-server-2022-database-engine-kurulumu\">SQL Server 2022 Database Engine kurulumu<\/a><\/li>\n<li><a href=\"#windows-kimlik-dogrulamasi-mi-karma-mod-mu\">Windows kimlik do\u011frulamas\u0131 m\u0131, karma mod mu?<\/a><\/li>\n<li><a href=\"#bellek-veri-dosyalari-ve-tempdb-icin-baslangic-ayarlari\">Bellek, veri dosyalar\u0131 ve tempdb i\u00e7in ba\u015flang\u0131\u00e7 ayarlar\u0131<\/a><\/li>\n<li><a href=\"#tcp-1433-erisimini-tls-ve-guvenlik-duvariyla-sinirlandirma\">TCP 1433 eri\u015fimini TLS ve g\u00fcvenlik duvar\u0131yla s\u0131n\u0131rland\u0131rma<\/a><\/li>\n<li><a href=\"#ssms-baglantisini-katman-katman-dogrulama\">SSMS ba\u011flant\u0131s\u0131n\u0131 katman katman do\u011frulama<\/a><\/li>\n<li><a href=\"#ilk-yedek-ancak-geri-yukleme-provasiyla-tamamlanir\">\u0130lk yedek ancak geri y\u00fckleme provas\u0131yla tamamlan\u0131r<\/a><\/li>\n<li><a href=\"#uygulamayi-baglamadan-once-kontrol-edin\">Uygulamay\u0131 Ba\u011flamadan \u00d6nce Kontrol Edin<\/a><\/li>\n<li><a href=\"#sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/a><\/li>\n<li><a href=\"#kaynaklar\">Kaynaklar<\/a><\/li>\n<\/ol>\n<\/div>\n<h2 id=\"kurulumdan-once-vps-disk-ve-lisans-kontrolu\">Kurulumdan \u00f6nce VPS, disk ve lisans kontrol\u00fc<\/h2>\n<p>Kurulum sihirbaz\u0131n\u0131n a\u00e7\u0131lmas\u0131, sunucunun haz\u0131r oldu\u011funu g\u00f6stermez. \u00d6nce zemini kontrol edin. Windows Server SQL Server kurulumu \u00f6ncesinde eksik birimi fark etmek, veri dosyalar\u0131n\u0131 sonradan ba\u015fka diske ta\u015f\u0131maktan daha kolayd\u0131r.<\/p>\n<p>Varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 laboratuvar sunucusu <code>SQL01<\/code>; Windows Server 2022 Standard Desktop Experience 21H2, 20348 derleme ailesi, 4 vCPU ve 8 GB RAM kullan\u0131r. Microsoft Learn gereksinim belgesi, SQL Server 2022 i\u00e7in bu i\u015fletim sistemini destekler; x64 i\u015flemci gerektirir. Express d\u0131\u015f\u0131ndaki s\u00fcr\u00fcmlerde asgari bellek 1 GB, asgari bo\u015f disk alan\u0131 6 GB&#8217;d\u0131r. Bunlar kapasite hedefi de\u011fildir. \u00d6rnekteki 4 vCPU\/8 GB ba\u015flang\u0131\u00e7 kapasitesidir; i\u015fletim sistemi, veriler, g\u00fcnl\u00fckler ve yedekler i\u00e7in ayr\u0131ca pay b\u0131rak\u0131lmal\u0131d\u0131r.<\/p>\n<h3>Lisans se\u00e7imi kullan\u0131m amac\u0131ndan ba\u015flar<\/h3>\n<p>Microsoft&#8217;un s\u00fcr\u00fcm kar\u015f\u0131la\u015ft\u0131rmas\u0131na g\u00f6re SQL Server 2022 Developer geli\u015ftirme ve test i\u00e7indir; \u00fcretim kullan\u0131m\u0131na lisans vermez. Laboratuvarda Developer 16.x, varsay\u0131lan <code>MSSQLSERVER<\/code> \u00f6rne\u011fi ve yaln\u0131zca Database Engine Services kullan\u0131l\u0131r. Express \u00fccretsiz \u00fcretim kullan\u0131m\u0131na uygun olabilir; ili\u015fkisel veritaban\u0131 ba\u015f\u0131na 10 GB s\u0131n\u0131r\u0131 ve i\u015flemci\/bellek k\u0131s\u0131tlar\u0131 se\u00e7imde belirleyicidir. \u00dcretimde Standard veya Enterprise i\u00e7in uygun SQL Server lisans\u0131n\u0131 ayr\u0131ca de\u011ferlendirin; Windows Server lisans\u0131 bunu kendili\u011finden kar\u015f\u0131lamaz.<\/p>\n<p>Active Directory bulunmaz. SQL01 \u00fczerindeki yetkili yerel hesapla oturum a\u00e7\u0131p PowerShell&#8217;i y\u00f6netici olarak \u00e7al\u0131\u015ft\u0131r\u0131n. A\u015fa\u011f\u0131daki salt okunur \u00f6rnek, yetkiyi, i\u015fletim sistemini, kaynaklar\u0131 ve disk haz\u0131rl\u0131\u011f\u0131n\u0131 kontrol eder:<\/p>\n<pre><code>$identity = [Security.Principal.WindowsIdentity]::GetCurrent()\n$principal = [Security.Principal.WindowsPrincipal]::new($identity)\n$principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)\n\nGet-CimInstance Win32_OperatingSystem |\n    Select-Object CSName, Caption, Version, BuildNumber, OSArchitecture\n\nGet-CimInstance Win32_ComputerSystem |\n    Select-Object NumberOfLogicalProcessors,\n        @{Name='RAM_GiB'; Expression={[math]::Round($_.TotalPhysicalMemory \/ 1GB, 2)}}\n\nGet-Volume -DriveLetter C,D,L,T,B -ErrorAction Stop |\n    Select-Object DriveLetter, FileSystem, HealthStatus,\n        @{Name='Free_GiB'; Expression={[math]::Round($_.SizeRemaining \/ 1GB, 2)}}\n\n'C:\\Install\\SQL2022','D:\\SQL\\Data','L:\\SQL\\Log',\n'T:\\SQL\\TempDB','B:\\SQL\\Backup' | ForEach-Object {\n    [pscustomobject]@{\n        Path = $_\n        Exists = Test-Path -LiteralPath $_ -PathType Container\n    }\n}<\/code><\/pre>\n<p>Beklenen \u00e7\u0131kt\u0131lar: yetki i\u00e7in <code>True<\/code>, 4 mant\u0131ksal i\u015flemci, yakla\u015f\u0131k 8 GiB RAM; i\u015fletim sisteminde SQL01, Windows Server 2022 Standard, 64 bit mimari ve <code>20348<\/code> derlemesi. \u00d6nceden olu\u015fturulmu\u015f birimler NTFS ve sa\u011fl\u0131kl\u0131 olmal\u0131d\u0131r. Bo\u015f alan\u0131 b\u00fcy\u00fcme beklentisiyle kar\u015f\u0131la\u015ft\u0131r\u0131n; ayr\u0131 s\u00fcr\u00fcc\u00fc harfleri fiziksel I\/O yal\u0131t\u0131m\u0131n\u0131 garanti etmez. Dizinlerde <code>False<\/code> eksik klas\u00f6r\u00fc g\u00f6sterir; <code>True<\/code> yazma yetkisini kan\u0131tlamaz.<\/p>\n<p>Kurulum medyas\u0131n\u0131 ve g\u00fcncel, onaylanm\u0131\u015f CU paketini Microsoft kaynaklar\u0131ndan edinin; CU numaras\u0131yla tam derlemeyi yay\u0131n \u00f6ncesinde do\u011frulay\u0131n. Windows Update durumunu ve kurulum kurallar\u0131ndaki yeniden ba\u015flatma uyar\u0131lar\u0131n\u0131 inceleyin; gereken yeniden ba\u015flatmay\u0131 tamamlamadan ilerlemeyin.<\/p>\n<p>Mevcut sistemin yede\u011fini kurulumdan \u00f6nce al\u0131n. <a href=\"https:\/\/www.vps.tc\/blog\/tr\/windows-server-yedekleme-nasil-yapilir\/\">Windows Server Yedekleme Nas\u0131l Yap\u0131l\u0131r?<\/a> i\u00e7eri\u011findeki geri d\u00f6n\u00fc\u015f haz\u0131rl\u0131\u011f\u0131n\u0131 uygulay\u0131n; yaln\u0131zca VPS snapshot&#8217;\u0131na g\u00fcvenmeyin. Sa\u011flay\u0131c\u0131n\u0131n konsol veya kurtarma eri\u015fimini ve yede\u011fe ula\u015fabildi\u011finizi do\u011frulamadan kurulumu ba\u015flatmay\u0131n.<\/p>\n<div class=\"aiw-callout aiw-callout-warn\">\n<p class=\"aiw-callout-label\">Dikkat<\/p>\n<p>SQL Server 2022 Developer, \u00fcretim i\u015f y\u00fckleri i\u00e7in lisans sa\u011flamaz; VPS&#039;nin size ait olmas\u0131 bunu de\u011fi\u015ftirmez. \u00d6rnekteki 4 vCPU ve 8 GB RAM, Microsoft&#039;un asgari gereksinimleri veya her uygulama i\u00e7in yeterlilik garantisi de\u011fildir.<\/p>\n<\/div>\n<h2 id=\"sql-server-2022-database-engine-kurulumu\">SQL Server 2022 Database Engine kurulumu<\/h2>\n<p>Kurulum sihirbaz\u0131nda fazladan se\u00e7ilen her bile\u015fen, bak\u0131m listenizi uzat\u0131r. Se\u00e7imi dar tutun. Bu varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 laboratuvarda SQL01; 4 vCPU, 8 GB RAM ve Windows Server 2022 Standard Desktop Experience 21H2 (20348 derleme ailesi) kullan\u0131r. Microsoft Learn gereksinim belgesi, SQL Server 2022 i\u00e7in bu i\u015fletim sistemi deste\u011fini do\u011frular.<\/p>\n<p>Microsoft&#8217;tan edindi\u011finiz SQL Server 2022 medyas\u0131n\u0131 <code>C:\\Install\\SQL2022<\/code> dizinine haz\u0131rlay\u0131n. SQL01 \u00fczerindeki yetkili yerel hesapla PowerShell&#8217;i y\u00f6netici olarak a\u00e7\u0131p kurulum dosyas\u0131n\u0131n imzas\u0131n\u0131 inceleyin:<\/p>\n<pre><code>Get-AuthenticodeSignature -FilePath 'C:\\Install\\SQL2022\\setup.exe' |\n    Format-List Status, StatusMessage, SignerCertificate<\/code><\/pre>\n<p>Beklenen durum <code>Valid<\/code>, imzalayan kurulu\u015f Microsoft&#8217;tur. Kontrol yaln\u0131zca bu dosyay\u0131 kapsar; medyan\u0131n tamam\u0131n\u0131 do\u011frulamaz. \u0130mza do\u011frulanm\u0131yorsa ilerlemeyin. Ard\u0131ndan <code>setup.exe<\/code> dosyas\u0131n\u0131 y\u00f6netici olarak \u00e7al\u0131\u015ft\u0131r\u0131n; Installation ekran\u0131nda yeni ba\u011f\u0131ms\u0131z SQL Server kurulumunu se\u00e7ip \u00f6nko\u015ful hatalar\u0131n\u0131 giderin.<\/p>\n<p>S\u00fcr\u00fcm olarak <strong>Developer<\/strong> se\u00e7in. Microsoft Learn s\u00fcr\u00fcm a\u00e7\u0131klamalar\u0131na g\u00f6re Developer, geli\u015ftirme ve test i\u00e7indir; \u00fcretim kullan\u0131m\u0131na lisans vermez. \u00dcretimde uygun SQL Server lisans\u0131n\u0131 ayr\u0131ca de\u011ferlendirin. Feature Selection ekran\u0131nda yaln\u0131zca <strong>Database Engine Services<\/strong> i\u015faretli kals\u0131n. Instance Configuration alt\u0131nda Default instance se\u00e7erek <code>MSSQLSERVER<\/code> varsay\u0131lan \u00f6rne\u011fini olu\u015fturun.<\/p>\n<p>Server Configuration ekran\u0131nda motor hizmeti hesab\u0131n\u0131 <code>NT SERVICE\\MSSQLSERVER<\/code> olarak b\u0131rak\u0131n. Collation se\u00e7imini uygulaman\u0131n gereksinimine g\u00f6re yap\u0131n &#8211; T\u00fcrk\u00e7e karakter kar\u015f\u0131la\u015ft\u0131rmalar\u0131 ve b\u00fcy\u00fck\/k\u00fc\u00e7\u00fck harf duyarl\u0131l\u0131\u011f\u0131 se\u00e7imden etkilenir. Database Engine Configuration alt\u0131nda Windows Authentication se\u00e7in. Active Directory bulunmayan SQL01&#8217;de <strong>Add Current User<\/strong> d\u00fc\u011fmesiyle yetkili yerel hesab\u0131n\u0131z\u0131 SQL Server y\u00f6neticilerine a\u00e7\u0131k\u00e7a ekleyin.<\/p>\n<p>Data Directories ekran\u0131nda kullan\u0131c\u0131 verisini <code>D:\\SQL\\Data<\/code>, g\u00fcnl\u00fckleri <code>L:\\SQL\\Log<\/code>, yerel yedekleri <code>B:\\SQL\\Backup<\/code> olarak ayarlay\u0131n. TempDB sekmesinde veri ve g\u00fcnl\u00fck dizinlerini <code>T:\\SQL\\TempDB<\/code> yap\u0131n. Bu birimler \u00f6nceden olu\u015fturulmu\u015f NTFS diskleridir; ayr\u0131 s\u00fcr\u00fcc\u00fc harfleri fiziksel I\/O yal\u0131t\u0131m\u0131 garantisi de\u011fildir.<\/p>\n<p>Kurulumu tamamlay\u0131p Microsoft&#8217;tan edinilen g\u00fcncel, onaylanm\u0131\u015f CU&#8217;yu uygulay\u0131n. CU numaras\u0131 ve tam derleme yay\u0131n \u00f6ncesinde do\u011frulanmal\u0131d\u0131r. Gerekiyorsa yeniden ba\u015flat\u0131n; SQL01&#8217;de PowerShell ile hizmet durumuna bak\u0131n:<\/p>\n<pre><code>Get-Service -Name MSSQLSERVER | Select-Object Name, Status<\/code><\/pre>\n<p>Beklenen durum <code>Running<\/code> de\u011feridir. Yetkili SQL ba\u011flant\u0131s\u0131 kuruldu\u011funda tam s\u00fcr\u00fcm\u00fc \u015fu sorguyla kaydedin:<\/p>\n<pre><code>SELECT\n    SERVERPROPERTY('ProductVersion') AS ProductVersion,\n    SERVERPROPERTY('Edition') AS Edition,\n    SERVERPROPERTY('InstanceName') AS InstanceName;<\/code><\/pre>\n<p><code>ProductVersion<\/code>, onaylanan tam <code>16.x<\/code> derlemesiyle e\u015fle\u015fmeli; <code>Edition<\/code> Developer s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir. Varsay\u0131lan \u00f6rnekte <code>InstanceName<\/code>, <code>NULL<\/code> d\u00f6ner. Kurulum ba\u015far\u0131s\u0131zsa tekrar denemeden \u00f6nce <code>C:\\Program Files\\Microsoft SQL Server\\160\\Setup Bootstrap\\Log<\/code> alt\u0131ndaki <code>Summary.txt<\/code> ve ilgili \u00e7al\u0131\u015ft\u0131rman\u0131n zaman damgal\u0131 klas\u00f6r\u00fcndeki <code>Detail.txt<\/code> kay\u0131tlar\u0131n\u0131 inceleyin.<\/p>\n<div class=\"aiw-callout aiw-callout-field\">\n<p class=\"aiw-callout-label\">Sahadan not<\/p>\n<p>Bu not ger\u00e7ek saha olay\u0131 de\u011fil, varsay\u0131msal laboratuvar kontrol\u00fcd\u00fcr. SQL01 \u00fczerinde kurulum ba\u015far\u0131s\u0131z olursa C:\\Program Files\\Microsoft SQL Server\\160\\Setup Bootstrap\\Log alt\u0131ndaki Summary.txt ve ilgili kurulumun Detail.txt kay\u0131tlar\u0131 incelenmelidir. Herhangi bir testin yap\u0131ld\u0131\u011f\u0131 veya belirli bir hata \u00e7\u0131kt\u0131s\u0131n\u0131n g\u00f6zlendi\u011fi iddia edilmez.<\/p>\n<\/div>\n<h2 id=\"windows-kimlik-dogrulamasi-mi-karma-mod-mu\">Windows kimlik do\u011frulamas\u0131 m\u0131, karma mod mu?<\/h2>\n<p>Uygulaman\u0131n ba\u011flanmas\u0131 i\u00e7in sunucudaki b\u00fct\u00fcn kap\u0131lar\u0131 a\u00e7man\u0131z gerekmez. Windows Server SQL Server kurulumu s\u0131ras\u0131nda varsay\u0131lan Windows kimlik do\u011frulamas\u0131n\u0131 koruyun; SQL01 \u00fczerindeki yerel y\u00f6netimi, kurulumda SQL Server y\u00f6neticisi olarak ekledi\u011finiz yetkili yerel Windows hesab\u0131yla y\u00fcr\u00fct\u00fcn. Windows y\u00f6neticisi olmak, SQL Server i\u00e7inde kendili\u011finden <code>sysadmin<\/code> yetkisi sa\u011flamaz.<\/p>\n<p>Bu varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 laboratuvarda Active Directory bulunmaz. Windows 11 y\u00f6netim istemcisindeki hesab\u0131n\u0131z SQL01 taraf\u0131ndan otomatik olarak g\u00fcvenilir kabul edilmez; ayn\u0131 kullan\u0131c\u0131 ad\u0131 tek ba\u015f\u0131na yeterli de\u011fildir. Uzak SSMS 20.2 ba\u011flant\u0131s\u0131 iste\u011fe ba\u011fl\u0131 karma mod dal\u0131n\u0131 izler. Microsoft Learn s\u00fcr\u00fcm a\u00e7\u0131klamas\u0131na g\u00f6re SQL Server 2022 Developer \u00fcretim kullan\u0131m\u0131na lisans vermez; \u00fcretim lisans\u0131n\u0131 ayr\u0131ca de\u011ferlendirin.<\/p>\n<p>SQL kimlik do\u011frulamas\u0131 gerekiyorsa kurulumda karma modu se\u00e7ebilirsiniz. Sonradan ge\u00e7i\u015f i\u00e7in SSMS sunucu \u00f6zelliklerinin Security b\u00f6l\u00fcm\u00fcnde <strong>SQL Server and Windows Authentication mode<\/strong> se\u00e7ene\u011fini i\u015faretleyin. De\u011fi\u015fiklik, Database Engine hizmeti yeniden ba\u015flat\u0131l\u0131nca etkinle\u015fir; varsay\u0131lan \u00f6rne\u011fin hizmet ad\u0131 <code>MSSQLSERVER<\/code> olur. Mevcut ba\u011flant\u0131lar kesilece\u011finden i\u015flemi planlay\u0131n. Karma mod, Windows kimlik do\u011frulamas\u0131n\u0131 kald\u0131rmaz; <code>sa<\/code> hesab\u0131n\u0131 etkinle\u015ftirmenizi de gerektirmez.<\/p>\n<p>Yetkiyi dar tutun. \u00d6rnekten \u00f6nce yetkili y\u00f6netim ba\u011flant\u0131s\u0131yla SSMS \u00fczerinden <code>AppLogin<\/code> adl\u0131 bir SQL oturumu olu\u015fturun. Parolay\u0131 parola y\u00f6neticisinde \u00fcretip g\u00fcvenli kasada saklay\u0131n, parola ilkesi denetimini a\u00e7\u0131k b\u0131rak\u0131n ve ek sunucu rol\u00fc atamay\u0131n. Ger\u00e7ek parolay\u0131 sorgu dosyas\u0131na yazmay\u0131n. Uygulama hesab\u0131n\u0131 insan y\u00f6netici hesab\u0131ndan ayr\u0131 tutun.<\/p>\n<p>A\u015fa\u011f\u0131daki T-SQL, hen\u00fcz bulunmayan <code>AppDb<\/code> veritaban\u0131n\u0131 ve varsay\u0131msal i\u015f kayd\u0131 tablosunu olu\u015fturur. Yetkili y\u00f6netici taraf\u0131ndan bir kez \u00e7al\u0131\u015ft\u0131r\u0131lmak \u00fczere haz\u0131rlanm\u0131\u015ft\u0131r; uygulama kullan\u0131c\u0131s\u0131n\u0131 oturumla e\u015fler, \u00f6zel role ekler ve yaln\u0131zca \u00f6rnek tabloyu okuma ve tabloya kay\u0131t ekleme izinlerini verir.<\/p>\n<pre><code>USE master;\nGO\nCREATE DATABASE AppDb;\nGO\nUSE AppDb;\nGO\nCREATE TABLE dbo.WorkItems\n(\n    WorkItemId int IDENTITY(1,1) NOT NULL PRIMARY KEY,\n    Title nvarchar(200) NOT NULL\n);\nGO\nCREATE USER AppUser FOR LOGIN AppLogin;\nCREATE ROLE AppWriter AUTHORIZATION dbo;\nGRANT SELECT, INSERT ON OBJECT::dbo.WorkItems TO AppWriter;\nALTER ROLE AppWriter ADD MEMBER AppUser;\nGO\nEXECUTE AS USER = 'AppUser';\nSELECT\n    HAS_PERMS_BY_NAME('dbo.WorkItems', 'OBJECT', 'SELECT') AS CanSelect,\n    HAS_PERMS_BY_NAME('dbo.WorkItems', 'OBJECT', 'INSERT') AS CanInsert,\n    HAS_PERMS_BY_NAME('dbo.WorkItems', 'OBJECT', 'DELETE') AS CanDelete;\nREVERT;\nGO<\/code><\/pre>\n<p>Ba\u015fka izin atanmam\u0131\u015f bu \u00f6rnekte son sorgunun beklenen de\u011ferleri s\u0131ras\u0131yla <code>1<\/code>, <code>1<\/code> ve <code>0<\/code> olur: okuma ve ekleme serbest, silme izni yoktur. Kontrol, veritaban\u0131 kullan\u0131c\u0131s\u0131n\u0131n izinlerini g\u00f6sterir; uzak ba\u011flant\u0131y\u0131 veya parolay\u0131 s\u0131namaz. <code>REVERT<\/code> \u00f6nceki y\u00fcr\u00fctme ba\u011flam\u0131na d\u00f6nd\u00fcr\u00fcr. Uygulama ba\u011flant\u0131s\u0131nda <code>sa<\/code> hesab\u0131n\u0131, <code>sysadmin<\/code> veya <code>db_owner<\/code> rollerini kullanmay\u0131n.<\/p>\n<p>Kimlik do\u011frulama, aktar\u0131m \u015fifrelemesinin yerine ge\u00e7mez. Microsoft Learn ba\u011flant\u0131 \u015fifreleme belgesindeki TLS yap\u0131land\u0131rmas\u0131n\u0131 ayr\u0131ca uygulay\u0131n. Uygulama ileride kay\u0131t g\u00fcncellemek isterse b\u00fct\u00fcn veritaban\u0131na yetki vermek yerine yaln\u0131zca gerekli nesneye <code>UPDATE<\/code> izni ekleyin.<\/p>\n<h2 id=\"bellek-veri-dosyalari-ve-tempdb-icin-baslangic-ayarlari\">Bellek, veri dosyalar\u0131 ve tempdb i\u00e7in ba\u015flang\u0131\u00e7 ayarlar\u0131<\/h2>\n<p>SQL Server&#8217;a b\u00fct\u00fcn RAM&#8217;i b\u0131rakmak, Windows&#8217;un ihtiya\u00e7lar\u0131n\u0131 ortadan kald\u0131rmaz. Pay b\u0131rak\u0131n. Varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 SQL01 laboratuvar\u0131ndaki 8 GB RAM i\u00e7in <code>max server memory<\/code> de\u011ferini <strong>4096 MB<\/strong> ile ba\u015flat\u0131n. Bu de\u011fer \u00f6l\u00e7\u00fcmle de\u011fi\u015ftirilebilir; SQL Server s\u00fcrecinin b\u00fct\u00fcn bellek tahsislerine mutlak s\u0131n\u0131r koymaz ve kalan belle\u011fin tamam\u0131n\u0131 Windows&#8217;a ay\u0131rmay\u0131 garanti etmez.<\/p>\n<p>Microsoft Learn&#8217;\u00fcn SQL Server 2022 donan\u0131m gereksinimleri, Express d\u0131\u015f\u0131ndaki s\u00fcr\u00fcmler i\u00e7in en az 4 GB RAM \u00f6nerir. Bu donan\u0131m \u00f6nerisi, motorun bellek ayar\u0131 de\u011fildir. Microsoft&#8217;un s\u00fcr\u00fcm a\u00e7\u0131klamas\u0131na g\u00f6re SQL Server 2022 Developer yaln\u0131zca geli\u015ftirme ve test i\u00e7indir; \u00fcretimde uygun lisans ayr\u0131ca de\u011ferlendirilmelidir.<\/p>\n<p>SSMS 20.2 \u00fczerinden SQL01 \u00fczerindeki varsay\u0131lan <code>MSSQLSERVER<\/code> \u00f6rne\u011fine yetkili ba\u011flant\u0131yla a\u015fa\u011f\u0131daki komutlar\u0131 g\u00f6nderin. \u0130lk b\u00f6l\u00fcm bellek ayar\u0131n\u0131 de\u011fi\u015ftirir; sorgular etkin de\u011feri, varsay\u0131lan yollar\u0131 ve mevcut dosyalar\u0131 g\u00f6sterir.<\/p>\n<pre><code>USE master;\nGO\nEXEC sp_configure 'show advanced options', 1;\nRECONFIGURE;\nEXEC sp_configure 'max server memory (MB)', 4096;\nRECONFIGURE;\nGO\nSELECT name, value, value_in_use\nFROM sys.configurations\nWHERE name = 'max server memory (MB)';\n\nSELECT\n    SERVERPROPERTY('InstanceDefaultDataPath') AS default_data_path,\n    SERVERPROPERTY('InstanceDefaultLogPath') AS default_log_path;\n\nSELECT\n    DB_NAME(database_id) AS database_name,\n    name AS logical_name,\n    type_desc,\n    physical_name,\n    size \/ 128.0 AS size_mb,\n    is_percent_growth,\n    CASE WHEN is_percent_growth = 0\n         THEN growth \/ 128.0 END AS growth_mb\nFROM sys.master_files\nWHERE database_id = 2 OR database_id &gt; 4\nORDER BY database_id, file_id;<\/code><\/pre>\n<p>\u0130lk sonu\u00e7ta <code>value_in_use<\/code> i\u00e7in <code>4096<\/code> beklenir; bellek de\u011fi\u015fikli\u011fi yeniden ba\u015flatma gerektirmez. Varsay\u0131lan veri yolu <code>D:\\SQL\\Data<\/code>, g\u00fcnl\u00fck yolu <code>L:\\SQL\\Log<\/code> olmal\u0131d\u0131r. <code>physical_name<\/code> s\u00fctununu ayr\u0131ca kontrol edin &#8211; varsay\u0131lan yolu de\u011fi\u015ftirmek mevcut dosyalar\u0131 ta\u015f\u0131maz. Yeni kurulumda kullan\u0131c\u0131 veritaban\u0131 sat\u0131r\u0131 bulunmayabilir.<\/p>\n<h3>tempdb dosyalar\u0131n\u0131 e\u015fit ba\u015flat\u0131n<\/h3>\n<p>Bu 4 vCPU laboratuvar\u0131nda <code>T:\\SQL\\TempDB<\/code> alt\u0131nda <strong>4 e\u015fit veri dosyas\u0131 ve 1 g\u00fcnl\u00fck dosyas\u0131<\/strong> ile ba\u015flay\u0131n. \u00d6rnek boyutland\u0131rma, her dosyada 256 MB ba\u015flang\u0131\u00e7 boyutu ve sabit 128 MB b\u00fcy\u00fcmedir. Kapasiteyi i\u015f y\u00fck\u00fc belirler; uygulamadan \u00f6nce bo\u015f disk alan\u0131n\u0131 do\u011frulay\u0131n.<\/p>\n<p>SSMS&#8217;te <code>tempdb<\/code> \u00f6zelliklerinin Files sayfas\u0131nda mevcut dosyalar\u0131 say\u0131n; d\u00f6rt veri dosyas\u0131 zaten varsa yenilerini eklemeyin. Veri dosyalar\u0131n\u0131n boyutlar\u0131n\u0131 ve b\u00fcy\u00fcme ad\u0131mlar\u0131n\u0131 e\u015fitleyin. Mevcut dosyalar daha b\u00fcy\u00fckse yaln\u0131zca \u00f6rne\u011fe uymak i\u00e7in k\u00fc\u00e7\u00fcltmeyin. Kullan\u0131c\u0131 veritabanlar\u0131nda da y\u00fczde yerine sabit MB b\u00fcy\u00fcmesi se\u00e7in; 128 MB evrensel bir de\u011fer de\u011fildir.<\/p>\n<p>Ayar sonras\u0131nda sorguyu yeniden \u00e7al\u0131\u015ft\u0131r\u0131n: <code>is_percent_growth=0<\/code> ve <code>growth_mb=128<\/code>, \u00f6rnekteki sabit b\u00fcy\u00fcmeyi g\u00f6sterir. <code>tempdb<\/code> yol de\u011fi\u015fikli\u011fi hizmet yeniden ba\u015flatmas\u0131 gerektirir; hedef dizinde <code>NT SERVICE\\MSSQLSERVER<\/code> hesab\u0131n\u0131n gerekli dosya eri\u015fimini \u00f6nceden do\u011frulay\u0131n. Ayr\u0131 s\u00fcr\u00fcc\u00fc harfleri fiziksel I\/O yal\u0131t\u0131m\u0131 garantisi de\u011fildir.<\/p>\n<p><code>MAXDOP<\/code> ve <code>cost threshold for parallelism<\/code> de\u011ferlerini \u00f6l\u00e7\u00fcms\u00fcz de\u011fi\u015ftirmeyin. \u00d6nce mevcut ayarlar\u0131 kaydedin; temsil\u00ee y\u00fck alt\u0131nda CPU kullan\u0131m\u0131n\u0131, beklemeleri, disk gecikmesini ve bellek bask\u0131s\u0131n\u0131 izleyin. Dosyalar\u0131 beklenen kullan\u0131ma g\u00f6re \u00f6nceden boyutland\u0131r\u0131n; otomatik b\u00fcy\u00fcmeyi rutin kapasite plan\u0131n\u0131n yerine koymay\u0131n.<\/p>\n<h2 id=\"tcp-1433-erisimini-tls-ve-guvenlik-duvariyla-sinirlandirma\">TCP 1433 eri\u015fimini TLS ve g\u00fcvenlik duvar\u0131yla s\u0131n\u0131rland\u0131rma<\/h2>\n<p>A\u00e7\u0131k port, g\u00fcvenli ba\u011flant\u0131 demek de\u011fildir. TLS trafi\u011fi \u015fifreler; g\u00fcvenlik duvar\u0131 ba\u011flant\u0131y\u0131 kimlerin ba\u015flatabilece\u011fini s\u0131n\u0131rlar. \u0130kisi de gerekir. Varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 SQL01 laboratuvar\u0131nda Windows Server 2022 \u00fczerindeki varsay\u0131lan <code>MSSQLSERVER<\/code> \u00f6rne\u011fini yaln\u0131zca uygulama ve y\u00f6netim istemcilerine a\u00e7\u0131n. Microsoft&#8217;un s\u00fcr\u00fcm a\u00e7\u0131klamalar\u0131na g\u00f6re SQL Server 2022 Developer, \u00fcretim kullan\u0131m\u0131na lisans vermez.<\/p>\n<p>SQL Server Configuration Manager i\u00e7inde <strong>SQL Server Network Configuration \u2192 Protocols for MSSQLSERVER<\/strong> yolundan <strong>TCP\/IP<\/strong> protokol\u00fcn\u00fc etkinle\u015ftirin. <strong>Listen All = Yes<\/strong> oldu\u011funda port ayarlar\u0131 <strong>IPAll<\/strong> b\u00f6l\u00fcm\u00fcnden al\u0131n\u0131r. Buradaki <strong>TCP Dynamic Ports<\/strong> alan\u0131n\u0131 bo\u015falt\u0131n, <strong>TCP Port<\/strong> de\u011ferini <code>1433<\/code> yap\u0131n. Dinamik port alan\u0131ndaki <code>0<\/code>, kapal\u0131 de\u011fil, dinamik port talebi anlam\u0131ndad\u0131r. Di\u011fer IP b\u00f6l\u00fcmlerindeki dinamik port de\u011ferlerini de temizleyin.<\/p>\n<p>Microsoft Learn&#8217;\u00fcn ba\u011flant\u0131 \u015fifrelemesi y\u00f6nergesini izleyerek \u00f6zel CA imzal\u0131 sertifikay\u0131, \u00f6zel anahtar\u0131yla <strong>Local Computer \u2192 Personal<\/strong> deposuna y\u00fckleyin. Ge\u00e7erli sertifika <strong>Server Authentication<\/strong> kullan\u0131m\u0131n\u0131 desteklemeli, SAN alan\u0131nda <code>sql01.lab.example.com<\/code> bulunmal\u0131 ve Microsoft&#8217;un belirtti\u011fi anahtar sa\u011flay\u0131c\u0131s\u0131 gereksinimlerini kar\u015f\u0131lamal\u0131d\u0131r. Her iki istemcide CA g\u00fcven zincirini kurun; Active Directory bulunmad\u0131\u011f\u0131ndan sertifika da\u011f\u0131t\u0131m\u0131n\u0131n kendili\u011finden ger\u00e7ekle\u015fmesini beklemeyin.<\/p>\n<p><strong>Manage Private Keys<\/strong> ekran\u0131nda <code>NT SERVICE\\MSSQLSERVER<\/code> hesab\u0131na \u00f6zel anahtar\u0131 okuma izni verin. Configuration Manager&#8217;da protokol \u00f6zelliklerinin <strong>Certificate<\/strong> sekmesinden sertifikay\u0131 se\u00e7ip <strong>Flags \u2192 Force Encryption = Yes<\/strong> ayar\u0131n\u0131 uygulay\u0131n. TCP ve sertifika de\u011fi\u015fiklikleri motor hizmetinin yeniden ba\u015flat\u0131lmas\u0131n\u0131 gerektirir; mevcut ba\u011flant\u0131lar kesilir.<\/p>\n<p>A\u015fa\u011f\u0131daki \u00f6rnek SQL01 \u00fczerinde y\u00f6netici PowerShell oturumu i\u00e7indir. <code>example.com<\/code> ve TEST-NET-1 adresleri dok\u00fcmantasyon de\u011ferleridir; ger\u00e7ek \u00f6zel a\u011f de\u011ferlerinizle de\u011fi\u015ftirin.<\/p>\n<pre><code>New-NetFirewallRule -Name 'SQL01-TCP1433-Clients' `\n  -DisplayName 'SQL01 TCP 1433 approved clients' `\n  -Direction Inbound -Action Allow -Protocol TCP `\n  -LocalAddress 192.0.2.10 -LocalPort 1433 `\n  -RemoteAddress 192.0.2.20,192.0.2.30 `\n  -Profile Any -Enabled True |\n  Format-Table DisplayName, Enabled, Direction, Action\n\nRestart-Service -Name MSSQLSERVER<\/code><\/pre>\n<p>Kural, uygulama adresi <code>192.0.2.20<\/code> ve y\u00f6netim adresi <code>192.0.2.30<\/code> i\u00e7in izin olu\u015fturur. Beklenen tabloda <code>Enabled=True<\/code>, <code>Direction=Inbound<\/code>, <code>Action=Allow<\/code> g\u00f6r\u00fcn\u00fcr; bu \u00e7\u0131kt\u0131 TLS do\u011frulamas\u0131 de\u011fildir. Varsay\u0131lan gelen trafik engellemesini koruyun, mevcut geni\u015f SQL izinlerini kald\u0131r\u0131n. Sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131nda da yaln\u0131zca ayn\u0131 kaynaklardan TCP 1433 eri\u015fimine izin verin; portu genel internete a\u00e7may\u0131n.<\/p>\n<p>Windows 11 \u00fczerindeki SSMS 20.2&#8217;de <code>tcp:sql01.lab.example.com,1433<\/code> adresini, <strong>Encryption=Mandatory<\/strong> ve kapal\u0131 <strong>Trust server certificate<\/strong> se\u00e7ene\u011fini kullan\u0131n. Uygulama ba\u011flant\u0131s\u0131nda da sertifika do\u011frulamas\u0131n\u0131 atlamay\u0131n. Port a\u00e7\u0131k\u00e7a belirtildi\u011fi i\u00e7in SQL Server Browser ke\u015ffine gerek kalmaz; bu laboratuvarda Browser hizmetini devre d\u0131\u015f\u0131 b\u0131rak\u0131n ve UDP 1434 a\u00e7may\u0131n.<\/p>\n<div class=\"aiw-callout aiw-callout-tip\">\n<p class=\"aiw-callout-label\">\u0130pucu<\/p>\n<p>Statik TCP 1433 portuyla do\u011frudan ba\u011flant\u0131 kuruldu\u011funda SQL Server Browser ve UDP 1434 eri\u015fimi gerekmez. sql01.lab.example.com ile 192.0.2.10, 192.0.2.20 ve 192.0.2.30 yaln\u0131zca dok\u00fcmantasyon de\u011ferleridir; bunlar\u0131 ger\u00e7ek \u00f6zel a\u011f adreslerinizle de\u011fi\u015ftirin. Sertifikan\u0131n SAN alan\u0131, istemcinin ba\u011fland\u0131\u011f\u0131 ger\u00e7ek DNS ad\u0131yla e\u015fle\u015fmelidir.<\/p>\n<\/div>\n<h2 id=\"ssms-baglantisini-katman-katman-dogrulama\">SSMS ba\u011flant\u0131s\u0131n\u0131 katman katman do\u011frulama<\/h2>\n<p>SSMS hata penceresi tek ba\u015f\u0131na ar\u0131zan\u0131n yerini s\u00f6ylemez. Katmanlar\u0131 ay\u0131r\u0131n. Varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 SQL01 laboratuvar\u0131nda Windows 11 y\u00f6netim istemcisinden (<code>192.0.2.30<\/code>) \u00f6nce DNS \u00e7\u00f6z\u00fcmlemesini, ard\u0131ndan TCP eri\u015fimini kontrol edin. <code>example.com<\/code> ve TEST-NET-1 adresleri dok\u00fcmantasyon i\u00e7indir; ger\u00e7ek \u00f6zel a\u011f de\u011ferlerinizi kullan\u0131n. Microsoft Learn s\u00fcr\u00fcm belgesine g\u00f6re SQL Server 2022 Developer \u00fcretim kullan\u0131m\u0131na lisans vermez.<\/p>\n<pre><code>Resolve-DnsName -Name sql01.lab.example.com -Type A\nTest-NetConnection -ComputerName sql01.lab.example.com -Port 1433 -InformationLevel Detailed<\/code><\/pre>\n<p>Beklenen DNS adresi <code>192.0.2.10<\/code>, TCP sonucu <code>TcpTestSucceeded : True<\/code> de\u011feridir; bunlar \u00e7al\u0131\u015ft\u0131r\u0131lm\u0131\u015f test \u00e7\u0131kt\u0131lar\u0131 de\u011fildir. Adres farkl\u0131ysa DNS kayd\u0131n\u0131 ve istemcinin \u00e7\u00f6z\u00fcmleyicisini inceleyin. TCP ba\u015far\u0131s\u0131 yaln\u0131zca porta eri\u015fimi g\u00f6sterir &#8211; SQL kimlik do\u011frulamas\u0131n\u0131 veya sertifika ge\u00e7erlili\u011fini kan\u0131tlamaz. Ping yan\u0131t\u0131n\u0131n gelmemesi de TCP ba\u011flant\u0131s\u0131n\u0131n ba\u015far\u0131s\u0131z oldu\u011funu g\u00f6stermez.<\/p>\n<p>SSMS 20.2 ekran\u0131nda hedefi <code>tcp:sql01.lab.example.com,1433<\/code>, <code>Encryption<\/code> ayar\u0131n\u0131 <code>Mandatory<\/code> se\u00e7in; <code>Trust server certificate<\/code> kapal\u0131 kals\u0131n. AD bulunmayan ortamda uzak ba\u011flant\u0131, iste\u011fe ba\u011fl\u0131 karma mod dal\u0131ndaki SQL hesab\u0131yla kurulur; kimlik do\u011frulama t\u00fcr\u00fcn\u00fc <code>SQL Server Authentication<\/code> se\u00e7in. Microsoft Learn \u015fifreleme belgesinin a\u00e7\u0131klad\u0131\u011f\u0131 \u00fczere istemci sertifika zincirine g\u00fcvenmeli, ba\u011flant\u0131daki sunucu ad\u0131 sertifikayla e\u015fle\u015fmelidir.<\/p>\n<p>A\u015fa\u011f\u0131daki <code>Microsoft.Data.SqlClient<\/code> ba\u011flant\u0131 dizgesi parola i\u00e7ermez. Kullan\u0131c\u0131 ad\u0131 ve parolay\u0131 g\u00fcvenli s\u0131r y\u00f6netiminden ayr\u0131ca sa\u011flay\u0131n; \u00f6rnek, kimlik bilgileri olmadan ba\u011flant\u0131 kurmaz.<\/p>\n<pre><code>Server=tcp:sql01.lab.example.com,1433;Database=master;Integrated Security=False;Encrypt=True;TrustServerCertificate=False;<\/code><\/pre>\n<ul>\n<li><strong>Ba\u011flant\u0131 reddi:<\/strong> SQL01 \u00fczerindeki <code>MSSQLSERVER<\/code> hizmetini, TCP\/IP etkinli\u011fini ve TCP 1433 dinleyicisini kontrol edin.<\/li>\n<li><strong>Zaman a\u015f\u0131m\u0131:<\/strong> Y\u00f6nlendirmeyi, VPS a\u011f kurallar\u0131n\u0131 ve Windows Firewall \u00fczerinde <code>192.0.2.30<\/code> kaynakl\u0131 TCP 1433 iznini inceleyin.<\/li>\n<li><strong>Sertifika g\u00fcven hatas\u0131:<\/strong> G\u00fcven zincirini, ge\u00e7erlilik tarihlerini ve FQDN e\u015fle\u015fmesini d\u00fczeltin; do\u011frulamay\u0131 kapatmay\u0131n.<\/li>\n<li><strong>18456:<\/strong> Karma modu, SQL hesab\u0131n\u0131n durumunu, parolas\u0131n\u0131 ve hedef veritaban\u0131na eri\u015fimini inceleyin. Ayr\u0131nt\u0131l\u0131 nedeni ve durum kodunu SQL ERRORLOG \u00fczerinden okuyun.<\/li>\n<\/ul>\n<p>A\u015fa\u011f\u0131daki sorgular mevcut SQL ERRORLOG dosyas\u0131n\u0131 ve ba\u011fl\u0131 oturumun \u015fifreleme durumunu g\u00f6sterir. SQL Server 2022 \u00fczerinde gereken yetkiler s\u0131ras\u0131yla <code>VIEW ANY ERROR LOG<\/code> ve <code>VIEW SERVER PERFORMANCE STATE<\/code> kapsam\u0131ndad\u0131r; uygulama hesab\u0131na te\u015fhis amac\u0131yla geni\u015f yetki vermeyin.<\/p>\n<pre><code>EXEC master.sys.sp_readerrorlog 0, 1;\n\nSELECT session_id, net_transport, encrypt_option, auth_scheme\nFROM sys.dm_exec_connections\nWHERE session_id = @@SPID;<\/code><\/pre>\n<p>Uzak ba\u011flant\u0131 kurulam\u0131yorsa g\u00fcnl\u00fc\u011f\u00fc SQL01 \u00fczerindeki yetkili yerel Windows hesab\u0131yla inceleyin. Hedef uzak oturumda <code>net_transport = TCP<\/code> ve <code>encrypt_option = TRUE<\/code> beklenir; \u015fifreleme de\u011feri tek ba\u015f\u0131na sertifika do\u011frulamas\u0131n\u0131n yap\u0131ld\u0131\u011f\u0131n\u0131 kan\u0131tlamaz. Yerel oturum uzak ba\u011flant\u0131n\u0131n yerine ge\u00e7mez: d\u00fczeltmeden sonra sorguyu y\u00f6netim istemcisindeki SSMS ba\u011flant\u0131s\u0131nda \u00e7al\u0131\u015ft\u0131r\u0131n.<\/p>\n<h2 id=\"ilk-yedek-ancak-geri-yukleme-provasiyla-tamamlanir\">\u0130lk yedek ancak geri y\u00fckleme provas\u0131yla tamamlan\u0131r<\/h2>\n<p>Yedek dosyas\u0131 olu\u015ftu. \u0130\u015f bitmedi. SQL01 \u00fczerindeki varsay\u0131msal, \u00fcretim d\u0131\u015f\u0131 SQL Server 2022 Developer laboratuvar\u0131nda <code>AppDb<\/code> i\u00e7in kabul \u00f6l\u00e7\u00fct\u00fc, ayr\u0131 veritaban\u0131na geri y\u00fckleme ve veri kontrol\u00fcd\u00fcr. A\u015fa\u011f\u0131daki komutlar uygulanm\u0131\u015f test kayd\u0131 de\u011fildir. Microsoft Learn&#8217;\u00fcn s\u00fcr\u00fcm a\u00e7\u0131klamalar\u0131na g\u00f6re Developer \u00fcretim kullan\u0131m\u0131na lisans vermez; \u00fcretimde uygun SQL Server lisans\u0131n\u0131 ayr\u0131ca de\u011ferlendirin.<\/p>\n<p>Microsoft Learn&#8217;\u00fcn yedekleme belgelerinde a\u00e7\u0131kland\u0131\u011f\u0131 \u00fczere, <code>FULL<\/code> kurtarma modeline ge\u00e7i\u015ften sonra log yedekleme zincirini ba\u015flatmak i\u00e7in veri yede\u011fi al\u0131n\u0131r. \u0130lk tam yedek bunu sa\u011flar. Varsay\u0131msal laboratuvar zamanlamas\u0131 <strong>24 saatte bir tam, 15 dakikada bir transaction log yede\u011fidir<\/strong>. Ger\u00e7ek s\u0131kl\u0131\u011f\u0131 kabul edilebilir veri kayb\u0131na g\u00f6re belirleyin. Tam yedek, log yede\u011finin yerine ge\u00e7mez; log yedekleri al\u0131nmazsa g\u00fcnl\u00fck dosyas\u0131 b\u00fcy\u00fcyebilir. Ba\u015fka etkenler de g\u00fcnl\u00fck alan\u0131n\u0131n yeniden kullan\u0131m\u0131n\u0131 engelleyebilir.<\/p>\n<p>Motor hesab\u0131 <code>NT SERVICE\\MSSQLSERVER<\/code> i\u00e7in <code>B:\\SQL\\Backup<\/code> \u00fczerinde yedek olu\u015fturma ve okuma, hedef veri ve g\u00fcnl\u00fck dizinlerinde dosya olu\u015fturma izinlerini do\u011frulay\u0131n. Herkese tam yetki vermeyin. \u00d6rnek, mevcut <code>AppDb<\/code> veritaban\u0131nda yaln\u0131zca bir veri ve bir g\u00fcnl\u00fck dosyas\u0131 bulunmas\u0131n\u0131 gerektirir; mant\u0131ksal adlar\u0131 katalogdan al\u0131r. Hedef dosyalar \u00f6nceden bulunmamal\u0131d\u0131r. De\u011fi\u015fkenlerin kapsam\u0131n\u0131 korumak i\u00e7in blo\u011fu tek seferde \u00e7al\u0131\u015ft\u0131r\u0131n.<\/p>\n<pre><code>USE master;\n\nIF DB_ID(N'AppDb_RestoreTest') IS NOT NULL\n    THROW 50000, N'AppDb_RestoreTest zaten var; i\u015flem durduruldu.', 1;\n\nIF (SELECT COUNT(*) FROM sys.master_files\n    WHERE database_id = DB_ID(N'AppDb')) &lt;&gt; 2\n    THROW 50001, N'Bu \u00f6rnek yaln\u0131zca iki dosyal\u0131 AppDb i\u00e7indir.', 1;\n\nDECLARE @dataLogical sysname, @logLogical sysname;\nSELECT @dataLogical = name\nFROM sys.master_files\nWHERE database_id = DB_ID(N'AppDb') AND type = 0;\nSELECT @logLogical = name\nFROM sys.master_files\nWHERE database_id = DB_ID(N'AppDb') AND type = 1;\n\nIF @dataLogical IS NULL OR @logLogical IS NULL\n    THROW 50002, N'Bir veri ve bir g\u00fcnl\u00fck dosyas\u0131 gerekli.', 1;\n\nALTER DATABASE [AppDb] SET RECOVERY FULL;\n\nDECLARE @id nvarchar(36) = CONVERT(nvarchar(36), NEWID());\nDECLARE @full nvarchar(260) =\n    N'B:\\SQL\\Backup\\AppDb_' + @id + N'_full.bak';\nDECLARE @log nvarchar(260) =\n    N'B:\\SQL\\Backup\\AppDb_' + @id + N'_log.trn';\n\nBACKUP DATABASE [AppDb] TO DISK = @full\nWITH CHECKSUM, STATS = 10;\nBACKUP LOG [AppDb] TO DISK = @log\nWITH CHECKSUM, STATS = 10;\n\nSELECT @full AS FullBackupPath, @log AS LogBackupPath;\nRESTORE VERIFYONLY FROM DISK = @full WITH CHECKSUM;\nRESTORE VERIFYONLY FROM DISK = @log WITH CHECKSUM;\nRESTORE FILELISTONLY FROM DISK = @full;\n\nRESTORE DATABASE [AppDb_RestoreTest]\nFROM DISK = @full\nWITH MOVE @dataLogical TO N'D:\\SQL\\Data\\AppDb_RestoreTest.mdf',\n     MOVE @logLogical TO N'L:\\SQL\\Log\\AppDb_RestoreTest_log.ldf',\n     NORECOVERY, CHECKSUM, STATS = 10;\n\nRESTORE LOG [AppDb_RestoreTest]\nFROM DISK = @log\nWITH RECOVERY, CHECKSUM, STATS = 10;\n\nDBCC CHECKDB (N'AppDb_RestoreTest') WITH NO_INFOMSGS;\nSELECT name, state_desc\nFROM sys.databases\nWHERE name = N'AppDb_RestoreTest';<\/code><\/pre>\n<p>Benzersiz adlar mevcut yedeklerin \u00fczerine yaz\u0131lmas\u0131n\u0131 \u00f6nler. <code>FILELISTONLY<\/code> dosya listesini g\u00f6sterir; <code>MOVE<\/code> hedef yollar\u0131 de\u011fi\u015ftirir. Tam yedek <code>NORECOVERY<\/code> ile bekletilir, log yede\u011fi uygulan\u0131nca <code>RECOVERY<\/code> veritaban\u0131n\u0131 a\u00e7ar. Beklenen durum <code>ONLINE<\/code>, <code>CHECKDB<\/code> \u00e7\u0131kt\u0131s\u0131nda ise tutarl\u0131l\u0131k hatas\u0131 bulunmamas\u0131d\u0131r. Microsoft Learn&#8217;\u00fcn belirtti\u011fi gibi <code>RESTORE VERIFYONLY<\/code> ger\u00e7ek geri y\u00fcklemenin yerine ge\u00e7mez. <code>CHECKSUM<\/code> da uygulama verisinin do\u011frulu\u011funu kan\u0131tlamaz; kritik tablolar\u0131 ve uygulama okumalar\u0131n\u0131 ayr\u0131ca do\u011frulay\u0131n.<\/p>\n<p>SQL Server Agent hizmetinin otomatik ba\u015flamas\u0131n\u0131 ayarlay\u0131n. Tam ve log yedekleri i\u00e7in ayr\u0131 zamanlanm\u0131\u015f g\u00f6revler olu\u015fturun; prova komutlar\u0131n\u0131 bu g\u00f6revlere eklemeyin. Ba\u015far\u0131s\u0131zl\u0131klarda Database Mail \u00fczerinden operat\u00f6r bildirimi yap\u0131land\u0131r\u0131p bildirim ula\u015fmas\u0131n\u0131 do\u011frulay\u0131n. Agent&#8217;\u0131n durmas\u0131n\u0131 ve son ba\u015far\u0131l\u0131 yede\u011fin gecikmesini ba\u011f\u0131ms\u0131z izleyin. \u00d6rnekteki anl\u0131k log yede\u011fi zamanlama olu\u015fturmaz.<\/p>\n<p>Yerel <code>B:<\/code> sunucu kayb\u0131na kar\u015f\u0131 korumaz. <a href=\"https:\/\/www.vps.tc\/blog\/tr\/windows-server-yedekleme-nasil-yapilir\/\">Windows Server Yedekleme Nas\u0131l Yap\u0131l\u0131r?<\/a> i\u00e7eri\u011findeki sunucu d\u00fczeyi plan\u0131 SQL yedekleriyle birlikte de\u011ferlendirin. Son operasyon ad\u0131m\u0131, eri\u015fimi s\u0131n\u0131rland\u0131r\u0131lm\u0131\u015f sunucu d\u0131\u015f\u0131 kopya olu\u015fturmak ve bu kopyadan zamanlanm\u0131\u015f geri d\u00f6n\u00fc\u015f provas\u0131 yapmakt\u0131r.<\/p>\n<div class=\"aiw-callout aiw-callout-example\">\n<p class=\"aiw-callout-label\">\u00d6rnek<\/p>\n<p>Varsay\u0131msal AppDb plan\u0131nda 24 saatte bir tam, 15 dakikada bir transaction log yede\u011fi al\u0131n\u0131r; bu aral\u0131klar her i\u015f y\u00fck\u00fc i\u00e7in haz\u0131r re\u00e7ete de\u011fildir. RESTORE VERIFYONLY, AppDb_RestoreTest veritaban\u0131na ger\u00e7ek geri y\u00fcklemenin yerine ge\u00e7mez. B:\\SQL\\Backup \u00fczerindeki kopyalar\u0131 sunucu d\u0131\u015f\u0131na da ta\u015f\u0131y\u0131n; ayr\u0131 s\u00fcr\u00fcc\u00fc harfi, sunucu kayb\u0131na kar\u015f\u0131 koruma sa\u011flamaz.<\/p>\n<\/div>\n<h2 id=\"uygulamayi-baglamadan-once-kontrol-edin\">Uygulamay\u0131 Ba\u011flamadan \u00d6nce Kontrol Edin<\/h2>\n<ul class=\"aiw-checklist\">\n<li>Windows Server deste\u011fini, lisans\u0131, bekleyen yeniden ba\u015flatmalar\u0131, sistem yede\u011fini ve sa\u011flay\u0131c\u0131 konsoluna eri\u015fimi do\u011frulay\u0131n.<\/li>\n<li>D:\\SQL\\Data, L:\\SQL\\Log, T:\\SQL\\TempDB ve B:\\SQL\\Backup NTFS dizinlerini haz\u0131rlay\u0131n; hizmet hesab\u0131n\u0131n gerekli izinlerini kontrol edin.<\/li>\n<li>Resm\u00ee SQL Server 2022 medyas\u0131n\u0131 kullan\u0131n; onaylanm\u0131\u015f CU paketinin g\u00fcncel s\u00fcr\u00fcm\u00fcn\u00fc do\u011frulay\u0131p kurulum sonras\u0131nda SERVERPROPERTY ile tam derlemeyi kaydedin.<\/li>\n<li>Yetkili yerel Windows hesab\u0131n\u0131 SQL y\u00f6neticisi olarak ekleyin; uygulama hesab\u0131ndan sa, sysadmin ve db_owner kullan\u0131m\u0131n\u0131 \u00e7\u0131kar\u0131n.<\/li>\n<li>4096 MB bellek ba\u015flang\u0131\u00e7 ayar\u0131n\u0131, sabit MB dosya b\u00fcy\u00fcmelerini ve e\u015fit boyutlu d\u00f6rt tempdb veri dosyas\u0131n\u0131 i\u015f y\u00fck\u00fc \u00f6l\u00e7\u00fcmleriyle de\u011ferlendirin.<\/li>\n<li>TCP 1433 eri\u015fimini iki g\u00fcvenlik duvar\u0131 katman\u0131nda s\u0131n\u0131rland\u0131r\u0131n; DNS, Test-NetConnection ve SSMS sertifika do\u011frulamas\u0131n\u0131 ayr\u0131 ayr\u0131 kontrol edin.<\/li>\n<li>FULL kurtarma modelinde ilk tam yede\u011fi ve log yedekleme g\u00f6revlerini olu\u015fturun; hata bildirimlerini, sunucu d\u0131\u015f\u0131 kopyay\u0131 ve ayr\u0131 veritaban\u0131na geri y\u00fcklemeyi do\u011frulay\u0131n.<\/li>\n<\/ul>\n<div class=\"aiw-cta\">\n<p>Uygulama ba\u011flant\u0131s\u0131n\u0131 a\u00e7madan \u00f6nce AppDb yede\u011fini ayr\u0131 AppDb_RestoreTest veritaban\u0131na geri y\u00fckleyin. Geri d\u00f6n\u00fc\u015f s\u00fcresini kaydedin ve bu s\u00fcrenin hizmet hedefinize uydu\u011funu do\u011frulay\u0131n.<\/p>\n<p class=\"aiw-cta-action\"><a href=\"https:\/\/www.vps.tc\/tr\/vps\">VPS paketlerini inceleyin<\/a><\/p>\n<\/div>\n<h2 id=\"sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/h2>\n<div class=\"aiw-faq\">\n<details class=\"aiw-faq-item\" open>\n<summary>SQL Server 2022 Developer, Windows VPS \u00fczerinde \u00fccretsiz kullan\u0131labilir mi?<\/summary>\n<p>SQL Server 2022 Developer, geli\u015ftirme ve test amac\u0131yla \u00fccretsiz kullan\u0131labilir; \u00fcretim veritaban\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rma hakk\u0131 vermez. Windows VPS kullanman\u0131z bu lisans ko\u015fulunu de\u011fi\u015ftirmez. \u00dcretim i\u00e7in uygun ticari lisans\u0131 veya kaynak ve \u00f6zellik s\u0131n\u0131rlar\u0131 uygulaman\u0131za uyan Express s\u00fcr\u00fcm\u00fcn\u00fc de\u011ferlendirin. Windows Server lisans\u0131n\u0131 da SQL Server lisans\u0131ndan ayr\u0131 kontrol edin.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>SQL Server kurulumu i\u00e7in 4 vCPU ve 8 GB RAM yeterli mi?<\/summary>\n<p>4 vCPU ve 8 GB RAM, bu \u00fcretim d\u0131\u015f\u0131 laboratuvar\u0131n ba\u015flang\u0131\u00e7 kapasitesidir; uygulaman\u0131z i\u00e7in performans garantisi de\u011fildir. Veri hacmi, e\u015fzamanl\u0131 sorgular ve disk gecikmesi ihtiyac\u0131 de\u011fi\u015ftirir. \u00d6rnekte max server memory 4096 MB ile ba\u015flat\u0131l\u0131r, ancak bu ayar SQL Server s\u00fcrecinin t\u00fcm bellek t\u00fcketimine mutlak s\u0131n\u0131r koymaz. \u00d6l\u00e7\u00fcm yaparak kapasiteyi g\u00fcncelleyin.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>Windows kimlik do\u011frulamas\u0131 ile karma mod aras\u0131ndaki fark nedir?<\/summary>\n<p>Windows kimlik do\u011frulamas\u0131 Windows hesaplar\u0131n\u0131 kullan\u0131r; karma mod buna SQL Server kullan\u0131c\u0131 ad\u0131 ve parolas\u0131yla oturum a\u00e7may\u0131 ekler. Active Directory bulunmayan \u00f6rnekte, uzaktaki Windows hesab\u0131 kendili\u011finden g\u00fcvenilir kabul edilmez. SQL kimlik do\u011frulamas\u0131 gerekiyorsa karma modu etkinle\u015ftirip motor hizmetini yeniden ba\u015flat\u0131n. Uygulama i\u00e7in ayr\u0131 hesap ve dar kapsaml\u0131 izinler tan\u0131mlay\u0131n; sa kullanmay\u0131n.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>SQL Server&#039;a uzaktan ba\u011flanmak i\u00e7in hangi portlar a\u00e7\u0131lmal\u0131?<\/summary>\n<p>Bu \u00f6rnekte Database Engine i\u00e7in statik TCP 1433 kullan\u0131l\u0131r. Windows Firewall ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131nda yaln\u0131zca uygulama ile y\u00f6netim istemcisinin ger\u00e7ek \u00f6zel IP adreslerine izin verin. Portu genel internete a\u00e7may\u0131n. \u0130stemci hedefi sunucu ad\u0131 ve portla belirtti\u011finde SQL Server Browser \u00fczerinden ke\u015fif gerekmez; bu ba\u011flant\u0131 yolu i\u00e7in UDP 1434 a\u00e7man\u0131z gerekmez.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>SSMS ba\u011flant\u0131s\u0131nda sertifika hatas\u0131 veya 18456 hatas\u0131 nas\u0131l ayr\u0131l\u0131r?<\/summary>\n<p>\u00d6nce DNS \u00e7\u00f6z\u00fcmlemesini, ard\u0131ndan Test-NetConnection ile TCP 1433 eri\u015fimini do\u011frulay\u0131n. SSMS 20.2 \u00fczerinde Encryption=Mandatory se\u00e7in ve Trust server certificate se\u00e7ene\u011fini kapal\u0131 tutun. Sertifika hatas\u0131nda g\u00fcven zincirini, ge\u00e7erlilik s\u00fcresini ve SAN ad\u0131n\u0131 kontrol edin. 18456 ise oturum a\u00e7ma hatas\u0131d\u0131r; ayr\u0131nt\u0131l\u0131 nedeni SQL ERRORLOG i\u00e7indeki durum koduyla inceleyin. Sertifika denetimini kapatmak kal\u0131c\u0131 \u00e7\u00f6z\u00fcm de\u011fildir.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>\u0130lk tam yedekten sonra transaction log yede\u011fi almak gerekir mi?<\/summary>\n<p>FULL kurtarma modelinde ilk tam yedekten sonra d\u00fczenli transaction log yedekleri planlanmal\u0131d\u0131r; yaln\u0131zca tam yedek almak g\u00fcnl\u00fck dosyas\u0131n\u0131n yeniden kullan\u0131m ihtiyac\u0131n\u0131 kar\u015f\u0131lamaz. Varsay\u0131msal laboratuvarda tam yedek aral\u0131\u011f\u0131 24 saat, log yede\u011fi aral\u0131\u011f\u0131 15 dakikad\u0131r. Aral\u0131klar\u0131 kabul edilebilir veri kayb\u0131na g\u00f6re belirleyin. Sunucu d\u0131\u015f\u0131 kopya tutun ve RESTORE VERIFYONLY yerine ger\u00e7ek geri y\u00fckleme provas\u0131 da yap\u0131n.<\/p>\n<\/details>\n<\/div>\n<h2 id=\"kaynaklar\">Kaynaklar<\/h2>\n<ul class=\"aiw-sources\">\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/sql-server\/install\/hardware-and-software-requirements-for-installing-sql-server-2022?view=sql-server-ver16\" target=\"_blank\" rel=\"noopener\">Microsoft Learn &#8211; SQL Server 2022 donan\u0131m ve yaz\u0131l\u0131m gereksinimleri<\/a> \u2014 learn.microsoft.com<\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/sql-server\/editions-and-components-of-sql-server-2022?view=sql-server-ver16\" target=\"_blank\" rel=\"noopener\">Microsoft Learn &#8211; SQL Server 2022 s\u00fcr\u00fcmleri ve desteklenen \u00f6zellikler<\/a> \u2014 learn.microsoft.com<\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/database-engine\/configure-windows\/configure-sql-server-encryption?view=sql-server-ver16\" target=\"_blank\" rel=\"noopener\">Microsoft Learn &#8211; SQL Server ba\u011flant\u0131 \u015fifrelemesini yap\u0131land\u0131rma<\/a> \u2014 learn.microsoft.com<\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/\" target=\"_blank\" rel=\"noopener\">Microsoft Learn &#8211; SQL Server veritabanlar\u0131n\u0131 yedekleme ve geri y\u00fckleme<\/a> \u2014 learn.microsoft.com<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Kurulum sihirbaz\u0131n\u0131n tamamlanmas\u0131, veritaban\u0131n\u0131n kullan\u0131ma haz\u0131r oldu\u011fu anlam\u0131na gelmez. Windows Server 2022 \u00fczerindeki varsay\u0131msal SQL Server 2022 laboratuvar\u0131; kimlik do\u011frulama, bellek, TLS, s\u0131n\u0131rl\u0131 a\u011f eri\u015fimi ve geri y\u00fckleme provas\u0131 \u00fczerinden ilerler.<\/p>\n","protected":false},"author":2,"featured_media":1149,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[784],"tags":[],"class_list":["post-1151","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-windows"],"lang":"tr","translations":{"tr":1151,"en":1152},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/comments?post=1151"}],"version-history":[{"count":1,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1151\/revisions"}],"predecessor-version":[{"id":1153,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1151\/revisions\/1153"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media\/1149"}],"wp:attachment":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media?parent=1151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/categories?post=1151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/tags?post=1151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}