Kategori: MS SQL

SQL Server’a cmd komut satırını kullanarak bağlanmak

Bazı durumlarda Server’da SSMS(SQL Server Management Studio) kurulu değildir ve bu sunucuda domain içinde değilse acil bir şekilde cmd komut satırından bağlanmanız gerekebilir.   Böyle bir durumda cmd komut satırını sağ tıklayıp run as administrator ile çalıştırıp aşağıdaki script’i kullanarak sql server’a bağlanabilirsiniz.   sqlcmd -E -S .\TESTINSTACE2   .\ Bulunduğumuz sunucuyu temsil ediyor. Bunun […]

Objeleri Şifrelemek(SP,Function,View)

Stored Procedurler, Functionlar ve Viewler genellikle her uygulamanın veritabanı katmanında kullandığı objelerdir. Bazı durumlarda çeşitli sebeplerle bu objelerin text kısımlarının şifrelenmesine ihtiyaç duyulabilir. Bir örnek üzerinden bu 3 obje tipini nasıl şifreleyeceğimizi inceleyelim.   AdventureWorks2014 veritabanındaki HumanResources.vEmployee view’inin aşağıdakin gibi create script’ini alıyoruz.     CREATE VIEW kısmından sonra aşağıdaki gibi WITH ENCRYTION ekliyoruz. View’in […]

Veritabanı oluşurken data ve log file’ın oluşacağı default path’leri değiştirmek

“Veritabanı Oluşturmak Deyip Geçmeyin!” isimli makalemde bir veritabanının nasıl oluşturulması gerektiğini detaylı olarak anlattım. Veritabanı oluşturma aşamasında siz özellikle veritabanı dosyalarının oluşacağı default bir path seçmezseniz, data ve log dosyaları instance seviyesinde daha önce ayarlanmış olan path’lerde oluşturacaktır. Bu default path’i hiç set etmediyseniz kurulum esnasında set edilmiş olan path’ler geçerli olacaktır. “SQL Server Kurulumu” […]

Kolon Seviyesinde Şifreleme(Column Level Encryption)

SQL Server’da önemli bir tablonuzdaki önemli bir kolonunuzun içeriğini kimsenin görmesini istemeyebilirsiniz. Böyle bir durumda bu kolonu şifreli hale getirebilirsiniz. Kolonu şifreli hale getirmek için öncelikle ilgili veritabanında aşağıdaki script yardımıyla master key oluşturmalısınız. Örneğimizde test amaçlı olduğu için basit bir şifre verdik. Production ortama uygularken daha karmaşık bir şifre vermelisiniz. USE AdventureWorks2014 GO CREATE […]

The certificate ” cannot be dropped because it is bound to one or more database hatasının çözümü(Sertifika Silmek)

TDE(Transparent Data Encryption) ile veritabanı şifreleme işlemi işlemi sırasında oluşturduğunuz sertifikanızı silmeniz gerekebilir. Ve bu silme işlemi sırasında aşağıdaki gibi bir hata ile karşılaşabilirsiniz.     Bu hatayı aşıp sertifikayı silebilmek için öncelikle instance üzerinde bu sertifika ile ilişkilendirilmiş database encryption key leri bulup silmeniz gerekir. Aşağıdaki sorgu yardımıyla bu listeye ulaşabilirsiniz. select database_name = […]