Untuk menyimpan output query MySQL ke dalam file teks, kita dapat menggunakan perintah OUTFILE
Mari kita membuat tabel terlebih dahulu
mysql> create table SaveintoTextFile -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.55 sec)Memasukkan record ke dalam tabel
mysql> insert into SaveintoTextFile values(1,'John'); Query OK, 1 row affected (0.44 sec) mysql> insert into SaveintoTextFile values(101,'Carol'); Query OK, 1 row affected (0.17 sec) mysql> insert into SaveintoTextFile values(3,'David'); Query OK, 1 row affected (0.14 sec _Untuk menampilkan semua catatan
mysql> select *from SaveintoTextFile;Inilah hasilnya
+------+-------+ | id | name | +------+-------+ | 1 | John | | 101 | Carol | | 3 | David | +------+-------+ 3 rows in set (0.00 sec)Berikut ini adalah sintaks untuk menampilkan hasil dalam file teks
SELECT col_name1,col_name2,.......N from yourTableName INTO OUTFILE "Path of my.cnf file- secure-file-priv "; _Mari kita terapkan sintaks di atas dalam kueri berikut. Di sini, file teks kita adalah “QueryOutput. txt"
mysql> SELECT id,name from SaveintoTextFile -> INTO OUTFILE "C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/QueryOutput.txt"; Query OK, 3 rows affected (0.02 sec)Untuk memeriksa apakah file teks dibuat atau tidak, periksa folder "Unggahan".
Sekarang, buka file teks. Teks akan terlihat di file seperti yang ditunjukkan pada tangkapan layar berikut
Saya mengalami masalah dengan situs web ini Rabu lalu, dan sebagai bagian dari pemecahan masalah, saya perlu melihat salah satu tabel database Drupal, khususnya tabel watchdog. Tabel ini memiliki ribuan catatan di dalamnya, dan saya tidak dapat menemukan apa yang saya butuhkan dengan kueri SQL SELECT, jadi saya akhirnya menggali dokumentasi MySQL, dan menemukan bahwa saya dapat menyimpan keluaran dari kueri SELECT ke file teks
Dalam tutorial ini saya akan menunjukkan kepada Anda (a) cara menyimpan hasil kueri MySQL ke file teks, dan juga (b) cara mencatat seluruh sesi MySQL Anda ke file teks
Cara menyimpan output dari satu kueri MySQL ke file teks
Untuk menyimpan output dari kueri SQL SELECT_ ke file teks dengan MySQL, yang harus Anda lakukan hanyalah menggunakan sintaks "INTO OUTFILE" dari klien MySQL, seperti ini
mysql> select * from watchdog into outfile '/tmp/watchdog.out'; _Kueri ini membuat file teks biasa baru di direktori /tmp di sistem Linux saya bernama watchdog.out. File itu berisi keluaran dari kueri saya
Jika Anda hanya ingin mencatat keluaran dari satu kueri ke file teks dengan MySQL, hanya itu yang harus Anda lakukan
Cara mencatat output dari seluruh sesi klien MySQL
Jika Anda ingin mencatat keluaran dari lebih dari satu kueri -- baik seluruh sesi klien MySQL, atau bagian dari sesi -- akan lebih mudah menggunakan perintah MySQL mysql> tee /tmp/my.out; 0 untuk mengirim keluaran ke (a) konsol Anda dan (b)
Untuk memulai proses logging, cukup gunakan perintah mysql> tee /tmp/my.out; 0 pada prompt klien MySQL, seperti ini
mysql> tee /tmp/my.out;Perintah itu memberi tahu MySQL untuk mencatat input dan output dari sesi login MySQL Anda saat ini ke file bernama mysql> tee /tmp/my.out; 2
Setelah Anda mengeluarkan perintah mysql> tee /tmp/my.out; _0 ini, Anda akan melihat respons MySQL seperti ini
Logging to file '/tmp/my.out'Saya baru saja memverifikasi ini dengan klien MySQL saya (versi 5. 0. x), dan berfungsi seperti yang diiklankan. Semua yang saya ketik, dan semua yang dicetak MySQL kembali kepada saya, disimpan ke file log saya
Ini pertanyaan dari salah satu pembaca reguler kami, Tn. Waseem. Dia ingin tahu cara mengarahkan output dari perintah MySQL source ke file log?
Saya menggunakan INTO OUTFILE dengan query SELECT di MySQL untuk menyimpan hasilnya ke dalam file. Namun, saya tidak dapat melakukan hal yang sama dengan perintah sumber. Saya ingin mengarahkan output dari perintah sumber MySQL ke file log?
Nah, inilah jawaban atas pertanyaan Waseem
Bagaimana cara mengarahkan output dari perintah sumber MySQL ke file log?
Umumnya, klausa INTO digunakan bersama dengan kueri SELECT untuk memungkinkan hasil disimpan dalam variabel atau file. Sintaksnya seperti di bawah ini
Namun, klausa INTO tidak dapat digunakan dengan perintah source. Jadi jika Anda ingin mengarahkan output dari perintah MySQL source menjadi file log, maka Anda perlu menggunakan 'mysql> tee log.out Logging to file 'log.out' mysql>1'. Begini cara kerjanya
Langkah 1. Masuk ke MySQL
Langkah 2. Di prompt perintah MySQL, ketik perintah di bawah ini
mysql> tee log.out Logging to file 'log.out' mysql>Anda akan melihat pesan "Logging to file" ditampilkan di layar
Langkah 3. Sekarang, sumber file SQL
mysql> source sample.sqlLangkah 4. Keluaran dari perintah source akan dimasukkan ke dalam file mysql> tee log.out Logging to file 'log.out' mysql>3
Langkah 5. Lihat mysql> tee log.out Logging to file 'log.out' mysql>_3
$ more log.outItu dia
Mengapa Anda (atau Tn. Waseem) ingin mencatat output dari SQL sumber? . Sekarang bagaimana jika Anda ingin mengetahui catatan mana yang gagal selama impor?
Catatan. mysql> tee log.out Logging to file 'log.out' mysql>5 perintah dapat digunakan sebelum mengeksekusi pernyataan MySQL apa pun. Output dari kueri apa pun setelah mencatat sesi akan disimpan dalam file yang ditentukan