Ini adalah perintah pt-fingerprintp yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
pt-fingerprint - Ubah kueri menjadi sidik jari.
RINGKASAN
Penggunaan: pt-sidik jari [OPTIONS] [FILES]
pt-fingerprint mengubah kueri menjadi sidik jari. Dengan opsi --query, konversikan
nilai opsi menjadi sidik jari. Tanpa opsi, perlakukan argumen baris perintah sebagai
FILE dan membaca serta mengonversi kueri yang dipisahkan titik koma dari FILE. Ketika FILE adalah -,
itu membaca input standar.
Mengonversi satu kueri:
pt-fingerprint --query "pilih a, b, c dari pengguna di mana id = 500"
Mengonversi file yang penuh dengan kueri:
pt-sidik jari /path/ke/file.txt
RISIKO
Percona Toolkit sudah matang, terbukti di dunia nyata, dan teruji dengan baik, tetapi semua basis data
alat dapat menimbulkan risiko bagi sistem dan server database. Sebelum menggunakan alat ini,
mohon untuk:
· Baca dokumentasi alat ini
· Tinjau "BUGS" alat yang dikenal
· Uji alat di server non-produksi
· Cadangkan server produksi Anda dan verifikasi cadangannya
DESKRIPSI
Sidik jari kueri adalah bentuk abstrak dari kueri, yang memungkinkan pengelompokan
pertanyaan serupa bersama-sama. Mengabstraksi kueri menghapus nilai literal, menormalkan
spasi, dan sebagainya. Misalnya, pertimbangkan dua kueri ini:
PILIH nama, kata sandi FROM pengguna WHERE id='12823';
pilih nama, kata sandi dari pengguna
di mana id=5;
Kedua pertanyaan itu akan sidik jari ke
pilih nama, kata sandi dari pengguna di mana id =?
Setelah sidik jari kueri diketahui, kita kemudian dapat membicarakan kueri seolah-olah itu
mewakili semua kueri serupa.
Sidik jari kueri mengakomodasi banyak kasus khusus, yang terbukti perlu
di dunia nyata. Misalnya, daftar IN dengan 5 literal benar-benar setara dengan satu
dengan 4 literal, jadi daftar literal diciutkan menjadi satu. Jika Anda menghendaki
memahami lebih lanjut tentang bagaimana dan mengapa semua kasus ini ditangani, silakan tinjau tesnya
kasus di repositori Subversion. Jika Anda menemukan sesuatu yang tidak memiliki sidik jari
dengan benar, harap kirimkan laporan bug dengan kasus uji yang dapat direproduksi. Berikut adalah daftar
transformasi selama sidik jari, yang mungkin tidak lengkap:
· Kelompokkan semua kueri SELECT dari mysqldump bersama-sama, meskipun mereka bertentangan
tabel. Begitu juga untuk semua kueri checksum pt-table-checksum.
· Persingkat pernyataan INSERT multi-nilai menjadi satu NILAI() daftar.
· Hapus komentar.
· Abstrak database dalam pernyataan USE, sehingga semua pernyataan USE dikelompokkan bersama.
· Ganti semua literal, seperti string yang dikutip. Untuk efisiensi, kode yang menggantikan
angka literal agak non-selektif, dan mungkin menggantikan beberapa hal sebagai angka
ketika mereka benar-benar tidak. Literal heksadesimal juga diganti. NULL diperlakukan sebagai
sebuah literal. Angka yang disematkan di pengidentifikasi juga diganti, jadi tabel bernama
sama akan sidik jari ke nilai yang sama (misalnya users_2009 dan users_2010
akan sidik jari identik).
· Ciutkan semua spasi putih menjadi satu spasi.
· Huruf kecil seluruh kueri.
· Ganti semua literal di dalam DI DALAM() dan NILAI() daftar dengan satu placeholder,
terlepas dari kardinalitas.
· Ciutkan beberapa kueri UNION yang identik menjadi satu.
PILIHAN
Alat ini menerima argumen baris perintah tambahan. Lihat "SINOPSIS" dan penggunaan
informasi untuk rincian.
--konfigurasi
jenis: Array
Baca daftar file konfigurasi yang dipisahkan koma ini; jika ditentukan, ini harus menjadi yang pertama
pilihan pada baris perintah.
--membantu
Tunjukkan bantuan dan keluar.
--match-embedded-number
Mencocokkan angka yang disematkan dalam kata-kata dan menggantinya sebagai nilai tunggal. Pilihan ini menyebabkan
alat untuk lebih berhati-hati dalam mencocokkan angka sehingga kata-kata dengan angka, seperti
"catch22" dicocokkan dan diganti sebagai "?" pengganti. Jika tidak,
pola pencocokan nomor default akan menggantikan "catch22" sebagai "catch?".
Ini berguna jika database atau nama tabel berisi angka.
--match-md5-checksum
Cocokkan checksum MD5 dan ganti sebagai nilai tunggal. Opsi ini menyebabkan alat menjadi
lebih berhati-hati dalam mencocokkan angka sehingga checksum MD5 suka
"fbc5e685a5d3d45aa1d0347fdb7c4d35" dicocokkan dan diganti sebagai "?"
pengganti. Jika tidak, pola pencocokan nomor default akan diganti
"fbc5e685a5d3d45aa1d0347fdb7c4d35" as "fbc?".
--pertanyaan
jenis: string
Query untuk diubah menjadi sidik jari.
--Versi: kapan
Tampilkan versi dan keluar.
LINGKUNGAN
Variabel lingkungan "PTDEBUG" memungkinkan keluaran debugging verbose ke STDERR. Untuk mengaktifkan
debugging dan tangkap semua output ke file, jalankan alat seperti:
PTDEBUG=1 pt-sidik jari ... > FILE 2>&1
Hati-hati: keluaran debug sangat banyak dan dapat menghasilkan beberapa megabita keluaran.
PELACAKAN PENGIRIMAN PERSYARATAN
Anda memerlukan Perl, DBI, DBD::mysql, dan beberapa paket inti yang harus diinstal di
versi Perl yang cukup baru.
Gunakan pt-fingerprintp online menggunakan layanan onworks.net
