Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Buang semua tabel dalam format CSV menggunakan 'mysqldump'

Pertama, saya bisa memberikan jawaban untuk satu tabel:

Masalah dengan semua INTO OUTFILE ini atau --tab=tmpfile (dan -T/path/to/directory ) jawabannya adalah perlu menjalankan mysqldump di server yang sama sebagai server MySQL, dan memiliki hak akses tersebut.

Solusi saya hanya menggunakan mysql (tidak mysqldump ) dengan -B parameter, sebariskan pernyataan SELECT dengan -e , lalu pijat output ASCII dengan sed , dan diakhiri dengan CSV termasuk baris bidang header:

Contoh:

 mysql -B -u username -p password database -h dbhost -e "SELECT * FROM accounts;" \
 | sed "s/\"/\"\"/g;s/'/\'/;s/\t/\",\"/g;s/^/\"/;s/$/\"/;s/\n//g"

"id", "login", "password", "folder", "email" "8", "mariana", "xxxxxxxxxx", "mariana","""3", "squaredesign", "xxxxxxxxxxxxxxxxx"," squaredesign","[email protected] ""4","miedziak","xxxxxxxxxx","miedziak","contoh@sqldat .com ""5",,"Sarko",,"xxxxxxxxx",,"Sarko","""6",,"LogitransPolandia",,"xxxxxxxxxxxxxxxxx",,"LogitransPolandia","""7",,"Amos",,"xxxxxxxxxxxxxxxxxxxx"," Amos","""9",,"Annabelle",,"xxxxxxxxxxxxxxxx",,"Annabelle","""11",,"Brandfathers and Sons",,"xxxxxxxxxxxxxxxxx",,"BrandfathersAndSons",,"""12",,"ImagineGroup", "xxxxxxxxxxxxxxxx",,"ImagineGroup","""13",,"EduSquare.pl",,"xxxxxxxxxxxxxxxxx",,"EduSquare.pl","""101",,"tmp",,"xxxxxxxxxxxxxxxxxxxxx",,"_","contoh sqldat.com "

Tambahkan > outfile.csv di akhir one-liner itu, untuk mendapatkan file CSV Anda untuk tabel itu.

Selanjutnya, dapatkan daftar semua meja Anda dengan

mysql -u username -ppassword dbname -sN -e "SHOW TABLES;"

Dari sana, hanya satu langkah lagi untuk membuat loop, misalnya, di shell Bash untuk mengulangi tabel tersebut:

 for tb in $(mysql -u username -ppassword dbname -sN -e "SHOW TABLES;"); do
     echo .....;
 done

Antara do dan ; done masukkan perintah panjang yang saya tulis di Bagian 1 di atas, tetapi ganti nama tabel Anda dengan $tb sebagai gantinya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat menggunakan koneksi MySQL untuk kerangka entitas 6

  2. sql bergabung sebagai diagram venn

  3. MySQL – Kesalahan Koneksi – [MySQL][ODBC 5.3(w) Driver]Host 'IP' Tidak Diizinkan Terhubung ke Server MySQL ini

  4. Bagaimana cara melewati kolom dalam file CSV saat mengimpor ke tabel MySQL menggunakan LOAD DATA INFILE?

  5. Cara Menemukan Kode ASCII untuk Karakter tertentu di MySQL