- Katılım
- 21 May 2024
- Konular
- 1,450
- Mesajlar
- 2,451
- Çözüm
- 7
- Online süresi
- 3mo 25d
- Reaksiyon Skoru
- 2,564
- Altın Konu
- 1,027
- Başarım Puanı
- 274
- Yaş
- 51
- MmoLira
- 36,868
- DevLira
- 110
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
SQL Veritabanı Yedekleme Nasıl Yapılır?
Bu SQL Yedekleme Veritabanı eğitiminde, MySQL ve MS SQL Server'da bir veritabanının yedeğini nasıl alabileceğimizi açıklayacağız . Güç dalgalanmaları veya disk çökmeleri vb. nedeniyle orijinalinin bozulması veya kaybolması durumunda veritabanının yedeğinin olması çok önemli ve temel bir geliştirme uygulamasıdır. Bunu uygulayarak, veritabanı arızadan önceki haline geri döndürülebilir.
SQL Yedekleme Veritabanı Bildirimi
SQL'de, veritabanı yedeklerini oluşturmak için BACKUP DATABASE ifadesi kullanılır.Sözdizimi
Aşağıda SQL Yedekleme Veritabanı İfadesinin sözdizimi yer almaktadır:BACKUP DATABASE database_name
TO DISK = 'filepath'
GO
Burada SQL komutu database_name veritabanının yedek dosyasını oluşturur.
SQL'de Yedekleme Türleri
SQL'de üç tür veritabanı yedeklemesi mevcuttur. Bunlar şunlardır:- Tam Yedekleme
- Diferansiyel Yedekleme
- İşlem Günlüğü (T-log) yedeklemesi
SQL Tam Yedekleme
Tam yedekleme, bir SQL Server veritabanının tam yedeğidir.Sözdizimi
Aşağıda SQL Full Backup'ın sözdizimi yer almaktadır:BACKUP DATABASE database_name
TO medium = 'filepath'
GO
Burada database_name veritabanının adını, medium ise disk, teyp veya url gibi depolama ortamını ifade eder.
SQL Farklı Yedekleme
Sql'de WITH DIFFERENTIAL komutunu kullanarak sadece yeni değişiklikleri yedekleyebilirsiniz.Sözdizimi
Aşağıda Sql Differential Backup'ın sözdizimi verilmiştir:BACKUP DATABASE my_db
TO medium = 'filepath'
WITH DIFFERENTIAL;
GO
Burada database_name veritabanının adını, medium ise disk, teyp veya url gibi depolama aygıtını ifade eder.
İşlem Günlüğü (T-log) yedeklemesi
İşlem günlüğü yedeklemesi, son işlem günlüğü yedeklemesinden bu yana yapılan tüm işlemleri içerir. İşlem Günlüğü yedeklemesini gerçekleştirmek için BACKUP LOG komutu kullanılır.Sözdizimi
Aşağıda Sql işlem günlüğü yedeklemesinin sözdizimi verilmiştir:BACKUP LOG database_name
TO medium = 'filepath';
GO
Burada, database_name veritabanının adıdır, medium ise disk gibi depolama aygıtını ifade eder
Veritabanını Yedeklemeden Geri Yükle
Veritabanındaki bir yedekleme dosyasını geri yüklemek için RESTORE DATABASE komutunu kullanabiliriz.Sözdizimi
Aşağıda Yedeklemeden Veritabanını Geri Yükleme sözdizimi verilmiştir.RESTORE DATABASE database_name
FROM DISK = 'filepath';
GO
Burada database_name veritabanının adını, medium ise disk, tape veya url'yi ifade eder.
MySQL ve MS SQL Veritabanı Yedekleme ve Geri Yükleme
MySQL ve MS Sql veritabanlarında yedekleme işlemi şu şekildedir.MySQL Veritabanını Yedekle
MySQL mysqldump komutu, belirli bir veritabanının tam yedeğini almak için kullanılabilir. Bu işlem komut satırından gerçekleştirilecek ve veritabanı kullanıcı adı ve parolası, tercihen yönetici ayrıcalığı gerektirecektir.$ mysqldump -u username -p"password" -R testDB > testDB.sql
Veritabanına bağlanmak için -p bayrağını hemen ardından parolamızı kullanarak aralarına boşluk koymadan bağlanıyoruz. -R , mysqldump'a normal verilerle birlikte saklı prosedürleri ve fonksiyonları veritabanından kopyalamasını söylemek için gereklidir.
Veritabanı boyutuna bağlı olarak, yukarıdaki komutun son çıktı dosyası testDB.sql'i oluşturması biraz zaman alabilir. Komut tamamlandığında, istediğiniz yerde güvenle saklayabileceğiniz testDB.sql dosyasında tam bir veritabanı dökümüne sahip olacaksınız. Daha sonra bu dosya veritabanını geri yüklemek için kullanılabilir.
MySQL Veritabanını Geri Yükle
Bir veritabanı dökümümüz varsa, veritabanımızı geri yüklemek için aşağıdaki iki adımlı süreci kullanabiliriz. İlk adım, mysqladmin komut istemi komutunu kullanarak yeni veritabanımızı aşağıdaki gibi oluşturmaktır:$ mysqladmin -u username -p"password" create tutorialsDB;
Bir sonraki adım, eski veritabanını aşağıda gösterilen yeni veritabanına aktarmaktır:
$ mysql -u username -p"password" tutorialsDB < testDB.sql;
Eğer veritabanı adınızı eskisiyle aynı tutmak istiyorsanız, eski veri tabanını silmeniz ve eski veri tabanını bu veritabanına aktarmadan önce yeniden oluşturmanız gerekecektir; ancak bu veritabanında kaybetmek istemediğiniz hiçbir verinin olmadığından emin olun.
MS SQL Veritabanını Yedekle
Eğer MS SQL Server ile çalışıyorsanız mevcut bir veritabanının yedeğini oluşturmak için SQL bize basit bir SQL BACKUP DATABASE komutu sağlar.Sözdizimi
Aşağıda SQL'deki BACKUP DATABASE komutunun sözdizimi verilmiştir:BACKUP DATABASE database_name
TO DISK = 'filepath'
GO
Örnek
Aşağıda D sürücüsündeki testDB veritabanı için bir yedekleme dosyası oluşturmaya dair bir örnek verilmiştir .SQL> BACKUP DATABASE testDB
TO DISK = 'D:\testDB.bak'
GO
Yedekleme veya geri yükleme yapmak için admin sysadmin ayrıcalıklarına sahip olmalısınız. Ayrıca veritabanını gerçek veritabanından farklı bir diske yedeklemelisiniz. Disk çökse bile, veritabanıyla birlikte yedekleme dosyamızı kaybetmeyiz.
Çıktısı
Yukarıdaki sorguyu çalıştırdığımızda çıktı aşağıdaki gibi elde edilir:Processed 344 pages for database 'testDB', file 'testDB' on file 1.
Processed 2 pages for database 'testDB', file 'testDB_log' on file 1.
BACKUP DATABASE successfully processed 346 pages in 0.011 seconds (245.383 MB/sec).
MS SQL Veritabanını Geri Yükle
Eğer MS SQL veritabanınızın düzgün bir yedeğine sahipseniz, gerektiğinde bunu kolayca geri yükleyebilirsiniz.Sözdizimi
Aşağıda SQL'deki RESTORE DATABASE komutunun sözdizimi yer almaktadır:RESTORE DATABASE database_name
FROM DISK = 'filepath'
[WITH REPLACE]
GO
Mevcut veritabanının üzerine yazmak istiyorsanız burada WITH REPLACE seçeneği verilebilir.
Örnek
Aşağıda D sürücüsünde bulunan testDB.bak yedekleme dosyasından bir veritabanını geri yükleme örneği verilmiştir .SQL> RESTORE DATABASE testDB
FROM DISK = 'D:\testDB.bak'
WITH REPLACE
GO
- Katılım
- 9 Eyl 2013
- Konular
- 9,014
- Mesajlar
- 37,352
- Çözüm
- 14
- Online süresi
- 2mo 18d
- Reaksiyon Skoru
- 4,569
- Altın Konu
- 3
- Başarım Puanı
- 561
- MmoLira
- 29,437
- DevLira
- 0
Eline sağlık gayet güzel anlatımın olmuş, altın konu olarak işaretledim konuyu.
- Katılım
- 21 May 2024
- Konular
- 1,450
- Mesajlar
- 2,451
- Çözüm
- 7
- Online süresi
- 3mo 25d
- Reaksiyon Skoru
- 2,564
- Altın Konu
- 1,027
- Başarım Puanı
- 274
- Yaş
- 51
- MmoLira
- 36,868
- DevLira
- 110
Teşekkürler adminim.Eline sağlık gayet güzel anlatımın olmuş, altın konu olarak işaretledim konuyu.
- Katılım
- 10 Haz 2009
- Konular
- 503
- Mesajlar
- 6,688
- Çözüm
- 6
- Online süresi
- 2mo 6d
- Reaksiyon Skoru
- 1,522
- Altın Konu
- 58
- Başarım Puanı
- 316
- MmoLira
- 10,689
- DevLira
- 12
Paylaşım için teşekkürler
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 3
- Görüntüleme
- 211
- Cevaplar
- 0
- Görüntüleme
- 185
- Cevaplar
- 2
- Görüntüleme
- 420
- Cevaplar
- 0
- Görüntüleme
- 561





