https://www.digitalocean.com/community/tutorials/how-to-set-up-replication-in-mysql
[On Master]
CREATE USER 'slave_user'@'%' IDENTIFIED BY 'MjQyZTY1YzE4YWUyNjYzZDM4NjhlMT=_';
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%';
FLUSH PRIVILEGES;
[On Slave]
CHANGE REPLICATION SOURCE TO
SOURCE_HOST='ip',
SOURCE_PORT = 3306,
SOURCE_USER='slave_user',
SOURCE_PASSWORD='password',
GET_MASTER_PUBLIC_KEY=1,
SOURCE_AUTO_POSITION = 1;
START REPLICA;
###############################################################
[ON MASTER]
/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
default_authentication_plugin=mysql_native_password
skip-host-cache
skip-name-resolve
gtid_mode=ON
enforce_gtid_consistency=ON
max_connections = 50000
innodb_buffer_pool_size=16G
innodb_buffer_pool_instances=32
key_buffer_size = 16M
server-id = 1
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 20
log_bin = /var/log/mysql/mysql-bin.log
binlog_expire_logs_seconds = 2592000
max_binlog_size = 100M
sudo systemctl restart mysql
mysql -uroot -p
SHOW MASTER STATUS;
###################################################################
[ON SLAVE]
/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
default_authentication_plugin=mysql_native_password
skip-host-cache
skip-name-resolve
datadir = /var/lib/mysql
gtid_mode=ON
enforce_gtid_consistency=ON
key_buffer_size = 16M
server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
binlog_expire_logs_seconds = 2592000
max_binlog_size = 100M
binlog_do_db = db #for replica only this DB
sudo systemctl restart mysql
###################################################################
Create dumd on MASTER and move to SLAVE(restore on slave)
master# mysqldump -u root -p DB --set-gtid-purged=OFF > /tmp/fist_dump_DB.sql
scp /tmp/fist_dump_DB.sql SlaveIP:/tmp
slave# mysqp -uroot -p < /tmp/fist_dump_DB.sql
[TEST data]
mysql -uroot -p
SHOW TABLES;
CREATE TABLE DB.TEST_REPLUCA (example_column varchar(30));
SHOW TABLES;