- 30 Kasım 2025
- 441
- 1
Veritabanı yönetimi, günümüzde IT dünyasının en kritik parçalarından biri haline geldi. Özellikle SQL veritabanları, büyük veri yığınlarının yönetiminde önemli bir rol oynuyor. Peki, bu verilerin kaybolmasını önlemek için ne yapmalıyız? İşte burada otomatik SQL yedekleme devreye giriyor. Otomatik yedekleme, veritabanı yöneticilerine günlük iş yüklerini azaltma ve veri güvenliğini artırma konusunda büyük bir avantaj sağlıyor. Bash scripti ile SQL yedekleme işlemini nasıl gerçekleştirebileceğimize bir göz atalım.
Bir Bash scripti yazmaya başlamadan önce, yedekleme yapacağımız SQL veritabanının nerede bulunduğunu bilmemiz gerekiyor. Örneğin, MySQL kullanıyorsanız, yedek alacağınız veritabanının adını ve kullanıcı bilgilerini not edin. Bu bilgilerle birlikte, yedekleme dosyanızın nereye kaydedileceğini de düşünmelisiniz. Yedekleme işlemi sırasında dosya adının tarih bilgisiyle birlikte oluşturulması, geçmişteki yedeklere kolay erişim sağlar. Alt alta sıralanmış bu bilgiler, scriptinizin daha düzenli olmasını sağlar.
Şimdi, yedekleme işlemi için bir örnek Bash scriptine göz atalım. Bu scriptte, `mysqldump` komutunu kullanarak veritabanından yedek alacağız. Aşağıda, bir örnek script yer alıyor. `DB_NAME`, `USER` ve `PASSWORD` kısmını kendi veritabanı bilgilerinizle doldurmayı unutmayın.
```bash
#!/bin/bash
DB_NAME="veritabani_adi"
USER="kullanici_adi"
PASSWORD="sifre"
BACKUP_DIR="/yedekler"
DATE=$(date +%Y%m%d%H%M)
mysqldump -u $USER -p$PASSWORD $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql
```
Bu scripti çalıştırdığınızda, belirttiğiniz dizine tarih bilgisiyle birlikte bir yedek dosyası oluşturulacaktır. Yani, işinize yarayacak bir dosya elde etmiş olacaksınız. Ayrıca, yedekleme işlemini belirli aralıklarla otomatik hale getirmek için `cron` kullanabilirsiniz. Cron, zamanlayıcı görevi gören bir araçtır ve belirli zaman dilimlerinde scriptinizi çalıştırarak yedekleme işlemini otomatikleştirmenizi sağlar.
Cron tablosunu düzenlemek için terminale `crontab -e` komutunu girmelisiniz. Ardından, yedekleme scriptinizin ne sıklıkla çalışacağını belirtebilirsiniz. Örneğin, her gün saat 2'de yedek almak için şu satırı ekleyebilirsiniz:
```
0 2 * * * /path/to/your/backup_script.sh
```
Bu satır, her gün sabah 2'de scriptinizi çalıştıracaktır. İşte bu kadar basit! Bununla birlikte, yedekleme işlemlerinin düzgün çalıştığını kontrol etmek için yedek dosyalarınızı düzenli olarak gözden geçirmenizi öneririm. Belki de birkaç yedek dosyanızın eksik olduğunu fark edersiniz...
Otomatik yedekleme işlemi, veri kaybını önlemek için kritik bir adımdır. Ancak, yedeklerinizi güvenli bir yerde saklamak da çok önemli. Yedeklerinizi farklı bir fiziksel alanda veya bulut hizmetlerinde depolamak, olası bir felaket durumunda işinizi kurtarabilir. Her durumda, verilerinizi koruma altına almak için en iyi yöntemleri kullanmaya devam edin. Unutmayın, veri kaybı bir felaket olabilir...
Bir Bash scripti yazmaya başlamadan önce, yedekleme yapacağımız SQL veritabanının nerede bulunduğunu bilmemiz gerekiyor. Örneğin, MySQL kullanıyorsanız, yedek alacağınız veritabanının adını ve kullanıcı bilgilerini not edin. Bu bilgilerle birlikte, yedekleme dosyanızın nereye kaydedileceğini de düşünmelisiniz. Yedekleme işlemi sırasında dosya adının tarih bilgisiyle birlikte oluşturulması, geçmişteki yedeklere kolay erişim sağlar. Alt alta sıralanmış bu bilgiler, scriptinizin daha düzenli olmasını sağlar.
Şimdi, yedekleme işlemi için bir örnek Bash scriptine göz atalım. Bu scriptte, `mysqldump` komutunu kullanarak veritabanından yedek alacağız. Aşağıda, bir örnek script yer alıyor. `DB_NAME`, `USER` ve `PASSWORD` kısmını kendi veritabanı bilgilerinizle doldurmayı unutmayın.
```bash
#!/bin/bash
DB_NAME="veritabani_adi"
USER="kullanici_adi"
PASSWORD="sifre"
BACKUP_DIR="/yedekler"
DATE=$(date +%Y%m%d%H%M)
mysqldump -u $USER -p$PASSWORD $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql
```
Bu scripti çalıştırdığınızda, belirttiğiniz dizine tarih bilgisiyle birlikte bir yedek dosyası oluşturulacaktır. Yani, işinize yarayacak bir dosya elde etmiş olacaksınız. Ayrıca, yedekleme işlemini belirli aralıklarla otomatik hale getirmek için `cron` kullanabilirsiniz. Cron, zamanlayıcı görevi gören bir araçtır ve belirli zaman dilimlerinde scriptinizi çalıştırarak yedekleme işlemini otomatikleştirmenizi sağlar.
Cron tablosunu düzenlemek için terminale `crontab -e` komutunu girmelisiniz. Ardından, yedekleme scriptinizin ne sıklıkla çalışacağını belirtebilirsiniz. Örneğin, her gün saat 2'de yedek almak için şu satırı ekleyebilirsiniz:
```
0 2 * * * /path/to/your/backup_script.sh
```
Bu satır, her gün sabah 2'de scriptinizi çalıştıracaktır. İşte bu kadar basit! Bununla birlikte, yedekleme işlemlerinin düzgün çalıştığını kontrol etmek için yedek dosyalarınızı düzenli olarak gözden geçirmenizi öneririm. Belki de birkaç yedek dosyanızın eksik olduğunu fark edersiniz...
Otomatik yedekleme işlemi, veri kaybını önlemek için kritik bir adımdır. Ancak, yedeklerinizi güvenli bir yerde saklamak da çok önemli. Yedeklerinizi farklı bir fiziksel alanda veya bulut hizmetlerinde depolamak, olası bir felaket durumunda işinizi kurtarabilir. Her durumda, verilerinizi koruma altına almak için en iyi yöntemleri kullanmaya devam edin. Unutmayın, veri kaybı bir felaket olabilir...
