SQL Server Generate Script Ile Yedek Almak

SQL Serveriniz üzerindeki veri tabanlarını bir kaç yöntemle kolayca yedekleyebilirsiniz. Örneğin task oluşturarak, SQL Agent aracılığı ile belli zaman aralıklarında yedekleme yapabilir, ya da veri tabanını bir yerden bir yere taşımak isterseniz attach, detach işlemi yapabilirsiniz bunun dışında script oluşturma yöntemi ile yani şimdi anlatacağım şekilde de SQL sunucunuzun versiyonuna bakılmaksızın veri tabanı dosyanızı bir yerden bir yere taşımanız mümkün.

Yedekleme yapmak istediğiniz veri tabanı üzerinde sağ tıklayarak Tasks>Generate Scripts seçeneğini seçiyoruz

Tanıtım ekranını Next ile geçiyoruz

Choose Objects adımında ister tüm database’i isterseniz de tablo bazlı yedek almanız mümkün. Eğer ki siz tüm database’i yedeklemek istiyorsanız bu adımda herhangi bir değişiklik yapmanıza gerek olmayacaktır.

Set Scripting Options ekranı bizim için önemlidir, bu adımda dışa aktarılan database in içindeki verilerin aktarılması ve hangi versiyon sql sunucuda açılması gibi bazı ayarları yapabileceğimiz adımdır.

FileName  alanı databaseimizin kaydolacağı yeri göstermektedir, bu adımda dışa aktarım dosyası nereye kaydetmek istiyorsanız o dizini gösterebilirsiniz. Advanced seçeneğine basarak gerekli ayarları yapmaya devam edelim.

Advanced sekmesinde açılan ekranda Script for Server Version seçeneğinde karşı taraftaki sunucunun versiyonuna göre ayarlanmalıdır. Benim tercihim düşük versiyon olarak kaydetmeniz olacaktır. Bu versiyon ayarı yapılmadığında veri tabanı karşı sunucuda açılmayacaktır.

Bir diğer önemli adım ise Tablolar üzerindeki verilerin taşınıp taşınmayacağının karar verilmesidir. Bu adımda Schema only seçeneği ile sadece boş tabloları taşırsınız fakat içerisine girdiğiniz veriler taşınmayacaktır. Schema and data seçeneği ile hem tablolar hem de içine girdiğiniz veriler oluşturduğumuz script içerisinde aktarılacaktır. Bu adımda Schema and data seçimi duruma göre doğru olacaktır.

Yaptığımız ayarların son değişikliklerini görebileceğimiz ekran eğer, başka bir değişiklik planlamıyorsak Next ile devam edip bitirebiliriz.

Finish butonuna bastığımızda Verinin büyüklüğüne bağlı olarak script çalışıp database I dışarıya aktaracaktır.

Dışa aktarılan veri tabanı dosyası eğer file name alanında değişiklik yapmamışsanız c:%username%Documents dizininde script.sql adında olacaktır.

Veri tabanımızı dışa aktardık ve taşımak istediğimiz bilgisayar/sunucu üzerine kopyaladık bunu nasıl içe aktarabiliriz buna bakalım.

.sql uzantılı dosyaya sağ tıklayarak SQL Server Management Studio uygulaması ile birlikte açmamız gerekmektedir.

Sunucu üzerinde gerekli kullanıcı adı ve şifreyi girerek Management Studio ya login oluyoruz.

Sorgu alanında script yedeğimiz açık iken, üst alandan Execute ya da klavyeden F5 tuşuna basarak yedeği içeri aktarmak mümkün olacaktır. Bu adımda dikkat edilmesi gereken bir diğer konu ise bazen veritabanı tasarımcıları sql sunucunun kurulu olduğu dizine veritabanını oluşturmazlar, bu gerek veri tabanının büyüdüğünü düşünürsek, gerekse C diskine virüs vs. olabileceği düşüncesi ile çok da önerilmez aslında. Konuyu fazla dağıtmadan FILENAME alanında MDF (Master Data File) ve LDF (Log Data File) dosyaları mevcuttur ve bunları nereye konumlandıracağı. Bu dizinin olması gerektir ki, veri tabanı bu alana kendisini taşıyabilsin. Bizim bu örneğimizde C diski altında Otel adında bir klasör var ve bu klasör altına veri tabanımız taşınacaktır. Eğer ki biz C dizininde Otel adında bir klasör oluşturmaz isek ya da yok ise muhtemelen permission denied gibi bir hata ile karşılaşacaksınızdır.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.