Sayfalar

17 Nisan 2026 Cuma

SQL Server 2025 ile gelen Yeni Özellikler-GitHub Copilot

 SQL  Server 2025  ile birlikte, vector search,yapay zeka desteği ve GitHub Copilot özellikleri eklenerek  nihai sürüm yayınlanmıştır.Bu özelliklerden faydalanmak için SMSS 22 numaralı  versiyonu veya en yeni SMSS sürümünü yüklemek gerekmektedir.Aşağıda ki linkte SMSS yüklemesi ile ilgili kısa bir bilgi bulunmaktadır;


Bilgi Teknolojileri Günlüğü: SQL Server 2025 Yüklemesinde Seçilen Türkçe Dili Değiştirmek



şu anda 22.5 numaralı versiyon mevcuttur.SQL Server 22.5 SMSS ekranını açtıgımızda aşağıda ki yolu izleyip GitHub Copilot Chat menusune login olarak copilot açılabilir.


SMSS-View-GitHub Copilot Chat

Bu seçenek seçilerek SMSS ekranımızın sağ tarafında GitHub Copilot Chat bölümü açılacaktır.Bu bölümde chat kısmına ben aşağıda ki gibi doğal dil ile 

"içinde satış tablosu olan bir veritabanı yaratıp 4 adet kayıt eklermisin?"

olarak basit bir prompt komutu oluşturdum.Bu ekranda ayrıca yapay zeka modeli de seçerek(GPD4.0-GPT4.1) prompt oluşturabiliriz.Sonuçta aşağıdaki ekrandaki çıktı oluşacaktır;




Bu ekranın sağ üst köşesinde Apply tıklanıp sol tarafta kı Db yönetim ekranında SalesDb adlı Veritabanı otomatik oluşturulmuş olacaktır.



9 Şubat 2026 Pazartesi

Netsis Demirbaş Programında Alınan TBLRAPORTASLAK Forein Key Hatası İle Silinememe Sorunu

 Netsis Sabit Kıymet programında gerçek şirkette direk değişiklik yapmamak için yedek şirket açmaktayız. Fazla açılan şirketler belirli bir süre sonra disk üzerinde yer kaplamakta ve kullanılmayan şirketi bu açıdan  silmemiz gerekiyor. Eğer şirket silerken Foreignkey TBLRAPORTASLAK hatası alırsanız,DEM6 veritabanında ki ilgili tablodan test şirketlerinin kaydını silip, sonra Netsis Sabit Kıymet programında şirket silme işlemini yapmamız gerekmekte.



DELETE FROM TBLRAPORTASLAK

WHERE SIRKET_KODU IN('2024ENF',

'2024ENF2',

'2024ENF3',

'2024ENF4')

27 Kasım 2025 Perşembe

SQL Server 2025 Yüklemesinde Seçilen Türkçe Dili Değiştirmek

 Bu hafta içinde yayınlanan SQL Server 2025 Enterprise sürümünü yükledikten sonra SQL Server Management Studio'yu yüklerken Türkçe dil seçeneğini kullanarak yükledim(Fazıl Hüsnü Dağlarca'nın sevdiğim bir dizesinde "Türkçem Benim Ses bayrağım" ve Nazım Hikmet Ran “Konuştuğum dil kadar, Türkçem kadar güzelsin” Demiş)


SMSS 22 İndirme linki aşağıdadır;


Install SQL Server Management Studio | Microsoft Learn


Yükleme esnasında yeni SQL Server sürümünün menülerini karıştırırken  alışık olduğumuz teknik menülerin aşağıda ki gibi Türkçe ile değiştiğini gördüm ama bu yıllardır alışmış olduğumuz  menülerde yabancılık çekmeme neden oldu




Bu menüleri tekrar İngilizce yani Alıştıgımız kavramlara çekmek için yukarıda ki linkten indirdiğimiz  vs_SSMS.exe  programını yeniden çalıştırıp aşağıda ki gibi gelen ekranda İngilizce seçeneğini seçip yeniden yapılandırma değişikliği yapmamız gerekmektedir;





Yükleme bittikten sonra SMSS 22 programını yeniden başlattığımızda Menü yine eskisi gibi olacaktır;
















16 Ekim 2025 Perşembe

MS Office 365 Spam Nedeni İle Engellenen Mail Adresi

 Şirket içinde kullandıgımız SMTP sunucu'yu kullanarak smtp.office365.com  adresine Erp IK sisteminde bordro ile ilgili mailler iletirken,spam nedeniyle Office 365 sistemi tarafından engellenen yerel mail adresimizi,yeniden engelleme listesinden çıkarmak için şu yolu izledik;


Kısıtlanmış varlıklar - Microsoft Defender


yukarıda ki adreste oturum açıp,restricted entities (kısıtlanmış varlıklar) bölümüne geçiş yaparak,burada aşağıda da görüldüğü gibi engelli adresi seçerek,unblock seçeneğini seçmemiz gerekmektedir.Bu işlemlerin ardından yaklaşık 1 saat süresinden sonra mail adresinde ki gönderim engeli kaldırılacaktır.




15 Ağustos 2025 Cuma

SQL Server 2019 CU32 GDR Microsoft Update ile Yüklenebilir Durumdadır.

 

Microsoft SQL Server 2019 (RTM-CU32-GDR) (KB5063757)  düzeltmesi eğer Windows Server güncelleştirme ayarlarında Diğer Microsoft Ürünleri Güncelleştirmelerini al seçeneği seçili ise yüklenebilmektedir.

Yükleme ardından;

SELECT @@VERSION  


komutu  ile aşağıda ki sürüm özelliğini görebiliriz; 


Microsoft SQL Server 2019 (RTM-CU32-GDR) (KB5063757) - 15.0.4440.1 (X64)   Jul 14 2025 12:59:40   Copyright (C) 2019 Microsoft Corporation  

21 Temmuz 2025 Pazartesi

Cluster Yapılı Watchguard Firewall Cihazında Değişen Güç Yönetimi Menüsü

 Yakın bir zamanda geçiş yaptıgımız Cluster yapılı Watchguard Firewall sisteminde ihtiyaç üzerine,yeniden başlatmak istediğimde,cluster yapısına geçi yapmadan önce bu işlemi gerçekleştirdiğim,Firebox System Manager-File-Reboot/Shutdown menüsüne gittiğimde ilgili seçeneklerin aktif olmadıgını gördüm.Yaptıgım araştırma sonucunda,ilgili seçeneklerin Tools-Cluster menüsü altına alındıgını gördüm.Burada örneğin;reboot seçeneğini seçtiğimizde karşımıza hangi yapıyı yeniden başlatacağımıza dair bir seçenek gelecektir;



Yukarıda ki seçenekten Master veya slave yapı seçilerek işlem yapılabilir.


5 Mayıs 2025 Pazartesi

SQL Sunucu Veritabanlarını T-SQL Komutları ile Single veya Multi User Moduna Almak

 SQL Server  2012 sürümünden önce veritabanlarında DBCC işlemlerini yapmadan önce,veritabanımızı single mode durumuna aşağıda ki kod ile almaktaydık:

 

EXEC sp_dboption 'Database', 'single user', 'TRUE'

 

Zannederim ki SQL Server 2012 sürümü ile birlikte bu söz dizimi değişti ve veritabanlarımızı aşağıda ki şekilde  single mode'a almaya başladık;

 

ALTER DATABASE DATABASE

SET SINGLE_USER

 

 

Yukarıda ki kod ile veritabanımızı single mode'a alıp, DBCC işlemlerimizi bitirince aşağıda ki kod ile veritabanımızı tekrar  MULTI_USER mode'a alabiliriz.



ALTER DATABASE DATABASE

SET MULTI_USER

 Eğer benim gibi belirli aralıklarla DBCC işlemlerine ihtiyaç duyarsanız,unutmamak için bu komutları not almakta fayda oldugu görüşündeyim.







29 Nisan 2025 Salı

Logo Netsis Veri Tabanı Kontrol Paneli ve İndexleme

 Kurumsal Kaynak Planlama(ERP) programlarında verilerin saklandıgı veri tabanlarında hareket sıklıgı nedeni ile İndexler parçalanmakta ve bu durum hareketlerde gecikmelere,performans sorunlarına neden olmaktadır.Bizim özelimiz de finansal verilerden ziyade, üretim ve depolar arası transfer,sevkiyat hareketlerinde ve bu hareketlerin  tutuldugu bağlı tablolarda sıklıkla sorun oluşturmakta.Normalde böyle durumlarda SQL SSMS yardımı ile T-SQL komutları,GUI tabanlı veya zamanlanmış görevleri kullanarak index bakımı planlamaktaydık.Logo Netsis 9.0.51.0 versiyonu ile programa Veri Tabanı Kontrol Paneli  eklenmiş olup,bundan böyle bu ekranı kullanarakta  indexleme yapabileceğiz.Normalde bu menünün altında aşağıda ki işlemleri yapmamızı sağlayan seçenekler bulunmaktaydı:


  • Genel Bilgiler(Veri Tabanı Sunucusu versiyonu,mdf-ldf dosyaları,ram,disk bilgileri)
  • Tablo Bilgileri(Veritabanı içinde ki tablolarda ki kayıt sayısı)
  • İndex Bilgileri(Bu yazının konusu buna odaklanmış olup burada index parçalanma durumlarını görüp index ve statistic update işlemleri buradan yapıabilmekte)
  • Şema/Nesne Farkları
  • Performans Testi
Yukarıda ki seçeneklere ek olarak son versiyonda kilitlenen işlemler diye yeni bir sekme güncellemesi yapılmış(Sanırım Deadlock gibi durumlar için).Bizim yazımızın konusu İndexleme oldugu için Logo Netsis  Veri Tabanı Kontrol Paneli  özelinde İndexleme ile ilgili çalışma yapacagız.Öncelikle arama bölümüne veya Genel/Yardımcı Programlar/Raporlar/Veri Tabanı Kontrol Paneli  giderek,Veri Tabanı Kontrol Panelinde indexleme bölümüne gelip,Fragmentation bölümünü büyükten küçüge göre sıralamamız gerekmektedir.









Yukarıda en yüksek parçalanma oranı %80 oldugu için,sınır değeri olarak %85 belirleyerek İstatistic güncellemesi yapılsın seçeneğini işaretliyorum.Bundan sonra  seçilen tablolara bağlı indexler yeniden düzenlecek olup,işlemi profiler ile takip ettiğimizde işlemin aşağıda ki sırada  devam ettiğini göreceğiz:








/*SELECT */
EXEC NSP_INDEXMAINTANCE '_TBLCARISKTOP',85;
 END



Ardından istatistik update seçeneği de seçildiği için,son profiler çıktımız aşağıda ki gibi olacaktır;

/*SELECT */
EXEC SP_UPDATESTATS;
 END


Son olarak işlemin ardından aşağıda görüldüğü gibi parçalanma oranlarının düştüğünü göreceğiz;








Logo Netsis bunlara ek olarak isteğe bağlı olarak,İndexleme'yi zamanlanmış olarakta yaptırabilmektedir.




27 Şubat 2025 Perşembe

Bir Garip Netsis Güncelleme Sorunu

 Geçtiğimiz hafta sonu Netsis programını 9.0.61.2 versiyonuna yükseltip, db update işlemlerini tamamlayıp,programlara giriş yaparken license security lisans bilgisi okuma-hatası sorunu ile karşılaştım.İşin ilginci Netsis servisleri normal çalışıyor,SSO servisi de güncellenmiş ve servisi çalışıyor olmasına ragmen SSO'ya giriş yapılamıyordu.Netsis desteği aldıgımız iş ortagımız ile görüşmemiz sırasında sorunun Windows server 2016 işletim sistemlerinde görülebildiği ve ENTERPRISE9\Kurulum\Utilities altında ki MDAC.exe ve Microsoft OLE DB Driver for MSSQL.msi kurulumlarının yapılmasının ardından sorunun çözüldüğünü gördük.

17 Şubat 2025 Pazartesi

SQL Server Transaction ve İş Durumlarını Gösteren Sorgu

 

SELECT tst.session_id, [database_name] = db_name(s.database_id)

    , tat.transaction_begin_time

    , transaction_duration_s = datediff(s, tat.transaction_begin_time, sysdatetime())

    , transaction_type = CASE tat.transaction_type  WHEN 1 THEN 'Read/write transaction'

        WHEN 2 THEN 'Read-only transaction'

        WHEN 3 THEN 'System transaction'

        WHEN 4 THEN 'Distributed transaction' END

    , input_buffer = ib.event_info, tat.transaction_uow    

    , transaction_state  = CASE tat.transaction_state   

        WHEN 0 THEN 'The transaction has not been completely initialized yet.'

        WHEN 1 THEN 'The transaction has been initialized but has not started.'

        WHEN 2 THEN 'The transaction is active - has not been committed or rolled back.'

        WHEN 3 THEN 'The transaction has ended. This is used for read-only transactions.'

        WHEN 4 THEN 'The commit process has been initiated on the distributed transaction.'

        WHEN 5 THEN 'The transaction is in a prepared state and waiting resolution.'

        WHEN 6 THEN 'The transaction has been committed.'

        WHEN 7 THEN 'The transaction is being rolled back.'

        WHEN 8 THEN 'The transaction has been rolled back.' END

    , transaction_name = tat.name, request_status = r.status

    , tst.is_user_transaction, tst.is_local

    , session_open_transaction_count = tst.open_transaction_count 

    , s.host_name, s.program_name, s.client_interface_name, s.login_name, s.is_user_process

FROM sys.dm_tran_active_transactions tat

INNER JOIN sys.dm_tran_session_transactions tst  on tat.transaction_id = tst.transaction_id

INNER JOIN Sys.dm_exec_sessions s on s.session_id = tst.session_id

LEFT OUTER JOIN sys.dm_exec_requests r on r.session_id = s.session_id

CROSS APPLY sys.dm_exec_input_buffer(s.session_id, null) AS ib

ORDER BY tat.transaction_begin_time DESC;

4 Şubat 2025 Salı

Yerel Yönetici Hesabı Gerektirmeden Program Çalıştırmada Oluşan 740 Kodlu Hata

 Bazı programlar yerel yönetici grubuna üyelik gerektirdiğinden runas komutu ile yönetici grubuna uye yapmadan programları çalıştırabilmekteyiz.Son zamanlarda Windows 11 Professional sistemlerde  run as komutu ayarlaması yaparken 740:istenen işlem yükseltme gerekiyor hatası vermekteydi.Sorunun çözümü için DC üzerinde Grop Policy ile veya yerel makinede aşağıda ki  policy ayarlarından User Account Control: Admin Approval Mode for built in Administrator account  ayarı disable edilmelidir.





windows settings / security settings / local policies / security options / User Account Control: Admin Approval Mode for built in Administrator account

12 Ocak 2025 Pazar

SQL Sunucumuzu Azure Ortamına Geçirmeden Önce Uyumluluk Denetimi

 Yerel'de kullandıgımız SQL Sunucumuzu Azure SQL ortamına geçirmeden önce,Yükseltme asistanı çalıştırmamız önerilmekte olup,bu araç olası htaları ve uyumsuzlukları ortaya çıkaracaktır.Aşağıdaki Power Shell komutları ile aracı çalıştırıp bilgi alabiliriz:

DMA aracı

microsoft.com/en-us/download/details.aspx?id=53595



GUI Komutu

Get-AzDataMigrationAssessment -ConnectionString

"Data Source=localhost;Initial Catalog=AdventureWorks;Integrated Security=True" -OutputFolder C:\Output -Overwrite


CLI Komutu

az datamigration get-assessment --connection-string

"Data Source=localhost;Initial Catalog=AdventureWorks;Integrated Security=True" --output-folder "C:\Output" --overwrite

12 Aralık 2024 Perşembe

Active Directory'de Devre Dışı Bırakılmış(Disable) Hesapları Bulma


 Kurumsal Active Directory  Domain ortamlarında işten çıkan kullanıcıların belirli bir süre kurallar gereği hesaplarını silmemek ve şifrelerini değiştirerek devre dışı bırakmak gerekmektedir,yoğun kullanıcısı olan ortamlarda bu tarz hesapları bulmak için  AD Query bölümünde power shell scripti bulunmaktadır.Bunun aktif hale gelmesi için Active Directory Users and Computers'i açıp,saved querys bölümü üzerinde sağ click yaparak,define query kısmına gelip burada ki açılır menü'den,custom search ve Advanced bölümüne girerek Enter LDAP Query alanına aşağıda bulunan script'i ekleyip kaydetmeliyiz:


 (&(objectCategory=person)(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=2))


Ardından  Active Directory Disable(bu ismi verdik) alanına baktıgımızda devre dışı kullanıcıları görebileceğiz.

3 Aralık 2024 Salı

SQL Server Invalid Urn Filter Hatası

Grubumuzun farklı bir firmasında ki  SQL Sunucusunda düşük yetkili yeni bir kullanıcı oluşturup, datareader yetkisiyle kaydederken aşağıda ki hatayı almaktaydık:


 



Bizde süregelen hatanın sebebi yaptığımız araştırmada host adı ile server adı farklılığından kaynaklanmakta idi bu farklılıgı aşağıda ki kod ile bulabilirsiniz;

   select host_name()  

select @@servername  

Yukarıda ki kodu çalıştırınca adlar farklı ise aşağıda ki kodda drop server'a varolan SQL sunucu adını yazıp öncelikle silmek gerekecek,ardından addserver alanına ise Server host adını yazıp Server host adı ve SQL Server adı eşitlenecek ve  sorun çözülmüş olacaktır.

EXEC sp_dropserver '<old_name>';    
GO    
EXEC sp_addserver '<new_name>', local;    
GO  

22 Kasım 2024 Cuma

Eski Cihazlara Yeni Tarayıcılarla Erişim Sorunu Çözümü

 

Eski cihazlara erişip ayar yapmak istenildiğinde TLS ve sertifikası alıyor isek çözüm için firefox tarayıcısı yüklenip,aşağıda ki ayarlar yapılmadır.


  1. Firefox'u indirilerek ve yüklenecek.
  2. üstte adres alanına"about:config" yazılıp  "Riski Kabul Et ve Devam Et" seçilecek
  3. "security.tls.version.min" öğesini bulunarak ve kalem simgesi seçilecek
  4. düzenlemede "1" olarak ayarlanacak ve onay işaretine tıklanacak
  5. Firefox kapatılıp/yeniden açılacak ve cihaza erişim tekrar denenecektir.

5 Kasım 2024 Salı

Netsis Kayıtlı Raporu Aç Bölümünden Silinen Raporların Geri Alınması

 


Kayıtlı Raporu Aç Bölümünden yanlışlıkla Silinen Netsis veritabanı raporunu yeniden yüklemek için en yakın zamanda alınan yedeği farklı bir ad ile açarak,Yedek veritabanında ki TBLRAPORTASLAK tablosundaki raporları güncel şirkete insert ile ekleyerek sorun çözülebilmektedir.

 

 


4 Ekim 2024 Cuma

Active Directory'de Kilitli Hesapları Bulma

 Yüksek kullanıcısı olan Active Directory  Domain ortamlarında kilitli olan kullanıcıları bulmak,eğer kullanıcıdan geri bildirim gelmediyse zor olabilmekte olup,bu tarz hesapları bulmak için Quary scripti bulunmaktadır.Bunun akrif hale gelmesi için Active Directory Users and Computers'i açıp,saved querys bölümü üzerinde sağ click yaparak,define query kısmına gelip burada ki açılır menü'den,custom search ve Advanced bölümüne girerek Enter LDAP Query alanına aşağıda bulunan script'i ekleyip kaydetmeliyiz:


(&(objectCategory=Person)(objectClass=User)(lockoutTime>=1)) 


Ardından  Active Directory Lock alanına baktıgımızda kilitli kullanıcıları görebileceğiz.




25 Eylül 2024 Çarşamba

Domain Ortamında Domain Administrator-Administrator Hesapları Bulma

 Normal şartlarda Domain Admin,Administrator grubuna üye hesapların kısıtlı olması gerekmektedir. Bazı durumlarda domain hesabına ait kullanıcılar olabileceği için sistemlerimizi sıklıkla kontrol etmeli geçici de olsa bu tarz hesapları devre dışı bırakmalı ve gerekirse silmeliyiz. Aşağıda ki PS komutu Domain ortamında bulunan domain admin grubuna üye hesapları listelemektedir:


  • Dc sunucusunda  sağ click run as administrator ile komut istemine gelinmeli.
  • Powershell komutu ile PS ortamına geçilmeli.
  • Eğer ilk defa çalıştıcaksak,Import-Module ActiveDirectory komutu ile Active Directory PS ortamına alınmalı.
  • Ardından Get-ADGroupMember 'Domain Admins' | Select-Object name  komutu ile ortamda ki domain admin kullanıcılarını listelemeliyiz.

Bu komutları belirli aralıklarla çalıştırıp kontrol etmek önemlidir.




7 Ağustos 2024 Çarşamba

Netsis PDKS Aktarım için T-SQL Kodu

 Netsis IK programına farklı bir PDKS'den veri almak için PDKS aktarma şablonunu alacağımız veri ihtiyacına  göre IK programında hazırlamak gerekmekte olup bazı durumlarda ilgili alanlar için  T-SQL komutları ile insert-update-delete-select işlemleri yapmak ve dizayn şablonuna farklı şirketlere kopyalamak gerekebilmektedir(Şu an için PDKS deseni kopyalamak için Netsis'te xml şablonuna aktarım seçeneği bulunmamaktadır).Netsis bu dizaynları TBLPDKSDEVIR  tablosunda saklamakta olup,PER veritabanına gelerek bu tabloda işlem yapabilmekteyiz.Bu konu ile ilgili test şirketinde ki örnek kod aşağıdadır:



SELECT  * FROM TBLPDKSDEVIR 

WHERE ISYERI='testmrk' AND PDKSKOD='Y' AND ILK='89'



update TBLPDKSDEVIR

SET DT='T'

WHERE ISYERI='testmrk' AND PDKSKOD='Y' AND ILK='89'


26 Mart 2024 Salı

Microsoft Server Mart 2024 Güncelleştirmeleri Hakkında

 Microsoft'un Mart 2024 Server güncelleştirmelerinin ardından DC sunucularda yüksek kaynak kullanımı,ldap sorgusu kullanımı ve yeniden başlatma sorunları oluşmuş ve düzeltme yaması yayınlanmış olup aşağıda ki link üzerinden ulaşılabilir durumdadır,bu güncelleştirme Windows Update kanalı ile gelmeyeceği için aşağıda ki linkten size uygun versiyonu seçip yüklemeniz gerekmektedir:



22 Mart 2024—KB5037422 (İs Derlemesi 20348.2342) Bant dışı - Microsoft Desteği


22 Mart 2024—KB5037423 (İs Derlemesi 14393.6799) Bant dışı - Microsoft Desteği


KB5037426: Windows Server 2012 R2'de LSASS'yi etkileyen bilinen bir sorunu gidermek için güncelleştirme - Microsoft Desteği