Thread Starter
#0
ClickHouse, yüksek hızlı veri analitiği için tasarlanmış bir sütunlu veritabanıdır. Bu veritabanında veri kaybını önlemek ve sistemin güvenliğini artırmak için düzenli yedekleme yapmak kritik öneme sahiptir. Bu yazıda, ClickHouse için basit ama etkili bir yedekleme scripti oluşturmayı ele alacağız.
Yedekleme işlemi için öncelikle ClickHouse'un sunduğu
Bu script, belirttiğiniz veritabanındaki tüm tabloları
Yedekleme işlemlerini düzenli aralıklarla otomatik hale getirmek için bu script'i bir cron job olarak ayarlamak faydalı olabilir. Örneğin, günlük olarak yedek almak için crontab dosyanıza aşağıdaki satırı ekleyebilirsiniz:
Bu script ve cron ayarları ile ClickHouse veritabanınızı güvence altına alarak veri kaybı riskini minimuma indirmiş olursunuz.
Yedekleme işlemi için öncelikle ClickHouse'un sunduğu
clickhouse-client aracını kullanacağız. Aşağıdaki script, belirli bir veritabanındaki tüm tabloları yedeklemek için kullanılabilir. Script, veritabanı adını ve yedeklerin kaydedileceği dizini parametre olarak alır.CODE
12345678910111213141516171819202122232425
#!/bin/bash
[b]Kullanım: ./yedekleme_script.sh [/b]
VERITABANI=$1
YED_DIZINI=$2
if [ -z "$VERITABANI" ] || [ -z "$YED_DIZINI" ]; then
echo "Lütfen veritabanı adını ve yedekleme dizinini belirtin."
exit 1
fi
[b]Yedekleme dizini yoksa oluştur[/b]
mkdir -p $YED_DIZINI
[b]Tabloları yedekle[/b]
TABLOLAR=$(clickhouse-client --query="SHOW TABLES FROM $VERITABANI")
for TABLO in $TABLOLAR; do
echo "Yedekleniyor: $TABLO"
clickhouse-client --query="SELECT * FROM $VERITABANI.$TABLO" > "$YED_DIZINI/$TABLO.sql"
done
echo "Yedekleme işlemi tamamlandı."
Bu script, belirttiğiniz veritabanındaki tüm tabloları
SELECT * sorgusu ile yedeklemekte ve her tabloyu ayrı bir .sql dosyasına kaydetmektedir. Yedekleme dizini yoksa otomatik olarak oluşturulur. Script'in kullanımını kolaylaştırmak için, sisteminizde çalıştırmadan önce gerekli izinleri vermeyi unutmayın.Yedekleme işlemlerini düzenli aralıklarla otomatik hale getirmek için bu script'i bir cron job olarak ayarlamak faydalı olabilir. Örneğin, günlük olarak yedek almak için crontab dosyanıza aşağıdaki satırı ekleyebilirsiniz:
CODE
12
0 2 * * * /path/to/yedekleme_script.sh veritabani_adi /path/to/yedekleme_dizini
Bu script ve cron ayarları ile ClickHouse veritabanınızı güvence altına alarak veri kaybı riskini minimuma indirmiş olursunuz.