SQL Server 2008 deneme sürümünü tam sürümü çevirme

22 Ağustos 2009 14:22

http://www.microsoft.com/sqlserver/2008/en/us/trial-software.aspx adresinden SQL Server 2008'in 180 günlük deneme sürümünü (trial / evaluation) indirdiniz ve denemeler yapmak veya projelerinizi geliştirmek için kullandınız. Ancak 180 gün dediğin çabucak geçiyor, SQL Server 2008'i kullanmaya devam etmek için tam sürüme (full / lisanslı) geçiş yapmak gerekiyor.

Bu kadar çalışma yaptık üzerinde, belki de projemizi deneme sürümüyle yayına bile aldık. Deneme sürümünü kaldırmadan tam sürüme geçme şansımız yok mu? Yoksa aldığımız lisansla baştan kurmamız mı gerekecek?

Neyse ki, Microsoft bu işe çözüm bulmuş ve kaldırıp tekrar kurmadan deneme sürümünden tam sürüme geçiş imkanı sağlamış. Bunun için SQL Server 2008 kurulum DVD'sini takıp komut satırından aşağıdaki kodu girmek yeterli :


setup /q /ACTION=editionupgrade /INSTANCENAME=MSSQLSERVER /PID=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX


MSSQLSERVER
parametresinin yerine SQL Server'ı farklı bir instance ile kurduysanız o instance adınıPID bölümünde ise alınan lisans ile verilen lisans anahtarını yazmak gerekiyor.

Bu komut ile aynı zamanda Standart Edition'dan Enterprise Edition'a geçiş gibi sürüm yükseltme işlemlerini de yapmak mümkün.

3 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

SQL Server, SQL Server 2008
, , , , , ,


Open DBDiff : Açık kaynak SQL Server şema karşılaştırma aracı

4 Nisan 2009 22:30

Codeplex ile ilgili yazılarımıza bu sefer bir projenin tanıtımı ile devam ediyoruz. Bahsedeceğimiz projenin adı : Open DBDiff.

Open DBDiff; SQL Server 2005 ve 2008 ile çalışabilen, veritabanı içerisindeki tüm nesneleri (tablo, fonksiyon, trigger, index, kullanıcı vs.) karşılaştırabilen ve eşitleme için gerekli script'leri oluşturabilen, Codeplex'te açık kaynaklı olarak paylaşıma açılmış bir projedir. Proje .NET Framework 3.5 ve Visual Studio 2008 kullanılarak geliştiriliyor.

Open DBDiff'in kaynak kodu ve çalışma dosyalarına ve diğer tüm bilgilerine http://opendbiff.codeplex.com/ adresinden ulaşılabiliyor. Programı indirebilmek için sayfanın üst veya sağ kısmında yeralan Downloads linklerinden birine tıklamak gerekiyor. Görüntülenen sayfada karşımıza üç adet seçenek çıkıyor : Code, Setup ve Binaries. Adlarından da tahmin edilebileceği gibi Code başlıklı link bize projenin kaynak kodlarını sağlıyor. Setup ile projenin kurulabilir sürümüne, Binaries ile projenin kurulum yapılmadan çalışabilen sürümüne ulaşılıyor.



Open DBDiff, çalıştırıldığında kaynak ve hedef veritabanlarının bilgilerinin girilmesini bekliyor. Gerekli bilgiler girilip Compare tuşuna basıldığında iki veritabanı arasındaki farkları gösterip senkronize hale getirebilmek için gerekli script'leri oluşturuyor. Open DBDbiff'in karşılaştırabildiği nesneler şu şekilde :

- Tablolar
- Kolonlar
- Contsraint'ler (primary key, foreign key)
- Index'ler
- Tablo tipleri
- Kullanıcı veri tipleri
- Trigger'lar
- View'lar
- Stored procedure'ler
- Fonksiyonlar
- Veritabanı kullanıcıları
- Veritabanı rolleri

Bu nesnelerden hangilerinin karşılaştırılıp karşılaştırılmayacağına Options'a tıklayarak karar vermek mümkün. Karşılaştırılması istenmeyen nesneler varsa devre dışı bırakılabiliyor.



Kaynak ve hedef veritabanı bilgileri girilip Compare tuşuna basıldığında, Open DBDiff veritabanları üzerinde gerekli incelemeyi yapıp Schema bölümünde hedef veritabanı ile ilgili bilgileri görüntülüyor. Bu bölümde veritabanı nesneleri ve yanlarında bu nesnelerin adetleri görüntüleniyor. Her bir nesnenin yanındaki + işaretine basılarak ile nesne detaylarına ulaşılabiliyor. Nesne detaylarında yeni, farklı ve silinmiş nesneler sırasıyla yeşil, mavi ve kırmızı renklerde gösteriliyor. Her bir nesneye tıklandığında o nesne ile ilgili detaylara ve sağ tarafta oluşturulma script'ine ulaşılabiliyor.

 

Synchronized Script bölümünde senkronizasyonun sağlanması için gerekli olan scriptler görüntüleniyor. Bu scriptler Save As tuşu ile sql uzantılı script dosyası olarak kaydedilebildiği gibi, Copy Clipboard tuşu ile panoya kopyalanıp SQL Server Management Studio içerisine aktarılabiliyor.

 

Open DBDiff, yukarıda bahsettiğimiz nesnelerdeki farklılıkları gösterip ilgili script'leri de oluşturarak iki veritabanını eşitlemek için oldukça faydalı bir araç olarak görünüyor. Program için tek eksik olarak tablolardaki verilerin karşılaştırılamıyor olması görünüyor. Umarım ilerleyen versiyonlarda bu özellik de eklenir.

Bu yazıyı ilk değerlendiren siz olun

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

CodePlex, SQL Server
, , , , ,


SQL Server 2005'te veritabanı gizleme

8 Mart 2009 22:41

SQL Server 2005 kurduğumuz sunucu üzerinde kullanım amacına göre zaman zaman birden çok veritabanı yeralabilmektedir. Bu veritabanları aynı iş ile ilgili olup aynı kişiler tarafından kullanılmakla beraber özellikle hosting şirketlerinde olduğu gibi tamamen ilgisiz ve farklı kişilere ait olabilmektedir. Böyle durumlarda SQL Server üzerinde yeralan veritabanlarının hem uzun olduğu için kullanıcı kendi veritabanını bulmakta zorlanabilmekte hem de tüm veritabanlarının isimleri tüm kullanıcılar tarafından görülebilmektedir. Tüm bunlardan kurtulmak ve kullanıcıya SQL Server üzerinde yeralan tüm veritabanlarını göstermeden sadece kendisine ait veritaban(lar)ını göstermek mümkün müdür? Evet, mümkün :)

SQL Server 2005 kurulduğunda varsayılan olarak sunucu üzerinde yeralan tüm veritabanları listesi görüntülenebilir haldedir. (Şekil 1) Bunu sağlayan "public" isimli sunucu rolünün tüm veritabanlarını görme izninin olması ve bu rolün tüm kullanıcılara eklenmesidir.


Şekil 1. SQL Server Management Studio ile veritabanının bulunduğu sunucuya bağlanan kullanıcı sunucu üzerindeki tüm veritabanlarının listesini görebilir.

Kullanıcıların tüm veritabanlarını görmesi yukarıda da bahsettiğimiz gibi hem kendi veritabanlarını listeden bulmakta zorlanmalarına ve meraklı kullanıcıların meraklarının artmasına ve gereksiz bazı çabalar içine girmelerine sebep olabilmektedir. Bunları engellemek ve kullanıcının sadece kendisine ait veritaban(lar)ını görmesini sağlamak için aşağıdaki adımları uygulamamız gerekiyor :

1. SQL Server Management Studio'da File menüsünden New başlığı altındaki Query with Current Connection linkine veya sol üstteki New Query linkine tıklayarak yeni bir sorgu penceresi açıyoruz.
2. Sorgu penceresinde aşağıdaki komutları çalıştırarak public rolü için tüm veritabanlarını görüntüleme iznini kaldırıyoruz :
    USE master
    GO
    DENY VIEW any DATABASE TO public

3. Yine sorgu penceresinde her bir veritabanı için dbo rolünü ilgili kullanıcı olarak değiştiriyoruz :
    USE veritabani_adi
    GO
    EXEC sp_changedbowner kullanici_adi 
 
veritabani_adi yerine ilgili veritabanının adını, kullanici_adi yerine de o veritabanının kullanıcısının adını yazıyoruz.

İşlemler tamamlandığında, kullanıcı SQL Server Management Studio ile sunucuya bağlandığında Şekil 2'de gibi sadece kendisine ait veritaban(lar)ını görebilmektedir.


Şekil 2. Kullanıcı artık sadece kendisine ait veritaban(lar)ını görebiliyor

Not : Bu şekilde veritabanını sadece bir kullanıcı görebilmektedir. Birden fazla kullanıcısı olan veritabanlarında sadece dbo rolüne atanmış kullanıcı veritabanını görebilmektedir, diğer kullanıcılar SQL Server Management Studio ile bağlanamamakta ve veritabanını görememektedir.

SQL Server 2008'de bu işlem nasıl yapılıyor? Daha kolay bir yolu var mı? Başka bir yazıda bu soruların cevaplarını vermeye çalışacağım.

1 kişi tarafından 5.0 olarak değerlendirildi

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

SQL Server, SQL Server 2005
, , ,