sql >> Databasteknik >  >> RDS >> Mysql

Hur hämtar man data från binär loggfil och infogar i vår önskade tabell i MySQL?

Om du pratar om den binära MySQL-loggfilen (mysql-bin), var den inte designad för att läsas av något annat än MySQL - det är en transaktionsloggfil. Data i loggfilen kommer för det mesta redan att finnas i din databas när du läser den.

Om du redigerar ditt svar för att ge mer information om vad det är du försöker uppnå, kanske du får ett bättre svar och en bättre lösning.

EDIT:

Att analysera den binära loggfilen kommer att ge dig mer huvudvärk - det är en intern fil för MySQL och är känd för att ändras mellan utgåvor. Den ändrar också format beroende på hur servern är konfigurerad (radbaserat/satsbaserat/blandat format.) Serveradministratörer kan också inaktivera binär loggning helt.

Om du kan ta prestandaträffen kanske du är bättre av att logga alla frågor - du kan få dessa skrivna till en fil eller till och med till en databastabell (även om det i tidiga versioner av MySQL 5.1 fanns allvarliga prestandaträffar för detta; det kan fortfarande vara fallet.) Detta loggar alla SQL-frågor som tas emot från klienter, så att du kan leta efter CREATE TABLE fråga och alla uttalanden som ändrar data i denna tabell.

http://dev.mysql.com/doc/refman /5.1/sv/query-log.html




  1. cursor.execute(INSERT INTO im_entry.test (+entrym+) VALUES ('+p+');)

  2. sql-fråga för att välja post med samma id men olika värde i två kolumner

  3. GETUTCDATE() Exempel i SQL Server (T-SQL)

  4. Distribuera och hantera MySQL NDB Cluster med ClusterControl