Büyük Database’leri Sql Dump İle Yedekleme Ve Geri Yükleme

Eskiz

🇹🇷 Bozkurtlar Diriliyor 🇹🇷
Onaylanmış Üye
27 Mar 2020
466
29
Çevrimiçi zamanı
1d 3h 20m
18
Antalya
www.aktifhost.net
Best answers
0
Mysql de adını bildiğimiz bir veritabanının yedeğini almak için mysqldump komutunu kullanabiliriz, basitçe kullanımı
MySQL de veritabanı yedekleme
mysqldump -u kullanici_adi -p parola veritabani_ismi > yedeklenecek_dosya.sql
mesela vpopmail adlı veritabanımı yedeklemek istersem aşağıdakine benzer bir komut kullanmam yeterli.
root@maviyan~> mysqldump -u root -p cinali vpopmail > qmail_yedek.sql
Bir sistemde bulunan tüm veritabanlarının yedeğini almak istersek basitçe aşağıdaki komut işimizi görecektir.
root@maviyan~> mysqldump –all-databases -u root -p cinali > tum_yedek.sql
alınan yedegin icine bakacak olursak…
root@maviyan~> cat qmail_yedek.sql
– MySQL dump 8.23

– Host: localhost Database: vpopmail
———————————————————
– Server version 3.23.58

– Table structure for table `dir_control`

CREATE TABLE dir_control (
domain char(64) NOT NULL defa
…..

SQL dump mevcut kullandığınız veritabanının bir nevi metne veya text haline getirmektir. Aslında phpMyAdmin ile de bu işlemi yapabilirsiniz, fakat 5-10 Mb’dan büyük veritabanlarını aktarmanın ne kadar zor olduğunu sanırım biliyorsunuzdur Ayrıca Türkçe verilerinizin karakterlerinin bozulmasıda yüksek bir ihtimaldir. Eğer bir hosting kullanıyorsanız bunu yapmanız elbette mümkün değil, peki büyük veri içeren dosyalarınızı yeni hosting taşıdığınızda nasıl yapacaksınız ? Onuda bir sonraki yazımda :) İşte yapmanız gerekenler ve örnek komutlar ;
Yedek Almak için ;

bash : mysqldump -u db_kullanıcı_adınız -h localhost -p –opt db_adınız > db_yedeğim.sql ( Enter)
Enter Password :

Şimdi elbette Enter Password bölümünü yazmıyorsunuz enter yazan yerde ne yapacağınızı sanırım biliyorsunuzdur Komutu girdikten sonra şifrenizi sorucak ve veritabanızın büyüklüğüne göre bir kaç saniye ile bir kaç dakika arasında işlemi yapacaktır. Yukarıda kırmızı renkle işaretlediğim yerlere kendi bilgilerinizi yazacaksınız.
Yedeği geri yüklemek için ;

bash : mysql -u db_kullanıcı_adınız -h localhost yüklenicek_db_adı -p < db_yedegim.sql ( Enter )
Enter Password :

Burada yine kırmızı bölümle işaret ettiğim noktaları, kendi bilgilerinizle değiştireceksiniz. Ben 500 Mb’lik bir yedek almıştım, ama bundan daha büyük veritabanları için gzip ile sıkıştırma yöntemini kullanabiliriz.
Gzip ile yedek Almak için ;

bash : mysqldump -u db_kullanıcı_adınız -h localhost -p –opt db_adınız | gzip > db_yedeğim.sql ( Enter)
Enter Password :

Gzip yedeğini geri yüklemek için ;

bash : cat gzip_db_yedegim.gz | gunzip | mysql -u db_kullanıcı_adı -h localhost db_adı ( Enter )
Enter Password :

Not : Yukarıda ” bash ” ile belirttiğim bölüm, linux konsolu anlamına gelmektedir.
 

Fendrix

𝓣𝓱𝓮 𝓑𝓮𝓼𝓽 𝓞𝓷𝓮
Co Admin
Hosting Yetkilisi
Teknik Sorumlu
Hakem
Yarışma Organizatörü
Vip Üye
21 Mar 2021
1,314
370
Çevrimiçi zamanı
7d 8h 47m
153
Best answers
0
Oyuncu
Metin2
Teşekkürler. :)
 
Üst