Bir PHP komut dosyası kullanarak bir sql dosyasına bir postgres veritabanının yedeğini oluşturmak nasıl?

2 Cevap php

Ben şu durum var.

Ben bir CSV dosyası alır ve sonra postgres veritabanını günceller bir PHP komut dosyası var

Şimdi ithal oluşmadan önce veritabanının yedeğini oluşturmak gerekiyor

PHP dosyaları başka bir sunucuya bir sunucudan ve Postgres üzerinde çalışan

Ben denedim exec(pg_dump db_name -CdiOv > /tmp/db_name_backup.sql) fakat db başka bir sunucuda olduğundan bu çalışacağını sanmıyorum.

Ben yedek performans PHP kodu sağa ama takles yaş çalıştırmak için olabilir, bunu nasıl emin değilim.

Herhangi bir adwise takdir edilecektir

2 Cevap

Depesz söylediğim gibi uzak ana makine tanımlamak için ama yine de sorunun bir şifre soracaktır-h seçeneğini kullanmanız gerekir. Deneyin:

exec("export PGPASSWORD=mypassword && export PGUSER=myuser && pg_dump -h yourremotehost db_name -CdiOv > /tmp/db_name_backup.sql && unset PGPASSWORD && unset PGUSER");

Alternatif bir ~ /. Pgpass dosyasını kullanabilirsiniz ama bu hiç denemedim. http://www.issociate.de/board/post/43225/pg%5Fdump%5F+%5Fcronjob.html ve http://forum.soft32.com/linux/Backup-Postgressql-ftopict460054.html Çıkış

pg_dump kolayca uzak ana bilgisayara bağlanmak - sadece check-h seçeneği.

Ayrıca - ne "-CdiOv" şey tarafından elde etmek istiyorsunuz?