Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 13673|Antwoord: 0

[Bron] MySQL maakt generieke querylogs en trage querylogs mogelijk

[Link kopiëren]
Geplaatst op 19-03-2019 16:31:34 | | | |
Logs in MySQL omvatten: foutlogs, binaire logs, generieke querylogs, trage querylogs, enzovoort. Hier zijn twee veelgebruikte functies: algemeen querylog en langzaam querylog.

1) Trage querylogs:Log alle queries die langer dan long_query_time seconden worden uitgevoerd of die geen indexen gebruiken

2) Algemeen querylogboek:Noteer de klantverbindingen die zijn gemaakt en uitgevoerd in opdrachten.


1: Over de langzame MySQL-query:
Hoe je langzame querylogging in Mysql inschakelt
https://www.itsvse.com/thread-1767-1-1.html
(Bron: Architect_Programmer)

MySQL's slow query log is een soort logging die door MySQL wordt geleverd, en gebruikt om instructies vast te leggen dat de responstijd de drempel in MySQL overschrijdt, specifiek verwijzend naar SQL met een looptijd van meer dan long_query_time waarde, die wordt vastgelegd in het slow querylog (logs kunnen naar bestanden of databasetabellen worden geschreven; als de prestatie-eisen hoog zijn, wordt aanbevolen bestanden te schrijven). Standaard schakelt de MySQL-database geen langzame querylogs in, en de standaardwaarde van de long_query_time is 10 (d.w.z. 10 seconden, meestal ingesteld op 1 seconde), dat wil zeggen, statements die langer dan 10 seconden draaien zijn trage query-instructies.

Over het algemeen komen langzame zoekopdrachten voor in grote tabellen (bijvoorbeeld een tabel heeft miljoenen data), en de velden van de zoekvoorwaarden worden niet geïndexeerd; op dit moment worden de velden die overeenkomen met de zoekvoorwaarden in de hele tabel gescand, wat tijd kost om de long_query_time te controleren.

Het is een langzame query-instructie.

Vraag: Hoe kan ik de huidige openingsstatus van het langzame querylogboek controleren?

Voer het commando in MySQL in:


De volgende parameters zijn voornamelijk beheerst:

(1) De waarde van slow_query_log is AAN om het langzame querylogboek aan te zetten, en UIT is om het langzame querylogboek uit te schakelen.

(2) De waarde van slow_query_log_file is het vastgelegde trage querylog naar het bestand (let op: de standaardnaam is hostname.log, of het langzame querylog nu naar het opgegeven bestand is geschreven, je moet het outputlogformaat van de langzame query als bestand specificeren, en het bijbehorende commando is: toon variabelen zoals '%log_output%'; om het formaat van de output te zien).

(3) long_query_time specificeert de drempel voor een langzame query, dat wil zeggen, als de uitvoeringstijd deze drempel overschrijdt, is het een slow query-instructie, en de standaardwaarde is 10 seconden.

(4) log_queries_not_using_indexes Als de waarde op AAN staat, worden alle queries die de index niet gebruiken geregistreerd (Opmerking: Als de log_queries_not_using_indexes alleen op AAN staat en de slow_query_log op UIT, treedt de instelling op dat moment niet in werking, dat wil zeggen, de instelling treedt in werking als de waarde van de slow_query_log op AAN staat) , die meestal tijdelijk wordt ingeschakeld wanneer de uitvoering wordt afgestemd.


2. Algemeen querylogboek

Als de waarde van general_log isON is aan, voorUIT is gesloten(Standaard uit).

Controleer het formaat van de huidige trage querylog-uitvoer, die FILE kan zijn (een hostname.log opgeslagen in een databestand in een digitale database) of een TABLE (mysql.general_log opgeslagen in een database)



(Opmerking: Het bovenstaande commando is alleen effectief voor het huidige moment, wanneer MySQL-herstarts ongeldig zijn; als je wilt dat het permanent van kracht wordt, moet je my.cnf configureren)

De weergave van de log-uitvoer is als volgt:





Het my.cnf-bestand is als volgt geconfigureerd:

general_log=1 #为1表示开启通用日志查询, geeft een waarde van 0 aan dat de generieke logzoekopdracht gesloten is

log_output=FILE,TABLE# Stelt het uitvoerformaat van het algemene logboek in op bestand en tabel





Vorig:C# Enum enum type operatie-uitbreidingsklasse
Volgend:crypto-js berekent de sha256-waarde van het bestand
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com