Domanda

Vorrei sapere se è possibile utilizzando MySQL binario di registro per registrare UID (username) degli utenti che effettuano modifiche al DB.

Ciò è necessario al fine di revisione.

È possibile?

È stato utile?

Soluzione

Non è quello che il log binario è per -. Il log binario tiene traccia di tutte le modifiche apportate a un database, di solito ai fini della replica e il ripristino

Una possibile alternativa potrebbe essere il generale log delle query credo che include il nome utente in qualche modo.

Questo è tutto supponendo che si sta parlando di nomi utente effettivi di connessione, non qualche arbitraria "utente" nella vostra applicazione.

Ecco un esempio che ho appena tirato da uno dei miei log:

111130 13:46:50   130 Connect   myusername@localhost on
                  130 Init DB   mydatabase
                  130 Query     SELECT somefields FROM sometable
                  130 Query     SELECT somefields FROM sometable
                  130 Quit

Come si può vedere, si ottiene il nome utente di connessione, e quindi qualsiasi cosa con quel ID di connessione (in questo caso 130) è da quell'utente su tale connessione.

Altri suggerimenti

Binary log utilizzati principalmente per scopi di replica e che non consentono di memorizzare tutte le informazioni lato, tranne le modifiche dei dati.

Se si desidera memorizzare i log visualizzabili (perché log binari è stato progettato in questo modo che si può utilizzare solo mysql) è necessario avere tabella aggiuntiva per memorizzare:. Dati dalla tabella primaria + utente + tempo

Inoltre è possibile dare uno sguardo su Query Log

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top