ITPub博客

首页 > 数据库 > MySQL > mysql for linux 配置主从複製

mysql for linux 配置主从複製

原创 MySQL 作者:selectshen 时间:2014-10-25 18:09:11 0 删除 编辑
假设:服务器A为主mysql,服务器B为从mysql.
1.在服务器A,B上安装mysql.
2.修改/usr/my.cnf 参数文件
     服务器A:
       修改后的参数文件内容(红色字体为新加入内容):
     
       [mysqld]
       datadir =/u02/mysqldata

       log_bin=/u03/mysqldata/mysql01.log
       log_error=/u03/mysqldata/mysql01.err

       server-id=1
       innodb_flush_log_at_trx_commit=1
       sync_binlog=1
       binlog_format=row
       innodb_support_xa=1

       innodb_buffer_pool_size=16G
       innodb_additional_mem_pool_size=20M
       innodb_log_file_size=256M
       innodb_log_files_in_group=3

       sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
     服务器B:
       修改后的参数文件内容(红色字体为新加入内容):

       [mysqld]
       datadir =/u02/mysqldata

       log_bin=/u03/mysqldata/mysql02.log
       log_error=/u03/mysqldata/mysql02.err
       binlog_format=row

       server-id=2
       read_only=on
       relay-log-index=slave-relay-bin.index
       relay-log=slave-relay-bin

       innodb_buffer_pool_size=8G
       innodb_additional_mem_pool_size=20M
       innodb_log_file_size=256M
       innodb_log_files_in_group=3
       sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
3.在服务器A新建用户,用于服务器B通过此帐号拉取日志.
         GRANT REPLICATION SLAVE ON *.* TO repl_user@'服务器B IP' IDENTIFIED BY 'repl';
4.在服务器A做一次全备,用于还原到服务器B做为複製的开始.
       innobackupex --defaults-file=/usr/my.cnf --user=root --password=system  /u03/mysqlbackup/full/
5.複製服务器A中的全备到服务器B,并还原.
       Scp -r /u03/mysqlbackup/full/备份文件目录名  服务器B IP:/u03/mysqlbackup/full/
       删除服务器B上原有的数据文件:
       rm -rf /u02/mysqldata/*
       还原数据库:
       innobackupex --defaults-file=/usr/my.cnf --user=root --password=system  --copy-back         /u03/mysqlbackup/full/备份文件目录名
       更改还原文件的权限:
       chown -R mysql.mysql /u02/mysqldata
6.在服务器B配置主从关系
       mysql -uroot -p
       stop slave;
       change master to master_host='服务器A IP',
       master_user='repl_user',
       master_password='repl',
       master_log_file='zdtdb33.000002',--通过备份中的xtrabackup_binlog_info查看
       master_log_pos=431; --通过备份中的xtrabackup_binlog_info查看
       start slave;
7.配置完成.
       在服务器A中登陆mysql,输入SHOW master STATUS;
       在服务器B中登陆mysql,输入SHOW slave STATUS;
       对比log_pos值是否有在增加,并一致.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28539951/viewspace-1309653/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: mysql for linux 安装
请登录后发表评论 登录
全部评论

注册时间:2014-01-05

  • 博文量
    169
  • 访问量
    1567868