菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
189
0

Linux运维技巧-持续更新

原创
05/13 14:22
阅读数 75465

1. MySQL 数据库备份

免密登录

  1. 在当前用户目录下创建文件.my.cnf
[mysqldump]
user=root
password=XXXXXX

修改权限为600

mysqldump -u root --default-character-set=utf8mb4 --databases db1 > db1.sql

注意,不要-p参数

  1. mysql_config_editor
mysql_config_editor set -G mysql-bak -S /tmp/mysql.sock -u root -p
mysqldump --login-path=mysql-bak --default-character-set=utf8mb4 --databases db1 > db1.sql
mysqldump --login-path=mysql-bak --default-character-set=utf8mb4 --databases db2 > db2.sql

异地备份

  1. scp
scp -r user@mysqlhost:/remote-path-to-mysql-bak local-path-to-mysql-bak

由于备份文件可能非常大,ssh难以保持长时间的连接,一旦掉线传输就会中止,使用方案2 rsync断点续传

  1. rsync
rsync -arvzP --rsh=ssh user@mysqlhost:/remote-path-to-mysql-bak local-path-to-mysql-bak

参数说明:

  • -a: 以archive模式操作,复制目录、符号连接,等价于 -rlptgoD
  • -r: 递归,传输文件夹
  • -v: 显示详情
  • -z: 压缩
  • -P: --partial --progress,断点续传

发表评论

0/200
189 点赞
0 评论
收藏