phpPgAdmin mengekspor dump SQL kosong?

10

Saya mencoba untuk mengekspor database PostgreSQL dari phpPgAdmin dan untuk beberapa alasan itu membuang file SQL kosong.

Basis datanya jelas tidak kosong.

Untuk mengekspornya saya mengklik database, lalu mengekspor, lalu memilih struktur dan data.

Adakah yang tahu mengapa ini terjadi? Terima kasih

Probocop
sumber
2
Bisakah Anda mengekspor database yang sama menggunakan nama pengguna yang sama dari baris perintah?
Khaled
Log juga akan relevan di sini (Apache, dan log phppgAdmin jika menggunakannya). Mungkin ada kesalahan dalam ekspor.
Andrew M.
Saya berhasil mengekspornya dari baris perintah, saya rasa ada semacam kesalahan di phpPgAdmin saya. Terima kasih!
Probocop

Jawaban:

8

Anda perlu memodifikasi dbexport.php Anda di / usr / share / phppgadmin (di Ubuntu)

ubah baris dari passthru($cmd);untuk echo passthru($cmd); mengubah garis $cmd = $exe . " -i";ke$cmd = $exe;

itu sudah cukup. Karena parameter -isepertinya sudah tidak digunakan lagi di postgres 9.5, dia memberi kesalahan untuk saya.

Bayangan
sumber
1
Ternyata rilis terakhir PhpPgAdmin adalah dari 2013. Namun, ada repo github.com/phppgadmin/phppgadmin di mana ia masih dipertahankan (kurang lebih) dan komit terakhir di cabang master sudah memiliki masalah ini diselesaikan - the cara Anda menggambarkan.
Forseti
Senang mendengar jika masih dicetak dan diselesaikan masalah kecil ini! :) Namun saya tidak menggunakannya sekarang (punya saya sendiri, ditulis dalam java)
Shadow
1

Saya berhasil mengekspornya dari baris perintah menggunakan:

./pg_dump -U postgres -c -f /htdocs/databasename.sql databasename
Probocop
sumber
3
Anda mungkin tidak ingin membuang db ke webroot, bahkan jika Anda mengaburkan namanya.
Dana the Sane
1

Saya memiliki masalah yang sama dan memeriksa log saya:

/usr/lib/postgresql/8.4/bin/pg_dump: invalid option -- 'd'
Try "pg_dump --help" for more information.

phpPgAdmin menggunakan opsi -d, yang sudah tidak digunakan lagi pada tahun 2009, jadi saya mengedit dbexport.php dan mengganti "-d" dengan "--inserts", sekarang berfungsi dengan baik: D!

http://archives.postgresql.org/message-id/[email protected]

Jose
sumber
Dalam instalasi phpPgAdmin saya, saya sudah --insertsdan belum -dtetapi masih mendapat file kosong.
JustAMartin
0

Di antarmuka ekspor, pilih jenis ekspor "SQL" yang akan mengembalikan file kosong. Memilih "tipe ekspor" sebagai "SALINAN" adalah pilihan yang tepat di sini - ini mengembalikan file sql dump.

Tapi saya juga berpikir bahwa phppgadmin cukup menyebalkan bagi kita untuk menggunakan baris perintah saja. Misalnya, itu akan gagal tetapi tidak melaporkan kesalahan jika Anda mengunggah file sql melebihi ukuran file unggahan yang diizinkan (sering ~ 2MB).

Hoàng Long
sumber