你的位置:首页 > 数据库

[数据库]innobackupex


在使用最新版的innobackupex(2.3.2):

innobackupex /backup --rsync --user=xx --password=xxx 备份时报错:

Error: can't create file (null)/xtrabackup_rsyncfiles_pass1

网上搜索没有找到答案,于是向官方报告 bug ,发现已经有人汇报了该bug:

https://bugs.launchpad.net/percona-xtrabackup/+bug/1511701

Bug DescriptionAfter latest update xtrabackup to 2.3.2 my backup scripts stop working.Problem in "--rsync" argument. With it in half of "copying X to Y" xtrabackup exit with error message:~~can't create file (null)/xtrabackup rsync files pass1~~With previous builds all was fine.Problem command line:~~innobackupex --defaults-file=/etc/mysql/my.cnf --user=root --password=`cat /root/passwords/.mysql` --no-timestamp --throttle=40 --rsync /var/backups/separate_disk/mysql/${WEEK_DAY_NUMBER}f 2>&1~~If remove "--rsync" - all work without errors.P.S. and previous versions uses "root" as default user name. Now it use "mysql" if in command line didn't defined "--user". (Back incompatibility)Add tags Tag helpSergei Glushchenko (sergei.glushchenko) wrote on 2015-10-30:   #1Would specifying --tmpdir=/tmp (or other directory) resolve the rsync issue?Maxim (sailormax) wrote on 2015-11-01:   #2yes.Sergei Glushchenko (sergei.glushchenko) wrote on 2015-11-09:   #3We'll set tmpdir to system/user default when it is not specified.Changed in percona-xtrabackup:status:   New → Triagedimportance:   Undecided → High 

解决办法:

在使用 --rsync 选项时,需要增加 --tmpdir=/tmp 选择,来指定 xtrabackup_rsyncfiles_pass1 临时文件的存储位置:

innobackupex /backup/ --rsync --tmpdir=/tmp --user=xxx --password=xxx