Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Eski SQL Server'ları Okumak: 2016'dan 2025'e Motor Evrimi ve Compatibility Level Yükseltme Stratejisi
Motor sürümü ile compatibility level ayrı şeylerdir: SQL Server 2025 üzerinde 130 seviyesinde çalışan bir veritabanında table variable hâlâ 1 satır, MSTVF 100 satır tahmin edilir, scalar UDF 8.916 kez çağrılır ve REGEXP_LIKE tanınmaz. 2016'dan 2025'e özellik tablosu, Microsoft Lifecycle tarihleri ve motoru eski seviyede yükselt, Query Store'la topla, seviyeyi artır, regresyonda planı zorla akışının gerçek bir denemesi.
SQL Server 2025 Optimized Locking: TID Locking, Lock After Qualification ve Davranış Değişiklikleri
Optimized locking açıldığında 1.000 satırı güncelleyen transaction 1.017 lock yerine tek bir XACT lock tutar ve escalation olmaz; RCSI de açıksa LAQ, UPDATE'in predicate'ini son commit edilmiş versiyonda lock almadan değerlendirir, blocking kalkar ama bazı eşzamanlı işlerin sonucu değişebilir. ADR ön koşulu, yeni LCK_M_S_XACT wait'leri, LAQ'ı kapatan hint'ler, deadlock graph'taki xactlock ve 2019/2022 farkı gerçek ölçümlerle.
SQL Server 2025 ile T-SQL'e Gelenler: REGEXP Function'ları, Native JSON Tipi, || Operatörü, PRODUCT ve CURRENT_DATE
SQL Server 2025, RE2 tabanlı REGEXP_LIKE/REPLACE/SUBSTR/INSTR/COUNT/MATCHES/SPLIT_TO_TABLE, native json tipi, JSON_ARRAYAGG/JSON_OBJECTAGG, || operatörü, PRODUCT, CURRENT_DATE, UNISTR ve BASE64 getirdi. Regex'in collation'ı yok saymasını, sabit önekli pattern'in index seek'ini, preview fuzzy function'ları ve REGEXP_LIKE'ın compatibility level 170 gereksinimini gerçek çıktılarla gösteriyoruz.
SQL Lab'ı: SQL Server 2025'i Docker'da Çalıştırmak, VS Code MSSQL Eklentisi ve Bookstore Örnek Veritabanı
SQL Server 2025'i mcr.microsoft.com/mssql/server:2025-latest image'ıyla, parolayı environment variable'da tutarak ve volume ile Docker'da çalıştırıyor; sqlcmd, VS Code mssql eklentisi ve SSMS 22 ile bağlanıyor, seri boyunca kullanacağımız 10 table'lık Bookstore veritabanını yüklüyoruz. Edition seçimi, Apple Silicon'da Rosetta emülasyonu ve TrustServerCertificate'in yalnız lab için olduğu da işleniyor.