设为首页 收藏本站
查看: 1153|回复: 0

[经验分享] mysql主从配置(使用percona-xtrabackup)

[复制链接]

尚未签到

发表于 2018-10-10 11:48:35 | 显示全部楼层 |阅读模式
  一 主服务器操作
#在主服务器上安装好msyql,然后安装percona-xtrabackup工具  
#安装运行环境
  
yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr bison libtool ncurses-devel zlib-devel
  
yum install -y perl-DBD-MySQL perl-DBI  perl-Time-HiRes libaio*
  
#下载源码包
  
cd /usr/local
  
wget http://*.*.*/source//mysql/percona-xtrabackup-2.2.3-4982-Linux-x86_64.tar.gz
  
#解压
  
tar -zxvf percona-xtrabackup-2.2.3-4982-Linux-x86_64.tar.gz
  
#重命名
  
mv percona-xtrabackup-2.2.3-Linux-x86_64 percona-xtrabackup
  
#拷贝文件
  
cd percona-xtrabackup/bin/
  
cp ./* /usr/bin
  
#修改主服务器配置文件my.cnf,在[mysqld]中增加两行
  
#log_bin=mysql-bin 可以不加这行
  
#server_id=214  服务器id号必须有并且不能重复
  
#在主服务器登录mysql,并在数据库中新增一个账户mysync,将权限设置成replication slave
  
mysql> create user 'mysync'@'%' by 'mysync';
  
mysql> grant replication slave on *.* to 'mysync' @'%' identified by 'mysync';
  账号新增完成自后在从服务器上测试一下是否可以使用此账号远程登录主服务器的mysql
  使用工具percona-xtrabackup的innobackupex命令备份这个数据库(先创建backup目录)
  innobackupex --user=root --password=root /mysqldata/backup
  #提示错误71 at line 2672 手动增加mysql的配置目录 --defaults-file=/etc/my.cnf
  # 提示sock错误 手动指定sock --socket=/tmp/mysql.sock
  #innobackupex --user=mysync --password=mysync --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock /mysqldata/backup
  以上操作会在/mysqldata/backup目录下新增一个新的文件
  #同步数据 回滚未提交的事务及同步已经提交的事务至数据文件,使得数据文件处于一致性状态
  innobackupex --apply-log /mysqldata/backup/2016-12-27_11-33-24
  将备份好的文件/mysqldata/backup/2016-12-27_11-33-24 scp给从服务器
scp /mysqldata/backup/2016-12-27_11-33-24 root@slaveip:/  二 从slave服务器操作
  停止mysql服务,将接收到的备份文件2016-12-27_11-33-24 放到指定目录下并修改文件权限
mv /2016-12-27_11-33-24 /mysqldata/data  
cd /mysqldata/data
  
chown -R mysql:mysql /mysqldata/data
  修改mysql的配置文件my.cnf
  在[mysqld]增加
  log_bin=slave_bin
  server_id = 214 #必须且唯一
  #如果数据库文件不是备份过来的文件位置 ,请修改datadir=备份的数据库文件路径
  启动从slave服务器上的mysql并登陆mysql
mysql>change master to master_host='masterip',master_user='mysync',master_password='mysync',master_log_file='mysql-bin.000001',master_log_pos=320;  #master_host 主服务器的IP地址
  #master_log_file和master_log_pos 需要在主服务器上登陆mysql,使用show master status;查看
  (master_log_pos的值不需要单引号)
  启动slave进程
mysql>start slave  
mysql>show slave status\G; 查看状态
  
Slave_IO_Running: Yes
  
Slave_SQL_Running: Yes
  
#这两项必须为YES
  然后可以在主服务器上进行新增表的测试,在从服务器上可以查看到主服务器上新增的表
  eg:reset 重置slave信息,stop 停止slave



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-619927-1-1.html 上篇帖子: mysql主主双机互备(一) 下篇帖子: MySql查询时间段的方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表