anasayfa
iletişim
twitter'da ben
rss besleme

BigDump: Kademeli MySQL İçe Aktarımı

admin: 30 Ağustos 2009 | kategori: Php | 5 yorum var

Birçok web yer sağlayıcı firma sunucularında dosya alım limitlerini her türlü yönden kısıtlarlar. Gerek upload ile gerekse yedek içe aktarımı özellikleriyle. Bu gibi durumlarda çok büyük MySQL yedeği olan biz kullanıcılar zor durumda kalırız ancak çözüm getirelemeyecek hiçbir sorun yoktur bu alemde.

Bu sorunu çözmek için kullanacağımız yöntem yedek dosyamızı ftp ile erişilebilir (mümkünde sadece sizin bildiğiniz bir klasör adı kullanın, örneğin: 1a2s3d4f) duruma getirerek bir script aracılığıyla parça parça girdi yapmaktır. Kullanacağımız script php ile yazılmış olan BigDump‘dır.

İlk olarak bigdump.php‘yi indirmemiz gerekiyor. Ardından bize sunulan panel üzerinden veritabanını oluşturup bigdump.php dosyasını biraz düzenlemeliyiz.

BigDump düzenlemesi:

bigdump.php‘yi herhangi bir metin editörü ile açtıktan sonra aşağıdaki satırları oluşturduğumuz veritabanı ve elimizdeki veritabanı yedeğine göre düzenlememiz gerekiyor.

$db_server = 'localhost'; //bu değer çok büyük ihtimalle localhost olarak kalacaktır ancak bazı firmalar MySQL için farklı sunucu kullandıkları için IP adresi girmeniz gerekebilir.

$db_name = 'vt_adi'; //bu değer oluşturduğunuz MySQL veritabanının adıdır.

$db_username = 'vt_kullanici';
$db_password = 'vt_kullanici_sifresi';//bu değerlerde MySQL veritabanına bağlanırken kullanacağımız kullanıcı erişim bilgileridir.

$filename = '1a2s3d4f/yedek.sql'; //bu değişkende bigdump.php dosyasının bulunduğu klasörde yer alan 1a2s3d4f klasörünün içinde yedek.sql dosyasını belirliyoruz. 1a2s3d4f gibi bir dosya adı kullanmamın nedeni yedek.sql dosyasına erişimin zorlaştırılmasıdır.

Diğer kısımlara müdahale etmedik. Ben sadece bu değişikleri yaparak bigdump.php dosyasını çalıştırdığımda Start Import linkini kullanarak sorunsuz şekilde aktarım sağladım.

UYARI: Aktarım işleminden sonra bigdump.php ve yedek.sql (örneğimizde) dosyalarını sunucu üzerinden siliniz.

Oluşabilecek sorunlar:

Karşılaştığım tek sorun olan satır boyutu yetersizliğinin üstesinden $linespersession = 3000; değerini yükselterek geldim. Ben 9999 yaptım ve sorunsuz şekilde devam etti. Eğer yetersiz olursa bu değerinde üstüne çıkabilirsiniz.

Eğer bunlar dışında bir sorun ile karşılaşıyorsanız yorum kısmında belirtebilirsiniz, elimden geldiğince yardımcı olmaya çalışırım.

etiketler: , , , , , , , ,