您好,登录后才能下订单哦!
这篇文章主要为大家展示了“怎么用xtrabackup工具创建slave节点”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么用xtrabackup工具创建slave节点”这篇文章吧。
															
xtrabackup安装和备份方法等请先参考我的另一篇博客 http://blog.itpub.net/20893244/viewspace-2133530/
环境:
master ip:192.168.3.171
slave    ip: 192.168.3.173
mysql版本:
(root@localhost) [gldb]> select version();
+------------+
| version()  |
+------------+
| 5.7.17-log |
+------------+
1 row in set (0.00 sec)
用xtrabackup工具创建slave节点需要七步骤,我们一步一步操作
一.在master节点完整备份数据
innobackupex --defaults-file=/etc/my.cnf --host=oracle11gtest --user=xtrabk --parallel=4 --password=onlybackupgl --extra-lsndir=/alidata1/mysqlbackup/mysql_full --stream=tar /tmp | gzip > /alidata1/mysqlbackup/mysql_full/xtra_fullbak_2017-02-20.tar.gz
二.复制和准备备份集
1.把备份集拷贝到slave端
scp -r /alidata1/mysqlbackup/mysql_full root@192.168.3.173:/alidata1/mysqldata/mysqlbackup
2.在slave端解压备份集
tar -xzvf xtra_fullbak_2017-02-20.tar
3.准备数据,执行innobackupex命令附加--apply-log参数
innobackupex --apply-log /alidata1/mysqldata/mysqlbackup/mysql_full
三.创建复制环境专用账户并赋予权限
create user repl@'192.168.3.173';
grant replication slave on *.* to repl identified by 'replmysql';
四.配置slave节点的初始化参数
从master端拷贝到slave端,还是用scp命令;
在slave端修改初始化文件,把server_id修改为一个非0的值
启动数据库
mysqld_safe --defaults-file=/etc/my.cnf &
五.配置slave节点复制环境
查看xtrabackup_binlog_info文件里的数据
[root@mysqltest mysql_full]# more xtrabackup_binlog_info
mysql-bin.000016 1884
执行change masger命令
change master to
			master_host='192.168.3.171',
			master_port=3306,
			master_user='repl',
			master_password='replmysql',
			master_log_file='mysql-bin.000016',
master_log_pos=1884;
执行start slave命令
mysql > start slave;
六.检查
(root@localhost) [(none)]> show slave status \G;
*************************** 1. row ***************************
			               Slave_IO_State: Waiting for master to send event
			                  Master_Host: 192.168.3.171
			                  Master_User: repl
			                  Master_Port: 3306
			                Connect_Retry: 60
			              Master_Log_File: mysql-bin.000016
			          Read_Master_Log_Pos: 3631
			               Relay_Log_File: mysqltest-relay-bin.000002
			                Relay_Log_Pos: 2067
			        Relay_Master_Log_File: mysql-bin.000016
			             Slave_IO_Running: Yes
			            Slave_SQL_Running: Yes
			              Replicate_Do_DB: 
			          Replicate_Ignore_DB: 
			           Replicate_Do_Table: 
			       Replicate_Ignore_Table: 
			      Replicate_Wild_Do_Table: 
			  Replicate_Wild_Ignore_Table: 
			                   Last_Errno: 0
			                   Last_Error: 
			                 Skip_Counter: 0
			          Exec_Master_Log_Pos: 3631
			              Relay_Log_Space: 2278
			              Until_Condition: None
			               Until_Log_File: 
			                Until_Log_Pos: 0
			           Master_SSL_Allowed: No
			           Master_SSL_CA_File: 
			           Master_SSL_CA_Path: 
			              Master_SSL_Cert: 
			            Master_SSL_Cipher: 
			               Master_SSL_Key: 
			        Seconds_Behind_Master: 0
			Master_SSL_Verify_Server_Cert: No
			                Last_IO_Errno: 0
			                Last_IO_Error: 
			               Last_SQL_Errno: 0
			               Last_SQL_Error: 
			  Replicate_Ignore_Server_Ids: 
			             Master_Server_Id: 2
			                  Master_UUID: 659e33c7-f1ef-11e6-8e3e-00163e3225da
			             Master_Info_File: /alidata1/mysqldata/3306/data/master.info
			                    SQL_Delay: 0
			          SQL_Remaining_Delay: NULL
			      Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
			           Master_Retry_Count: 86400
			                  Master_Bind: 
			      Last_IO_Error_Timestamp: 
			     Last_SQL_Error_Timestamp: 
			               Master_SSL_Crl: 
			           Master_SSL_Crlpath: 
			           Retrieved_Gtid_Set: 
			            Executed_Gtid_Set: 
			                Auto_Position: 0
			         Replicate_Rewrite_DB: 
			                 Channel_Name: 
			           Master_TLS_Version: 
1 row in set (0.00 sec)
七.测试
在master端创建一个表
(root@localhost) [(none)]> use gldb
Database changed
(root@localhost) [gldb]> create table gl (abcd varchar(20));
Query OK, 0 rows affected (0.51 sec)
在slave端查询是否通过成功
(root@localhost) [(none)]> use gldb;
Database changed
(root@localhost) [gldb]> show create table gl;
+-------+--------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+--------------------------------------------------------------------------------------------+
| gl | CREATE TABLE `gl` (
			  `abcd` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+--------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
同步成功~~~
以上是“怎么用xtrabackup工具创建slave节点”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。