innobackupex远程备份【转】

innobackupex 远程备份

innobackupex还支持远程备份,可以备份其他服务器上的MySQL实例。在备份命令后添加--host和--port参数即可,如:

$ innobackupex --user=<mysql用户名> --password=<mysql密码> --host=<remote_mysql_ip> --port=<remote_mysql_port> <备份目录>
例子如下:
nohup innobackupex --defaults-file="/data/mysql-3307/my.cnf"  --user=root --password='密码' --host=10.12.2.56 /tmp_data/xtrabackup &
如果报错InnoDB: Error number 24 means 'Too many open files'.
在服务器上
复制代码
# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 512982
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 512982
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

然后执行
# ulimit -n 65535
复制代码

 

报错:InnoDB: Error: log file /usr/local/mysql/var/ib_logfile0 is of different size 31457280 bytes

是因为innobackupex远程备份,需要备份的数据库innodb_log_file_size为5Mb,而所在服务器的MySQL innodb_log_file_size参数为32Mb。修复所制定的my.cnf中innodb_log_file_size的参数为32Mb即可。

 

使用innobackupex命令备份数据库数据时报错提示日志文件大小与配置文件中的设定不一致解决方法...-CSDN博客
https://blog.csdn.net/weixin_34137799/article/details/91607049

总结

innobackupex远程因为要指定配置文件,所以如果你现在服务器A上MySQL配置文件和远程所需备份服务器B的MySQL数据库不同,那应该是没法备份成功的。

建议 A做成nfs server,挂载到所需备份的服务器B上,在innobackupex备份B的MySQL数据库

 

下面的都作废

有个需求需要innobackupex远程异地备份,发现innobackupex没有直接异地备份的选项,上网查了一下只能用ssh密匙认证传输备份文件。

1)将hostA的MySQL数据库整库备份到hostB;
2)可以通过innobackupex的steam,管道方式备份到远程机器;
3)分别在hostA,hostB创建路径/home/backup/xtrabackup;
4)在hostA上执行以下innobackupex语句:
sudo innobackupex --user=root --password=mytest2018--defaults=/etc/my.cnf --slave-info --stream=tar /home/backup/xtrabackup | ssh -p 22000 lilongqian@10.13.111.27 cat " >" /home/backup/xtrabackup/DBB02_innobackup_20180611.tar
数据会自动北非到hostB:/home/backup/xtrabackup下面。
5)第4)结束,在hostB上执行日志应用操作:
sudo innobackupex --defaults-file=/etc/my.cnf --user=root --password=mytest2018--use-memory=4G --apply-log  /home/backup/xtrabackup
6)执行数据库恢复操作:
innobackupex --defaults-file=/etc/my.cnf --user=root --password=mytest2018 --copy-back /home/backup/xtrabackup
7)根据master的binlog位置启动slave上面的复制线程即可。

转自

innobackupex远程备份_ITPUB博客 http://blog.itpub.net/9606353/viewspace-2156062/

posted @   paul_hch  阅读(1699)  评论(1编辑  收藏  举报
编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤
历史上的今天:
2018-04-27 MySQL在线更改binlog格式
2016-04-27 iptables详解--转
点击右上角即可分享
微信分享提示