Domanda

Vorrei sapere dove vengono memorizzate le variabili gtid_executed e gtid_purged nel motore del database.Se queste sono solo variabili di runtime, quanto sono esattamente inizializzati?

È stato utile?

Soluzione

Non fanno parte di un particolare motore di archiviazione. Le variabili GTID possono essere visualizzate in esecuzione:

SHOW GLOBAL VARIABLES LIKE 'gtid%';
.

o

SELECT * FROM information_schema.global_variables
WHERE variable_name LIKE 'gtid%';
.

Quando si esegue RESET MASTER sul server DB, questi valori sono oscurati.

Documentazione mysql dice di gtid_executed < / P >.

.

Emissione di reset master Fa sì che il valore globale (ma non il valore della sessione) di questa variabile venga ripristinata a una stringa vuota. I GTID non sono altrimenti rimossi da questo set diverso da quando il set viene cancellato a causa del reset master. Il set viene cancellato anche se il server è spento e tutti i registri binari vengono rimossi.

Documentazione mysql dice di gtid_purged < / P >.

.

Emissione di reset master Cause il valore di questa variabile da ripristinare a una stringa vuota.

Quando vengono eseguite le istruzioni SQL, GTID_Executed viene aggiornato con il valore impostato GTID.

Documentazione mysql dice di gtid_executed < / P >.

.

Quando il server si avvia, @@ global.gtid_executed è inizializzato per l'unione dei seguenti due set:

    .
  • I GTID elencati nella precedente_GTIDS_LOG_Event del nuovo registro binario

  • i gtids trovati in ogni gtid_log_event nel nuovo registro binario.

Successivamente, i GTID vengono aggiunti alla serie come transazioni vengono eseguite.

gtid_purged può essere impostato solo quando è vuoto. Di solito, si imposta questo set di variabili durante il ricarica di un mysqldump la cui fonte ha abilitato GTID.

Altri suggerimenti

    .
  1. È necessario iniziare qui: Una visita guidata del codice sorgente MySQL
  2. Quindi è possibile cercare il codice sorgente MySQL su github per gtid_executed e gtid_purged
  3. Probabilmente avrai bisogno di fare un po 'di scavo, ma è così lontano che volevo andare, buona fortuna.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top