github / github/gh-ost

Disable the ChangeLog table binlog

Open
#797 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
13.6k
Forks
1.4k
Avg merge
2h 31m
Merged PRs (30d)
4

Description

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).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.