Forum

SQL Server Generate...
 
Bildirimler
Hepsini Temizle

SQL Server Generate Script Ile Yedek Almak

Davut EREN
(@davuteren)
Üye

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.

Alıntı
Konu başlatıcı Gönderildi : 24/04/2015 18:56

oldmember
(@yavuzfilizlibay)
Üye

Hocam eline sağlık, otel veritabanı ünlü oldu 🙂

CevapAlıntı
Gönderildi : 24/04/2015 19:01

Davut EREN
(@davuteren)
Üye

Senin elin deydiyse olsun hocam 🙂

CevapAlıntı
Konu başlatıcı Gönderildi : 24/04/2015 19:54

Recep YÜKSEL
(@recepyuksel)
Kıdemli Üye Forum Yöneticisi

Eline sağlık hocam güzel paylaşım.

************************************************************
Probleminiz çözüldüğünde sonucu burada paylaşırsanız,
sizin ile aynı problemi yaşayanlar için yardım etmiş olursunuz.
Eğer sorununuz çözüldü ise "çözüldü" olarak işaretlerseniz
diğer üyeler için çok büyük kolaylık sağlayacaktır.
************************************************************

CevapAlıntı
Gönderildi : 25/04/2015 02:48

Salim AKÖZ
(@SalimAKOZ)
Üye

güzel bir bilgi olmuş hocam sağol...

CevapAlıntı
Gönderildi : 25/04/2015 14:40

Erdem SELÇUK
(@eravse)
Saygın Üye Forum Yöneticisi

Bak ben bunu kacirmisim 🙂 ellerine saglik Davut hocam 🙂 Bende buna bir flight info felan yazayim bari 🙂 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

CevapAlıntı
Gönderildi : 15/05/2015 12:07

HAKKI KALAY
(@HAKKIKALAY)
Üye

Çok beğendim.. Çok faydalı bir bilgi oldu benim için.

Emeği geçen herkese teşekkür ederim.. 

CevapAlıntı
Gönderildi : 27/04/2016 13:47

Paylaş: