bitsCN.com
通过BINLOG日志查找指定日期的SQL语句
在95数据库服务器查找posts.post_thread的postid=1652971,在 2013-02-24 日执行的对数据有修改的SQL语句
www.bitsCN.com
# grep datadir /etc/mysql/my.cnf
datadir = /ssd/mysql
# cd /ssd/mysql
# mysql -A -e "show master status " | awk 'NR==2{print $1}' | awk -F. '{print $1}'
mysqld-bin 这里的内容为mysqlbinlog日志的前缀,因为如果是从数据库,还会有replylog.
找Binlog日志,取前一天的最后一个日志,以及24号创建的所有的日志
# ls –l
…
-rw-rw---- 1 mysql mysql 1075302338 Feb 22 04:00 mysqld-bin.000035
-rw-rw---- 1 mysql mysql 1092104643 Feb 22 14:10 mysqld-bin.000036
-rw-rw---- 1 mysql mysql 1073742083 Feb 23 00:06 mysqld-bin.000037
-rw-rw---- 1 mysql mysql 1073742129 Feb 23 05:26 mysqld-bin.000038
-rw-rw---- 1 mysql mysql 1073742102 Feb 23 15:30 mysqld-bin.000039
-rw-rw---- 1 mysql mysql 1073742095 Feb 24 01:36 mysqld-bin.000040
-rw-rw---- 1 mysql mysql 1076478877 Feb 24 09:00 mysqld-bin.000041
-rw-rw---- 1 mysql mysql 1087015180 Feb 24 15:00 mysqld-bin.000042
-rw-rw---- 1 mysql mysql 1073742090 Feb 25 01:31 mysqld-bin.000043
-rw-rw---- 1 mysql mysql 1073742037 Feb 25 08:47 mysqld-bin.000044
-rw-rw---- 1 mysql mysql 1073741919 Feb 25 15:45 mysqld-bin.000045
-rw-rw---- 1 mysql mysql 1073742218 Feb 26 03:36 mysqld-bin.000046
-rw-rw---- 1 mysql mysql 689342483 Feb 26 09:45 mysqld-bin.000047
…
这个时候我们需要分析的binlog日志为mysqld-bin.0000{39,4[0-2]}
# ls mysqld-bin.0000{39,4[0-2]}
mysqld-bin.000039 mysqld-bin.000040 mysqld-bin.000041 mysqld-bin.000042
# cat /root/findsql.sh
#!/bin/bash
BINLOGDIR=`cat /etc/mysql/my.cnf | grep datadir | awk '{print $3}'`
MYSQL="/usr/bin/mysql -A -e "
DATABASE="posts"
cd "${BINLOGDIR}"
BINLOGS=`ls mysqld-bin.0000{39,4[0-2]}`
for i in ${BINLOGS}
do
${MYSQL} "show binlog events in '${i}'" | grep "Query">>"${BINLOGDIR}/${i}.sql"
done
# chmod 755 /root/findsql.sh
先把binlog日志导出来,别做任何修改。至少这样的语句我们就认识了,然后再来搜索我们需要的语句。 www.bitsCN.com
# /root/findsql.sh
# ls mysqld-bin.0000{39,4[0-2]}.sql
mysqld-bin.000039.sql mysqld-bin.000041.sql
mysqld-bin.000040.sql mysqld-bin.000042.sql
在这些SQL中对数据进行筛选,这里的筛选需要看你自己的能力了,
会awk sed grep这三个就够了,awk建议必会。grep平时用的也特别多,应该不难。
# cat /root/parsesql.sh
#!/bin/bash
for i in `ls mysqld-bin.0000{39,4[0-2]}.sql`
do
awk -F 'use `posts`; ' '{print $2}' $i | grep -v 'chapterclick=chapterclick' | grep -v 'novelscore=novelscore' | grep 1652971 >> 1652971.sql
echo $i
done
# chmod 755 /root/parsesql.sh
# /root/parsesql.sh
1652971.sql这个里面的内容就是我们最后的成果
bitsCN.com

Untuk mengoptimumkan pertanyaan perlahan MySQL, SlowQuerylog dan Performance_Schema perlu digunakan: 1. Dayakan SlowQueryLog dan tetapkan ambang untuk merakam pertanyaan perlahan; 2. Gunakan Performance_Schema untuk menganalisis butiran pelaksanaan pertanyaan, cari kesesakan prestasi dan mengoptimumkan.

MySQL dan SQL adalah kemahiran penting untuk pemaju. 1.MYSQL adalah sistem pengurusan pangkalan data sumber terbuka, dan SQL adalah bahasa standard yang digunakan untuk mengurus dan mengendalikan pangkalan data. 2.MYSQL menyokong pelbagai enjin penyimpanan melalui penyimpanan data yang cekap dan fungsi pengambilan semula, dan SQL melengkapkan operasi data yang kompleks melalui pernyataan mudah. 3. Contoh penggunaan termasuk pertanyaan asas dan pertanyaan lanjutan, seperti penapisan dan penyortiran mengikut keadaan. 4. Kesilapan umum termasuk kesilapan sintaks dan isu -isu prestasi, yang boleh dioptimumkan dengan memeriksa penyataan SQL dan menggunakan perintah menjelaskan. 5. Teknik pengoptimuman prestasi termasuk menggunakan indeks, mengelakkan pengimbasan jadual penuh, mengoptimumkan operasi menyertai dan meningkatkan kebolehbacaan kod.

MySQL Asynchronous Master-Slave Replikasi membolehkan penyegerakan data melalui binlog, meningkatkan prestasi baca dan ketersediaan yang tinggi. 1) Rekod pelayan induk berubah kepada binlog; 2) Pelayan hamba membaca binlog melalui benang I/O; 3) Server SQL Thread menggunakan binlog untuk menyegerakkan data.

MySQL adalah sistem pengurusan pangkalan data sumber terbuka. 1) Buat Pangkalan Data dan Jadual: Gunakan perintah Createdatabase dan Createtable. 2) Operasi Asas: Masukkan, Kemas kini, Padam dan Pilih. 3) Operasi lanjutan: Sertai, subquery dan pemprosesan transaksi. 4) Kemahiran Debugging: Semak sintaks, jenis data dan keizinan. 5) Cadangan Pengoptimuman: Gunakan indeks, elakkan pilih* dan gunakan transaksi.

Pemasangan dan operasi asas MySQL termasuk: 1. Muat turun dan pasang MySQL, tetapkan kata laluan pengguna root; 2. Gunakan arahan SQL untuk membuat pangkalan data dan jadual, seperti CreateTatabase dan Createtable; 3. Melaksanakan operasi CRUD, gunakan memasukkan, pilih, kemas kini, padamkan arahan; 4. Buat indeks dan prosedur tersimpan untuk mengoptimumkan prestasi dan melaksanakan logik kompleks. Dengan langkah -langkah ini, anda boleh membina dan mengurus pangkalan data MySQL dari awal.

Innodbbufferpool meningkatkan prestasi pangkalan data MySQL dengan memuatkan data dan halaman indeks ke dalam ingatan. 1) Halaman data dimuatkan ke dalam bufferpool untuk mengurangkan cakera I/O. 2) Halaman kotor ditandakan dan disegarkan ke cakera secara teratur. 3) Pengurusan Data Pengurusan Algoritma LRU Penghapusan. 4) Mekanisme pembacaan memuatkan halaman data yang mungkin terlebih dahulu.

MySQL sesuai untuk pemula kerana mudah dipasang, kuat dan mudah untuk menguruskan data. 1. Pemasangan dan konfigurasi mudah, sesuai untuk pelbagai sistem operasi. 2. Menyokong operasi asas seperti membuat pangkalan data dan jadual, memasukkan, menanyakan, mengemas kini dan memadam data. 3. Menyediakan fungsi lanjutan seperti menyertai operasi dan subqueries. 4. Prestasi boleh ditingkatkan melalui pengindeksan, pengoptimuman pertanyaan dan pembahagian jadual. 5. Sokongan sokongan, pemulihan dan langkah keselamatan untuk memastikan keselamatan data dan konsistensi.

Pengimbasan jadual penuh mungkin lebih cepat dalam MySQL daripada menggunakan indeks. Kes -kes tertentu termasuk: 1) jumlah data adalah kecil; 2) apabila pertanyaan mengembalikan sejumlah besar data; 3) Apabila lajur indeks tidak selektif; 4) Apabila pertanyaan kompleks. Dengan menganalisis rancangan pertanyaan, mengoptimumkan indeks, mengelakkan lebih banyak indeks dan tetap mengekalkan jadual, anda boleh membuat pilihan terbaik dalam aplikasi praktikal.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini