Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 13673|Απάντηση: 0

[Πηγή] Η MySQL ενεργοποιεί γενικά αρχεία καταγραφής ερωτημάτων και αργά αρχεία καταγραφής ερωτημάτων

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 19/3/2019 4:31:34 μ.μ. | | | |
Τα αρχεία καταγραφής στη MySQL περιλαμβάνουν: αρχεία καταγραφής σφαλμάτων, δυαδικά αρχεία καταγραφής, γενικά αρχεία καταγραφής ερωτημάτων, αργά αρχεία καταγραφής ερωτημάτων κ.λπ. Ακολουθούν δύο συναρτήσεις που χρησιμοποιούνται συνήθως: γενικό αρχείο καταγραφής ερωτημάτων και αργό αρχείο καταγραφής ερωτημάτων.

1) Αργά αρχεία καταγραφής ερωτημάτων:Καταγραφή όλων των ερωτημάτων που εκτελούνται για περισσότερο από long_query_time δευτερόλεπτα ή που δεν χρησιμοποιούν ευρετήρια

2) Γενικό αρχείο καταγραφής ερωτημάτων:Καταγράψτε τις συνδέσεις πελατών που δημιουργήθηκαν και εκτελέστηκαν προτάσεις.


1: Σχετικά με το αργό ερώτημα MySQL:
Πώς να ενεργοποιήσετε την αργή καταγραφή ερωτημάτων στη Mysql
https://www.itsvse.com/thread-1767-1-1.html
(Πηγή: Architect_Programmer)

Το αργό αρχείο καταγραφής ερωτημάτων της MySQL είναι ένα είδος καταγραφής που παρέχεται από τη MySQL, το οποίο χρησιμοποιείται για την καταγραφή δηλώσεων ότι ο χρόνος απόκρισης υπερβαίνει το όριο στη MySQL, αναφερόμενος συγκεκριμένα σε SQL με χρόνο εκτέλεσης μεγαλύτερο από long_query_time τιμή, η οποία θα καταγραφεί στο αργό αρχείο καταγραφής ερωτημάτων (τα αρχεία καταγραφής μπορούν να εγγραφούν σε αρχεία ή πίνακες βάσης δεδομένων, εάν οι απαιτήσεις απόδοσης είναι υψηλές, συνιστάται η εγγραφή αρχείων). Από προεπιλογή, η βάση δεδομένων MySQL δεν ενεργοποιεί αργά αρχεία καταγραφής ερωτημάτων και η προεπιλεγμένη τιμή του long_query_time είναι 10 (δηλαδή, 10 δευτερόλεπτα, συνήθως ορίζεται σε 1 δευτερόλεπτο), δηλαδή, οι δηλώσεις που εκτελούνται για περισσότερα από 10 δευτερόλεπτα είναι αργές δηλώσεις ερωτήματος.

Σε γενικές γραμμές, τα αργά ερωτήματα εμφανίζονται σε μεγάλους πίνακες (για παράδειγμα, ένας πίνακας έχει εκατομμύρια δεδομένα) και τα πεδία των συνθηκών ερωτήματος δεν ευρετηριάζονται, αυτή τη στιγμή, τα πεδία που ταιριάζουν με τις συνθήκες ερωτήματος θα σαρωθούν σε ολόκληρο τον πίνακα, κάτι που απαιτεί χρόνο για τον έλεγχο του long_query_time.

Είναι μια αργή δήλωση ερωτήματος.

Ερώτηση: Πώς μπορώ να ελέγξω την τρέχουσα κατάσταση ανοίγματος του αρχείου καταγραφής αργών ερωτημάτων;

Εισαγάγετε την εντολή στη MySQL:


Κατακτώνται κυρίως οι ακόλουθες παράμετροι:

(1) Η τιμή του slow_query_log είναι ON για την ενεργοποίηση του αργού αρχείου καταγραφής ερωτημάτων και OFF για την απενεργοποίηση του αργού αρχείου καταγραφής ερωτημάτων.

(2) Η τιμή του slow_query_log_file είναι το καταγεγραμμένο αρχείο καταγραφής αργών ερωτημάτων στο αρχείο (σημείωση: το προεπιλεγμένο όνομα είναι hostname.log, εάν το αρχείο καταγραφής αργών ερωτημάτων είναι γραμμένο στο καθορισμένο αρχείο, πρέπει να καθορίσετε τη μορφή καταγραφής εξόδου του αργού ερωτήματος ως αρχείο και η σχετική εντολή είναι: εμφάνιση μεταβλητών όπως '%log_output%'; για να δείτε τη μορφή της εξόδου).

(3) long_query_time καθορίζει το όριο για αργό ερώτημα, δηλαδή, εάν ο χρόνος εκτέλεσης υπερβαίνει αυτό το όριο, είναι μια αργή δήλωση ερωτήματος και η προεπιλεγμένη τιμή είναι 10 δευτερόλεπτα.

(4) log_queries_not_using_indexes Εάν η τιμή έχει οριστεί σε ON, όλα τα ερωτήματα που δεν χρησιμοποιούν το ευρετήριο θα καταγραφούν (Σημείωση: Εάν το log_queries_not_using_indexes έχει οριστεί μόνο σε ON και το slow_query_log έχει οριστεί σε OFF, η ρύθμιση δεν θα τεθεί σε ισχύ αυτήν τη στιγμή, δηλαδή, η ρύθμιση θα τεθεί σε ισχύ εάν η τιμή του slow_query_log έχει οριστεί σε ON) , το οποίο γενικά ενεργοποιείται προσωρινά όταν συντονίζεται η απόδοση.


2. Γενικό αρχείο καταγραφής ερωτημάτων

Εάν η τιμή του general_log είναιΤο ON είναι ενεργοποιημένο, γιαΤο OFF είναι κλειστό(Απενεργοποιημένο από προεπιλογή).

Ελέγξτε τη μορφή της τρέχουσας αργής εξόδου αρχείου καταγραφής ερωτημάτων, η οποία μπορεί να είναι ΑΡΧΕΙΟ (ένα hostname.log αποθηκευμένο σε αρχείο δεδομένων σε ψηφιακή βάση δεδομένων) ή ΠΙΝΑΚΑΣ (mysql.general_log αποθηκευμένο σε βάση δεδομένων)



(Σημείωση: Η παραπάνω εντολή ισχύει μόνο για την τρέχουσα ώρα, όταν οι επανεκκινήσεις της MySQL δεν είναι έγκυρες, εάν θέλετε να τεθεί σε ισχύ μόνιμα, πρέπει να ρυθμίσετε το my.cnf)

Η απόδοση της εξόδου καταγραφής έχει ως εξής:





my.cnf έχει διαμορφωθεί ως εξής:

general_log=1 #为1表示开启通用日志查询, η τιμή 0 υποδεικνύει ότι το γενικό ερώτημα καταγραφής έχει κλείσει

log_output=FILE,TABLE# Ορίζει τη μορφή εξόδου του γενικού αρχείου καταγραφής σε αρχείο και πίνακα





Προηγούμενος:C# Κλάση επέκτασης λειτουργίας τύπου απαρίθμησης C#
Επόμενος:Το Crypto-JS υπολογίζει την τιμή SHA256 του αρχείου
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com