Hoþgeldiniz           
   
"SQL Server baþvuru kaynaðýnýz"
Skip Navigation Links
=========
Anasayfa
Makaleler
Hatalar \ Çözümler
Duyurular
Diðer
Ýpuçlarý
Yararlý Adresler
Mesaj TahtasýExpand Mesaj Tahtasý
HakkýmdaExpand Hakkýmda
Ýletiþim
Kullanýcý Adý:
Þifre:
 

Ne Mutlu Türküm Diyene!

SQL Server ile ilgili soru sormak için buraya týklayýn!


Yazýlarýmý nasýl buluyorunuz?






En Son SQL Server ile Ýlgili Okuduðum Kitaplar
- Inside Microsoft SQL Server 2005: Query Tuning and Optimization - MS Press (Ýngilizce)
- Accelerated SQL Server 2008 - Apress (Ýngilizce)
- Designing and Optimizing Data Access by Using SQL Server 2005 - MS Press (Ýngilizce)
- Microsoft SQL Server 2005 Database Solutions Design - Wiley Publishing (Ýngilizce)- Optimizing and Maintaining a Database Administration Solution by Using SQL Server 2005 - MS Press (Ýngilizce)- Designing a Database Server Infrastructure Using SQL Server 2005 - MS Press (Ýngilizce)- SQL Server 2005 Implementation and Maintenance - MS Press (Ýngilizce)
- SQL Server 2005 Administrators Companion - MS Press (Ýngilizce)


                                    
SQL Server Hosting Toolkit

Son güncelleme tarihi: 30 Eylül 2008
  


Merhabalar,


En çok aldýðým ve gördüðüm sorulardan birisi þu: "Uygulamam için, uygulamamý geliþtirdiðim bilgisayarýmda bir de SQL Server' da bir veritabaným var. Þimdi bu uygulamamý internet ortamýna taþýmam gerekiyor. ASP.Net dosyalarýmý FTP' den gönderiyorum, peki ya veritabanýmý nasýl göndereceðim?". Ýþte bu yazýmda, Web programcýlýðýna yeni baþlayan arkadaþlarýn genelde bir sorun olarak karþýlaþtýklarý bu iþlemi, SQL Server Hosting Toolkit ile ne kadar kolay bir hale getirebileceðini anlatacaðým.

Þunu baþtan söylemek istiyorum, bu iþlemi yapmanýn sadece bir yolu yok; aslýnda bu yazýmda diðer yöntemlerden de bahsedecektim, fakat gördüm ki sadece bu aracý anlatmak bile uzun sürdü. Bu nedenle diðer yöntemleri baþka bir yazýmda anlatýrým. Dediðim gibi, bir veritabanýndaki nesnelerin ve verilerin uzaktaki bir SQL Server Instance' ýna gönderilmesi iþlemi bir kaç yöntemle gerçekleþtirilebilir. Tüm bu yöntemlerdeki temel iþlem, ilgili nesnelerin Script' lerinin oluþturulmasý ve daha sonra da verilerin aktarýlmasýdýr.

SQL Server Hosting Toolkit
Öncelikle sizlere bu aracý indirebileceðiniz adresi vereyim: SQL Server Hosting Toolkit

Uygulamayý kurduktan sonra, kýsayolunu "Baþlat\Programlar\Microsoft SQL Server Database Publishing Wizard" olarak bulabilirsiniz.

Ayrýca, bu uygulama Visual Studio 2005 ve Visual Web Developer 2005 ürünleri ile de bütünleþik bir þekilde çalýþmaktadýr. Bu uygulamayý yükledikten sonra, Visual Studio içerisindeki "Server Explorer" isimli penceredeki bir veritabaný baðlantýnýzýn üzerindeyken farenin sað tuþuna týklarsanýz "Publish to Provider..." seçeneðini göreceksiniz. Ýþte bu seçeneðe týklayarak, veritabanýnýzý uzaktaki SQL Server Instance' ýna aktarmak için kullanacaðýnýz SQL Server Hosting Toolkit' i açmak için kullanabilirsiniz.

Bunlara ek olarak, bu uygulamanýn bir de Komut Ýstemcisi versiyonu mevcuttur. Yani sadece GUI' yi kullanarak deðil, bu Komut Ýstemcisi uygulamasýný da kullanarak ayný iþlemleri yapmanýz mümkündür.

Bu aracý kullanarak, veritabanýnýzý iki farklý yol ile uzaktaki SQL Server Instance' ýnýza gönderebilirsiniz. Bunlar:
  • Database Publishing Wizard: Bu yöntem, genel olarak sorunsuz çalýþan bir sistemdir. Veritabanlarýný, uzaktaki SQL Server Instance' ýna yüklemek isteyenlerin genelde kullanmak isteyeceði bir yöntem.
  • Database Publishing Services: Bu yöntem ise henüz tüm Hosting þirketleri tarafýndan kullanýlmýyor. Çünkü bunun için, Barýndýrma þirketinin bu servisleri SQL Server sunucusuna kurmasý gerekiyor.
Uygulamayý çalýþtýrdýðýnýzda, karþýnýza ilk önce "hoþ geldiniz" ekraný çýkacaktýr. Burayý geçtikten sonra ise, aktarýlacak veritabanýný seçeceðiniz yerel SQL Server Instance' ýnýza baðlanmak için gereken bilgileri girmeniz gereken "Select Source Server" penceresi ile karþýlaþacaksýnýz. (bkz. Resim 1)


Resim 1

"Server" metin kutusuna, yerel bilgisayarýnýzda yüklü olan ve veritabanýnýzýn bulunduðu SQL Server Instance' ýnýn tam yolunu (<BilgisayarAdý>\<InstanceAdý>) yazýn. Meselâ eðer bilgisayarýnýzda Visual Studio 2005 varsa, onunla birlikte de SQL Server 2005 Express Edition kurduysanýz, yüklenen SQL Server Instance' ýnýn varsayýlan Instance' adý "SQLExpress" tir.

Diðer bir seçenek de, Instance' ýnýza bir Baðlantý Metni (Connection String) kullanarak baðlanmaktýr. Bunu da, yine ayný pencerede "Provide connection string" olarak bulabilirsiniz.

Ýlgili SQL Server Instance' ýnýza baðlanmak için gereken bilgileri girdikten sonra "Next" düðmesine týklayarak diðer pencereye geçin.

"Select Database" penceresinde (bkz. Resim 2), aktarmak istediðiniz veritabanýný seçebilirsiniz. Bir seferde sadece bir veritabaný seçebilme hakkýnýz var.


Resim 2


Yine ayný pencerenin alt kýsmýnda bir seçim kutusu göreceksiniz: "Script all objects in the selected database" (Seçili veritabanýndaki tüm nesnelerin Script' ini oluþtur.) Bu örnekte ben bu seçeneði iþaretsiz býrakacaðým, çünkü bu seçeneði seçtiðinizde, bu sihirbaz aktarabileceði tüm nesnelerin Script' ini oluþturacaktýr. Benim bu seçeneði seçmememin nedeni ise, bir sonraki pencerede Script' lerinin oluþturulabileceði nesnelerin listesini görebilmenizdir. (bkz. Resim 3) 


Resim 3

 

"Choose Object Types" te de görebileceðiniz gibi, ben sadece "Tables" nesneleri üzerinde iþlem yapmak istediðimiz belirttim; durumunuza göre istediðiniz nesneleri seçebilirsiniz. (bkz. Resim 3) Ayrýca, veritabanýnýzda yukarýdaki tüm seçenekler çýkmayabilir. Bunun nedeni, veritabanýnýzda o nesnelerden bulunmamasýdýr. Meselâ eðer veritabanýnýzda hiç "View" yoksa, o zaman bu pencerede "Views" seçeneðini göremezsiniz.

Aktarmak istediðiniz nesne grubunun adýný seçtikten sonra -ki bizim örneðimizde bu "Tables", karþýmýza "Choose Tables" penceresi çýkacak (bkz. Resim 4). Tahmin edebileceðiniz gibi, diðer nesneler için de ilgili diðer pencerelerle karþýlaþacaksýnýz. Bu pencerelerde, o gruba ait hangi nesneleri aktarmak istediðinizi tek tek (veya hepsini) seçebileceksiniz.


Resim 4

Seçimlerinizi yaptýktan sonra sýra, Script dosyasýnýn oluþturulacaðý yeri ve gönderme þeklini belirlemeye geliyor. Biz, gönderme yöntemi olarak Script dosyasýný oluþturma yöntemini kullanacaðýz. Çünkü þu anda çalýþtýðým barýndýrma þirketlerinden hiçbirisi Database Publishing Services hizmetini vermiyor.

 


Resim 5

 

"Select an Output Location" penceresinde Script dosyasýný kaydedeceðiniz yeri seçtikten sonra, bu Script dosyasýnýn oluþturulmasýnda kullanýlacak seçeneklerin belirlenmesi için bir sonraki pencere olan "Select Publishing Options" penceresine (Resim 6) geçin.

 


Resim 6

 

Drop existing objects in script: Eðer deðeri "True" ise hedefte ayný isimle zaten varolan nesneler bu Script dosyasýndakilerle deðiþtirilir.

Schema qualify: Eðer deðeri "True" ise üzerinde iþlem yapýlacak nesneler için Schema isimleri de kullanýlýr. (Örn:[SchemaAdý].[NesneAdý]) 

Script for target database: Script dosyasýnýn SQL Server 2000 veya SQL Server 2005' e göre düzenlenmesi belirlenir.

Types of data to publish: Sadece Schema veya sadece veri veya her ikisinin de Script' lenmesi ayarlarý yapýlýr.

Bundan sonraki pencerede ise þu ana kadar yapmýþ olduðunuz seçimlerin listelendiði özet bölüm vardýr ve bu sihirbazdaki son penceredir.

Tüm iþlemleri tamamladýnýz ve elinizde veritabanýnýzýn Script dosyasý var. Þimdi, bu dosyayý kullanarak veritabanýnýzý uzaktaki SQL Server Instance' ýnda nasýl oluþturacaðýnýzý anlatacaðým. Bu iþlem için bir kaç yöntem var, hangisinin en kolayý olduðu tabi size kalmýþ; fakat benim kendi yöntemim SQL Server Management Studio' yu kullanmak. Alternatif olarak SQLCMD ("sqlcmd.exe" SQL Server Instance' ýnýza karþý iþlem yapabileceðiniz ve SQL Server 2005 ve sonrasý versiyonlarla gelen bir Komut Ýstemcisi uygulamasý, önceki versiyonu ise "osql.exe" dir.) yi de kullanabilirsiniz.

Eðer bilgisayarýnýzda SQL Server Management Studio yok ise, SQL Server Management Studio Express aracýný ücretsiz olarak buraya týklayarak indirebilirsiniz. Bu aracýn içerisinde, oluþturmuþ olduðunuz *.SQL dosyasýný çalýþtýrabileceðiniz "Query Editor" bölümü bulunmaktadýr. (bkz. Resim 7)

 


Resim 7

 

SQL Server Management Studio' nun "File -> Open -> File with New Connection..." komutunu çalýþtýrýn. Sizden, bir *.SQL dosyasý açmanýz beklenecektir. Database Publishing Wizard ile oluþturmuþ olduðunuz dosyayý bulun ve açýn. Daha sonra, bu dosyayý çalýþtýrmak için baðlanýlacak olan SQL Server Instance' ýnýn bilgilerini girmeniz istenecek. Bu bilgileri doðru bir þekilde girip SQL Server Instance' ýnýza baðlandýðýnýzda, Database Publishing Wizard ile hazýrlamýþ olduðunuz *.SQL dosyasýnýn da açýldýðýný göreceksiniz.

Veritabanýnýzý oluþturmak için son adým olarak Query Editor penceresindeki komutlarý çalýþtýrmak kaldý. Bu noktada, SQL Server Management Studio' nun "SQL Editor" araç çubuðundaki veritabaný listesinden doðru veritabanýnýn seçili olduðundan emin olun. "Doðru veritabaný" derken, bu Script dosyasýný çalýþtýracaðýnýz veritabanýný kastediyorum. Þayet yanlýþ bir veritabaný seçiliyse, oluþturmuþ olduðunuz bu Script dosyasýndaki tüm nesneler yanlýþ veritabanýnda oluþturulacaktýr. Bu yüzden doðru veritabanýný seçmek gözden kaçýrýlmamasý gereken önemli bir adým. Doðru veritabanýný da seçtikten sonra, Script dosyasýndaki komutlarý çalýþtýrmak için ya "F5" kýsayol tuþunu veya yukarýdaki menüden "Query -> Execute" komutunu veya "SQL Editor" araç çubuðundaki "Execute" isimli düðmeye týklamanýz gerekiyor.

Özetle bu yazýda, Database Publishing Wizard ile, yerel SQL Server Instance' ýnýzda oluþturmuþ olduðunuz veritabanýnýzý, uzaktaki baþka bir SQL Server Instance' ýnda nasýl oluþturacaðýnýzý anlatmaya çalýþtým. Umarým iþinize yarar.

 

Ekrem Önsoy

Anasayfa


 
Bu sitenin tüm haklarý, Ekrem Önsoy' a aittir.