yah tidak semua , penekanan terjadi untuk beberapa yang mengandung string seperti "password".
mckenzm
1
Biasanya juga tidak up-to-date dengan MySQL CLI Anda yang terbuka sehingga Anda mungkin harus menggunakan exitMySQL kemudian membaca file tersebut.
Joel Mellon
1
Ini hanya menampilkan perintah yang dijalankan oleh pengguna yang login.
Christia
1
Bagaimana melakukan ini di jendela
ßiansor Å. Ålmerol
Apakah ada kemungkinan bahwa perintah lain ditekan atau tidak berurutan? Dan, apakah log memperbarui dirinya sendiri dalam waktu nyata?
Drubio
32
Untuk MySQL> 5.1.11 atau MariaDB
SET GLOBAL log_output = 'TABLE';
SET GLOBAL general_log = 'ON';
Lihat tabel mysql.general_log
Jika Anda ingin menampilkan file log:
SET GLOBAL log_output = "FILE";
SET GLOBAL general_log_file = "/path/to/your/logfile.log"
SET GLOBAL general_log = 'ON';
Seperti disebutkan oleh jeffmjack dalam komentar, pengaturan ini akan dilupakan sebelum sesi berikutnya kecuali Anda mengedit file konfigurasi (mis. /etc/mysql/my.cnf , kemudian restart untuk menerapkan perubahan).
Sekarang, jika Anda mau, Anda bisa tail -f /var/log/mysql/mysql.log
Hanya beberapa klarifikasi di atas: Perintah salin-tempel di sini adalah untuk satu sesi MySQL, misalnya Anda dapat memasukkannya dari baris perintah MySQL interaktif. Jika Anda ingin ini menjadi fitur permanen pada instance MySQL Anda, Anda perlu meletakkan perintah tersebut di /etc/mysql/my.cnf dan memulai ulang layanan MySQL.
jeffmjack
Perhatikan juga bahwa logging akan berhenti jika /path/to/your/logfile.logdihapus, sampai Anda mengeksekusi SET GLOBAL general_log_file = "/path/to/your/logfile.log";lagi (atau mungkin memulai ulang sesi jika Anda mengedit konfigurasi?).
Lihat di ~/.myslgui/query-browser/history.xml
sini Anda dapat menemukan kueri terakhir yang dibuat dengan mysql_query_browser
(beberapa hari yang lalu)
Tetapi MySQL Query Browser kemungkinan besar memiliki daftar kueri yang dijalankannya sendiri, di luar mesin MySQL. Anda harus melakukan hal yang sama di aplikasi Anda.
Jawaban:
mencoba
ini akan menunjukkan kepada Anda semua perintah mysql yang dijalankan pada sistem
sumber
exit
MySQL kemudian membaca file tersebut.Untuk MySQL> 5.1.11 atau MariaDB
SET GLOBAL log_output = 'TABLE';
SET GLOBAL general_log = 'ON';
mysql.general_log
Jika Anda ingin menampilkan file log:
SET GLOBAL log_output = "FILE";
SET GLOBAL general_log_file = "/path/to/your/logfile.log"
SET GLOBAL general_log = 'ON';
Seperti disebutkan oleh jeffmjack dalam komentar, pengaturan ini akan dilupakan sebelum sesi berikutnya kecuali Anda mengedit file konfigurasi (mis.
/etc/mysql/my.cnf
, kemudian restart untuk menerapkan perubahan).Sekarang, jika Anda mau, Anda bisa
tail -f /var/log/mysql/mysql.log
Info lebih lanjut di sini: Variabel Sistem Server
sumber
/path/to/your/logfile.log
dihapus, sampai Anda mengeksekusiSET GLOBAL general_log_file = "/path/to/your/logfile.log";
lagi (atau mungkin memulai ulang sesi jika Anda mengedit konfigurasi?).(Linux) Buka Terminal Anda,
ctrl+alt+t
jalankan perintahAnda akan mendapatkan semua riwayat kueri mysql sebelumnya nikmati :)
sumber
Anda akan menemukannya di sana
Anda akan membuatnya dapat dibaca (tanpa pelarian) seperti ini:
sumber
Lihat di
~/.myslgui/query-browser/history.xml
sini Anda dapat menemukan kueri terakhir yang dibuat denganmysql_query_browser
(beberapa hari yang lalu)sumber
Anda dapat melihat riwayat dari ~ / .mysql_history. Namun konten file dikodekan oleh wctomb. Untuk melihat konten:
shell> cat ~ / .mysql_history | python2.7 -c "import sys; print (''. join ([l.decode ('unicode-escape') untuk l di sys.stdin]))"
Sumber: Periksa riwayat kueri MySQL dari baris perintah
sumber
Anda dapat melihat cache kueri: http://www.databasejournal.com/features/mysql/article.php/3110171/MySQLs-Query-Cache.htm tetapi mungkin tidak memberi Anda akses ke kueri yang sebenarnya dan akan sangat hit-and-miss jika berhasil (permainan kata-kata halus dimaksudkan)
Tetapi MySQL Query Browser kemungkinan besar memiliki daftar kueri yang dijalankannya sendiri, di luar mesin MySQL. Anda harus melakukan hal yang sama di aplikasi Anda.
Edit: lihat komentar dan m yang mengarah ke ini: Bagaimana cara menampilkan query terakhir yang dieksekusi di MySQL? terlihat terdengar.
sumber