Mengembalikan beberapa database MySQL dari satu file di baris perintah?

13

Saya telah mengekspor semua database saya ke file menggunakan phpMyAdmin.

Sayangnya saya tidak memiliki phpMyAdmin yang berfungsi di sistem tujuan saya.

Bagaimana saya harus mengembalikan semuanya sekaligus menggunakan satu perintah baris?

smhnaji
sumber
1
Apakah Anda melihat ke dalam file? Seharusnya / bisa berisi perintah untuk membuat dan beralih ke database sesuai kebutuhan.
Tom Regner
Ya, database dibuat dan kemudian mereka telah dipilih menggunakan USE database_nameperintah.
smhnaji
Maka jawaban Unni dan laurents benar.
Tom Regner

Jawaban:

18

Mengapa Anda tidak menggabungkan semua file menjadi satu file tunggal dan mengimpor / mengembalikan menggunakan

mysql -u username -p < dump.sql

Buat satu file menggunakan

mysqldump -u username -p --all-databases > dump.sql
devav2
sumber
OP sudah memiliki satu file dan dia perlu mengembalikan file sehingga dia tidak bisa membuangnya lagi saya kira.
laurent
@laurent Ya mengerti. Menggunakan mysql -u username -p < dump.sqlakan memuat beberapa database mysql.
devav2
ya, tentu itu akan
laurent
2
itu tidak bekerja untuk saya. katanya saya harus memilih databse
Aryeh Armon
3

Jika Anda mencadangkan banyak basis data ke 1 file, saya kira Anda mencadangkan create databasepernyataan dalam file yang sama. Jika tidak, Anda hanya perlu menambahkan create databasedan use databasepernyataan ke file Anda di tempat yang tepat.

Setelah itu, perintah untuk memuat file ke mysql adalah:

mysql -p < sqlfile.sql

-p adalah meminta kata sandi Anda.

Anda dapat menggunakan -u usernamejika Anda perlu menggunakan pengguna lain.

laurent
sumber
1

Perintah mysql untuk mengembalikan file sql adalah:

mysql DATABASE_NAME < SQL_FILENAME.sql

pertama pastikan file tersebut adalah sql. Jika diakhiri dengan ekstensi file gz, Anda perlu membuka kompresi menggunakan perintah:

gunzip SQL_FILE.sql.gz
Unni
sumber
1
-1. Seperti yang saya katakan di atas, ada beberapa database yang tersimpan dalam file dan saya ingin semuanya dikembalikan sekaligus.
smhnaji
dapatkah Anda mengekspor setiap basis data secara terpisah dalam phpmyadmin dan mengembalikannya di server sumber? atau gunakan editor aliran linux seperti sed atau awk untuk membaginya dalam file yang berbeda.
Unni
1
tidak perlu, ia dapat mengimpor semua database dari satu file
laurent