github / github/gh-ost

Disable the ChangeLog table binlog

Aperta
#797 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Go
Stelle
13.6k
Fork
1.4k
Merge medio
2h 31m
PR unite (30g)
4

Descrizione

I have tested this on my staging server. Some background about the setup:

1. Total MySQL Data Disk size = `1000GB`
2. Space consumed = `700+ GB`
3. Large file = `table_x.idb` file
4. Binlog files are stored in the same Location where my data files are there.
5. GTID enabled
6. row based replication.

Then I started migrating using the below command.
```
gh-ost \
--max-load=Threads_running=25 \
--critical-load=Threads_running=1000 \
--chunk-size=10000 \
--throttle-control-replicas="replica-ip-address" \
--max-lag-millis=50000 \
--user="bhuvi" \
--password="bhuvi@123" \
--host=replica-ip-address \
--database="mydatabase" \
--table="huge_table_nmae" \
--verbose \
--alter="engine=innodb" \
--switch-to-rbr \
--cut-over=default \
--exact-rowcount \
--concurrent-rowcount \
--default-retries=120 \
--panic-flag-file=/tmp/ghost.panic.flag \
--skip-foreign-key-checks \
--execute
```

within 3 hrs, the binlog files generated around 350+ files and the total size of all the binlog files is 150+ GB.

Now my data disk reached 100%.

Im just thinking in some rare cases, people don't have enough disk and no way to increase, it'll not suit. So is there any way that we can ignore the change log table or reduce the log (every X seconds log will go to this table).

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia con il comando di migrazione gh-ost e con il comportamento della replica basata sulle righe di MySQL e di binlog descritto qui. Determina se la tabella changelog può essere disabilitata o se è possibile ridurne la frequenza di scrittura senza interrompere la migrazione, quindi verifica l’utilizzo risultante di binlog e del disco in un ambiente di staging comparabile.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
go, mysql
Ambito
databases
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.