单实例搭建
规划
卸载自带数据库
rpm -qa | grep mysql
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
创建用户
groupadd mysql
useradd -g mysql mysql -s /sbin/nologin
解压并创建配置文件及目录
tar xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz -C /usr/local
mv mysql-8.0.19-linux-glibc2.12-x86_64/ mysql
配置文件/etc/my.cnf
[client]
port = 3406
socket = /tmp/mysql.sock
[mysql]
prompt="\u@db \R:\m:\s [\d]> "
no-auto-rehash
[mysqld]
server-id = 3306100
user = mysql
port = 3406
basedir = /usr/local/mysql
datadir = /data/mysql/
socket = /tmp/mysql.sock
pid-file = db.pid
character-set-server = utf8mb4
skip_name_resolve = 1
open_files_limit = 65535
back_log = 1024
max_connections = 512
max_connect_errors = 1000000
table_open_cache = 1024
table_definition_cache = 1024
table_open_cache_instances = 64
thread_stack = 512K
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 4M
join_buffer_size = 4M
thread_cache_size = 768
interactive_timeout = 600
wait_timeout = 600
tmp_table_size = 32M
max_heap_table_size = 32M
slow_query_log = 1
slow_query_log_file = /data/mysql/slow.log
log-error = /data/mysql/error.log
long_query_time = 0.1
log-bin = /data/mysql/mysql-binlog
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 1G
max_binlog_size = 1G
gtid_mode = on
enforce_gtid_consistency = 1
log_slave_updates
binlog_format = row
relay_log_recovery = 1
relay-log-purge = 1
key_buffer_size = 32M
read_buffer_size = 8M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 64M
#myisam_sort_buffer_size = 128M
#myisam_max_sort_file_size = 10G
#myisam_repair_threads = 1
lock_wait_timeout = 3600
explicit_defaults_for_timestamp = 1
innodb_thread_concurrency = 0
innodb_sync_spin_loops = 100
innodb_spin_wait_delay = 30
master_info_repository = TABLE
relay_log_info_repository = TABLE
slave_parallel_type=LOGICAL_CLOCK
transaction_isolation = REPEATABLE-READ
#innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 1024M
innodb_buffer_pool_instances = 8
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
innodb_data_file_path = ibdata1:1G:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 2G
innodb_log_files_in_group = 2
#innodb_max_undo_log_size = 1G
# 根据您的服务器IOPS能力适当调整
# 一般配普通SSD盘的话,可以调整到 10000 - 20000
# 配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_flush_neighbors = 0
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_purge_threads = 4
innodb_page_cleaners = 4
innodb_open_files = 65535
innodb_max_dirty_pages_pct = 50
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 4000
innodb_checksum_algorithm = crc32
#innodb_file_format = Barracuda
#innodb_file_format_max = Barracuda
innodb_lock_wait_timeout = 10
innodb_rollback_on_timeout = 1
innodb_print_all_deadlocks = 1
innodb_file_per_table = 1
innodb_online_alter_log_max_size = 4G
innodb_stats_on_metadata = 0
innodb_status_file = 1
# 注意: 开启 innodb_status_output & innodb_status_output_locks 后, 可能会导致log-error文件增长较快
innodb_status_output = 0
innodb_status_output_locks = 0
#performance_schema
performance_schema = 1
performance_schema_instrument = '%=on'
#innodb monitor
innodb_monitor_enable="module_innodb"
innodb_monitor_enable="module_server"
innodb_monitor_enable="module_dml"
innodb_monitor_enable="module_ddl"
innodb_monitor_enable="module_trx"
innodb_monitor_enable="module_os"
innodb_monitor_enable="module_purge"
innodb_monitor_enable="module_log"
innodb_monitor_enable="module_lock"
innodb_monitor_enable="module_buffer"
innodb_monitor_enable="module_index"
innodb_monitor_enable="module_ibuf_system"
innodb_monitor_enable="module_buffer_page"
innodb_monitor_enable="module_adaptive_hash"
# Group Replication
#server_id = 1003306
#gtid_mode = ON
#enforce_gtid_consistency = ON
#master_info_repository = TABLE
#relay_log_info_repository = TABLE
binlog_checksum = NONE
#log_slave_updates = ON
#log_bin = binlog
#binlog_format= ROW
transaction_write_set_extraction = XXHASH64
# 未来可能被弃用的变量,会出现告警信息,binlog_expire_logs_seconds用来代替
# expire_logs_days = 7
binlog_expire_logs_seconds = 7
# 8版本弃用的变量
# loose-group_replication_group_name = 'e842862c-9b12-11e8-8131-080027f1fd08'
# internal_tmp_disk_storage_engine = InnoDB # 8版本不再支持,默认引擎
# query_cache_size = 0 # 8版本不再支持这两个参数
# query_cache_type = 0
# loose-group_replication_start_on_boot = off
# loose-group_replication_local_address = 'enmoedu:33066'
# loose-group_replication_group_seeds ='enmoedu1:33067,enmoedu2:33068,enmoedu:33066'
# loose-group_replication_bootstrap_group = off
# loose-group_replication_single_primary_mode=off
# loose-group_replication_enforce_update_everywhere_checks=true
[mysqldump]
quick
max_allowed_packet = 32M
创建目录
# 创建数据目录和配置文件目录
mkdir -p /data/mysql/
chown mysql:mysql -R /data/mysql
chown mysql:mysql -R /usr/local/mysql/
初始化服务
cd /usr/local/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --initialize --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql
查看密码
more /data/mysql/error.log
2021-06-07T12:28:36.732739Z 0 [Warning] [MY-011068] [Server] The syntax 'expire-logs-days' is deprecated and will be removed in a future release. Please use binlog_expire_log
s_seconds instead.
2021-06-07T12:28:36.732982Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.19) initializing of server in progress as process 20310
100 200 300 400 500 600 700 800 900 1000
100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000
100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000
2021-06-07T12:28:49.385707Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: >ad,tMNX#7,p
添加自动启动
# 使用systemctl来管理mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
启动数据库并修改密码
如果添加到了systemd服务,也可以使用systectl进行管理启动
# 安全启动
./mysqld_safe --defaults-file=/etc/my.cnf &
# 配置mysql环境变量
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
mysql -uroot -p
alter user 'root'@'localhost' identified by 'root@123';
flush privileges;
# 关闭数据库
./mysqladmin shutdown -uroot -p'password'
多实例
一台主机多个mysql实例
单机多实例有两种创建方式:
一、本办法;直接解压两份文件进行配置,如下实例1和实例2
二、部署一个服务后多次初始化,简要操作如下:
- 创建datadir数据目录,并赋权(所属用户和组)
- 使用原来的服务进行多次初始化,初始化时指定新创建的目录
- 复制my.cnf配置文件,修改端口和sock和目录位置
- 启动服务并修改密码
实例1
解压文件&创建配置文件
groupadd mysql
useradd -g mysql mysql -s /sbin/nologin
tar xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz -C /usr/local
cp -r mysql-8.0.19-linux-glibc2.12-x86_64/ mysql8-1
mkdir /usr/local/mysql8-1/data
mkdir /usr/local/mysql8-1/etc
chown -R mysql:mysql /usr/local/mysql8-1/
/usr/local/mysql8-1/etc/my.cnf
[client]
port = 3406
socket = /usr/local/mysql8-1/mysql.sock
[mysql]
prompt="\u@db \R:\m:\s [\d]> "
no-auto-rehash
[mysqld]
server-id = 3306100
user = mysql
port = 3406
basedir = /usr/local/mysql8-1
datadir = /usr/local/mysql8-1/data
socket = /usr/local/mysql8-1/mysql.sock
pid-file = db.pid
character-set-server = utf8mb4
skip_name_resolve = 1
open_files_limit = 65535
back_log = 1024
max_connections = 512
max_connect_errors = 1000000
table_open_cache = 1024
table_definition_cache = 1024
table_open_cache_instances = 64
thread_stack = 512K
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 4M
join_buffer_size = 4M
thread_cache_size = 768
interactive_timeout = 600
wait_timeout = 600
tmp_table_size = 32M
max_heap_table_size = 32M
slow_query_log = 1
slow_query_log_file = /usr/local/mysql8-1/data/slow.log
log-error = /usr/local/mysql8-1/data/error.log
long_query_time = 0.1
log-bin = /usr/local/mysql8-1/data/mysql-binlog
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 1G
max_binlog_size = 1G
gtid_mode = on
enforce_gtid_consistency = 1
log_slave_updates
binlog_format = row
relay_log_recovery = 1
relay-log-purge = 1
key_buffer_size = 32M
read_buffer_size = 8M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 64M
#myisam_sort_buffer_size = 128M
#myisam_max_sort_file_size = 10G
#myisam_repair_threads = 1
lock_wait_timeout = 3600
explicit_defaults_for_timestamp = 1
innodb_thread_concurrency = 0
innodb_sync_spin_loops = 100
innodb_spin_wait_delay = 30
master_info_repository = TABLE
relay_log_info_repository = TABLE
slave_parallel_type=LOGICAL_CLOCK
transaction_isolation = REPEATABLE-READ
#innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 1024M
innodb_buffer_pool_instances = 8
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
innodb_data_file_path = ibdata1:1G:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 2G
innodb_log_files_in_group = 2
#innodb_max_undo_log_size = 1G
# 根据您的服务器IOPS能力适当调整
# 一般配普通SSD盘的话,可以调整到 10000 - 20000
# 配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_flush_neighbors = 0
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_purge_threads = 4
innodb_page_cleaners = 4
innodb_open_files = 65535
innodb_max_dirty_pages_pct = 50
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 4000
innodb_checksum_algorithm = crc32
#innodb_file_format = Barracuda
#innodb_file_format_max = Barracuda
innodb_lock_wait_timeout = 10
innodb_rollback_on_timeout = 1
innodb_print_all_deadlocks = 1
innodb_file_per_table = 1
innodb_online_alter_log_max_size = 4G
innodb_stats_on_metadata = 0
innodb_status_file = 1
# 注意: 开启 innodb_status_output & innodb_status_output_locks 后, 可能会导致log-error文件增长较快
innodb_status_output = 0
innodb_status_output_locks = 0
#performance_schema
performance_schema = 1
performance_schema_instrument = '%=on'
#innodb monitor
innodb_monitor_enable="module_innodb"
innodb_monitor_enable="module_server"
innodb_monitor_enable="module_dml"
innodb_monitor_enable="module_ddl"
innodb_monitor_enable="module_trx"
innodb_monitor_enable="module_os"
innodb_monitor_enable="module_purge"
innodb_monitor_enable="module_log"
innodb_monitor_enable="module_lock"
innodb_monitor_enable="module_buffer"
innodb_monitor_enable="module_index"
innodb_monitor_enable="module_ibuf_system"
innodb_monitor_enable="module_buffer_page"
innodb_monitor_enable="module_adaptive_hash"
# Group Replication
#server_id = 1003306
#gtid_mode = ON
#enforce_gtid_consistency = ON
#master_info_repository = TABLE
#relay_log_info_repository = TABLE
binlog_checksum = NONE
#log_slave_updates = ON
#log_bin = binlog
#binlog_format= ROW
transaction_write_set_extraction = XXHASH64
# expire_logs_days参数未来可能被弃用的变量,会出现告警信息
binlog_expire_logs_seconds = 7
# 8版本弃用的变量
# loose-group_replication_group_name = 'e842862c-9b12-11e8-8131-080027f1fd08'
# internal_tmp_disk_storage_engine = InnoDB # 8版本不再支持,默认引擎
# query_cache_size = 0 # 8版本不再支持这两个参数
# query_cache_type = 0
# loose-group_replication_start_on_boot = off
# loose-group_replication_local_address = 'enmoedu:33066'
# loose-group_replication_group_seeds ='enmoedu1:33067,enmoedu2:33068,enmoedu:33066'
# loose-group_replication_bootstrap_group = off
# loose-group_replication_single_primary_mode=off
# loose-group_replication_enforce_update_everywhere_checks=true
[mysqldump]
quick
max_allowed_packet = 32M
初始化
cd /usr/local/mysql8-1/bin
./mysqld --defaults-file=/usr/local/mysql8-1/etc/my.cnf --initialize --user=mysql
# 安全启动
./mysqld_safe --defaults-file=/usr/local/mysql8-1/etc/my.cnf &
mysql -uroot -S /usr/local/mysql8-1/mysql.sock -p
alter user 'root'@'localhost' identified by 'root@123';
flush privileges;
—initialize:在日志文件打印一个随机密码
—initialize-insecure:不会产生随机密码,第一次登陆数据库使用空密码
实例2
修改配置文件的目录结构和服务监听端口即可
复制文件&创建配置文件
cp -r mysql-8.0.19-linux-glibc2.12-x86_64/ mysql8-2
mkdir /usr/local/mysql8-2/data
mkdir /usr/local/mysql8-2/etc
chown -R mysql:mysql /usr/local/mysql8-2/
/usr/local/mysql8-2/etc/my.cnf
[client]
port = 3506
socket = /usr/local/mysql8-2/mysql.sock
[mysql]
prompt="\u@db \R:\m:\s [\d]> "
no-auto-rehash
[mysqld]
server-id = 3306100
user = mysql
port = 3506
basedir = /usr/local/mysql8-2
datadir = /usr/local/mysql8-2/data
socket = /usr/local/mysql8-2/mysql.sock
pid-file = db.pid
character-set-server = utf8mb4
skip_name_resolve = 1
open_files_limit = 65535
back_log = 1024
max_connections = 512
max_connect_errors = 1000000
table_open_cache = 1024
table_definition_cache = 1024
table_open_cache_instances = 64
thread_stack = 512K
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 4M
join_buffer_size = 4M
thread_cache_size = 768
interactive_timeout = 600
wait_timeout = 600
tmp_table_size = 32M
max_heap_table_size = 32M
slow_query_log = 1
slow_query_log_file = /usr/local/mysql8-2/data/slow.log
log-error = /usr/local/mysql8-2/data/error.log
long_query_time = 0.1
log-bin = /usr/local/mysql8-2/data/mysql-binlog
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 1G
max_binlog_size = 1G
gtid_mode = on
enforce_gtid_consistency = 1
log_slave_updates
binlog_format = row
relay_log_recovery = 1
relay-log-purge = 1
key_buffer_size = 32M
read_buffer_size = 8M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 64M
#myisam_sort_buffer_size = 128M
#myisam_max_sort_file_size = 10G
#myisam_repair_threads = 1
lock_wait_timeout = 3600
explicit_defaults_for_timestamp = 1
innodb_thread_concurrency = 0
innodb_sync_spin_loops = 100
innodb_spin_wait_delay = 30
master_info_repository = TABLE
relay_log_info_repository = TABLE
slave_parallel_type=LOGICAL_CLOCK
transaction_isolation = REPEATABLE-READ
#innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 1024M
innodb_buffer_pool_instances = 8
innodb_buffer_pool_load_at_startup = 1
innodb_buffer_pool_dump_at_shutdown = 1
innodb_data_file_path = ibdata1:1G:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 32M
innodb_log_file_size = 2G
innodb_log_files_in_group = 2
#innodb_max_undo_log_size = 1G
# 根据您的服务器IOPS能力适当调整
# 一般配普通SSD盘的话,可以调整到 10000 - 20000
# 配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_flush_neighbors = 0
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_purge_threads = 4
innodb_page_cleaners = 4
innodb_open_files = 65535
innodb_max_dirty_pages_pct = 50
innodb_flush_method = O_DIRECT
innodb_lru_scan_depth = 4000
innodb_checksum_algorithm = crc32
#innodb_file_format = Barracuda
#innodb_file_format_max = Barracuda
innodb_lock_wait_timeout = 10
innodb_rollback_on_timeout = 1
innodb_print_all_deadlocks = 1
innodb_file_per_table = 1
innodb_online_alter_log_max_size = 4G
innodb_stats_on_metadata = 0
innodb_status_file = 1
# 注意: 开启 innodb_status_output & innodb_status_output_locks 后, 可能会导致log-error文件增长较快
innodb_status_output = 0
innodb_status_output_locks = 0
#performance_schema
performance_schema = 1
performance_schema_instrument = '%=on'
#innodb monitor
innodb_monitor_enable="module_innodb"
innodb_monitor_enable="module_server"
innodb_monitor_enable="module_dml"
innodb_monitor_enable="module_ddl"
innodb_monitor_enable="module_trx"
innodb_monitor_enable="module_os"
innodb_monitor_enable="module_purge"
innodb_monitor_enable="module_log"
innodb_monitor_enable="module_lock"
innodb_monitor_enable="module_buffer"
innodb_monitor_enable="module_index"
innodb_monitor_enable="module_ibuf_system"
innodb_monitor_enable="module_buffer_page"
innodb_monitor_enable="module_adaptive_hash"
# Group Replication
#server_id = 1003306
#gtid_mode = ON
#enforce_gtid_consistency = ON
#master_info_repository = TABLE
#relay_log_info_repository = TABLE
binlog_checksum = NONE
#log_slave_updates = ON
#log_bin = binlog
#binlog_format= ROW
transaction_write_set_extraction = XXHASH64
# expire_logs_days参数未来可能被弃用的变量,会出现告警信息
binlog_expire_logs_seconds = 7
# 8版本弃用的变量
# loose-group_replication_group_name = 'e842862c-9b12-11e8-8131-080027f1fd08'
# internal_tmp_disk_storage_engine = InnoDB # 8版本不再支持,默认引擎
# query_cache_size = 0 # 8版本不再支持这两个参数
# query_cache_type = 0
# loose-group_replication_start_on_boot = off
# loose-group_replication_local_address = 'enmoedu:33066'
# loose-group_replication_group_seeds ='enmoedu1:33067,enmoedu2:33068,enmoedu:33066'
# loose-group_replication_bootstrap_group = off
# loose-group_replication_single_primary_mode=off
# loose-group_replication_enforce_update_everywhere_checks=true
[mysqldump]
quick
max_allowed_packet = 32M
初始化
cd /usr/local/mysql8-2/bin
./mysqld --defaults-file=/usr/local/mysql8-2/etc/my.cnf --initialize --user=mysql
# 安全启动
./mysqld_safe --defaults-file=/usr/local/mysql8-2/etc/my.cnf &
mysql -uroot -S /usr/local/mysql8-2/mysql.soc -p
alter user 'root'@'localhost' identified by 'root@123';
flush privileges;
# 关闭数据库
./mysqladmin shutdown -uroot -p'password'
主从搭建
主从原理
主从复制是依赖于 binlog 二进制日志,需要注意的是:
- binlog 是属于 server 层次,各个引擎都有
- redo log,undo log属于Innodb 引擎层次,用于保证事务性的
主从复制原理:
- master 上的 binlogdump 线程,在 slave 正常连接的情况下,会将 binlog 二进制日志发送给 slave
- binlog 二进制日志中记录了 master 上所有的更新操作
- slave 上有个 I/O 线程,通过读取 master 上的 binlog ,写到自己的中继日志(delay log )中
- salve 上有个 SQL 线程,通过重放 delay log 里的内容,来实现同步,把中继日志中的事件信息一条一条的在本地执行一次,完成数据在本地的存储, 从而实现将改变反映到它自己的数据(数据重放)。
注意事项:
- 主从服务器操作系统版本和位数一致;
- Master 和 Slave 数据库的版本要一致;
- Master 和 Slave 数据库中的数据要一致;
- Master 开启二进制日志, Master 和 Slave 的 server_id 在局域网内必须唯一;
简要配置:
- master
- 修改数据库配置文件, 指明 server_id, 开启二进制日志(log-bin);
- 启动数据库, 查看当前是哪个日志, position 号是多少;
- 登录数据库, 授权数据复制用户(IP 地址为从机 IP 地址, 如果是双向主从, 这里的还需要授权本机的 IP 地址, 此时自己的 IP 地址就是从 IP 地址);
- 备份数据库(记得加锁和解锁);
- 传送备份数据到 Slave 上;
- 启动数据库;
- salve
- 修改数据库配置文件, 指明 server_id, 开启二进制日志(log-bin);
- 启动数据库, 还原备份;
- 查看当前是哪个日志, position 号是多少(单向主从此步不需要, 双向主从需要);
- 指定 Master 的地址、 用户、 密码等信息;
- 开启同步, 查看状态。
规划
目录结构 | 端口 | server_id | ||
---|---|---|---|---|
master | /usr/local/mysql8-1/ | 3406 | 3306100 | |
slave | /usr/local/mysql8-2/ | 3506 | 3506100 |
单主机多实例实现主从 -
配置
- 检查master节点是否开启二进制日志文件(log-bin)
- 检查server_id
没有的添加配置
创建复制操作用户-repl
master
在主节点创建一个用户repl,用于从节点链接主节点时使用。
# 创建用户
mysql> CREATE USER 'repl'@'135.129.12.28' IDENTIFIED WITH mysql_native_password BY 'repl@123';
# 授权
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'135.129.12.28';
mysql> flush privileges;
# 获取gtid
mysql> show variables like '%gtid%';
localhost根据实际IP
slave
# 设置为master的gtid
SET @@GLOBAL.GTID_PURGED = '08d09f71-c9c2-11eb-8bca-005056b0ed50:1-15';
# change master to master_host = '135.129.12.28',master_port = 3306,master_user = 'repl',master_password = 'repl@123',master_auto_position=1;
MASTER_HOST # master服务IP
Master_Port # master服务端口
MASTER_USER # master复制用户
MASTER_PASSWORD # master复制用户密码
master_auto_position # 1 自动获取之前读取的位置
开启同步
master
# 备份整个数据库 到 slave恢复
mysqldump -uroot -p -h127.0.0.1 -P3306 --opt --hex-blob --single_transaction -R --default-character-set=utf8 --master-data=2 --all-databases>/temp/dbfull3306.sql
slave
# 开启同步
mysql> start slave;
# 查看同步状态
mysql> show slave status\G;
Slave_IO_State值以下表示连接到master
Waiting for master to send event
测试
master上创建数据库,查看salve上是否同步到数据
取消主从
slave
mysql>stop slave;
QueryOK, 0 rowsaffected (0,00 sec)
mysql>reset slave all;
# or
mysql>reset master;
QueryOK, 0 rowsaffected (0,04 sec)
mysql> show slave status\G
Emptyset (0,00 sec)
此时真正实现了清除slave同步复制关系!
级联复制
A -> B -> C
步骤和上面一样