备份恢复

最近更新时间: 2026-06-30 15:06:00

  1. 数据库
    1. mysql数据库主要存储的应用资源的数据。
备份数据库,以tapm_db为例,可使用如下命令。
备份整库
mysqldump-h${host} -P22001 -umysql_user -p'mysql_passwd' tapm_db> tapm_db.sql
恢复数据库,使用上述备份文件进行恢复:
mysql-h${host} -P22001 -umysql_user -pmysql_passwd -D tapm_db<  tapm_db.sql
  1. 监控数据
    ElasticSearch引入仓库与快照的概念实现了数据的备份与恢复。
    1. 创建仓库
curl-xPOST http://${ES_IP}:9200/_snapshot/my_backup_1 -d'{
  "type": "fs",
  "settings": {
    "location": "\/data\/elasticsearch-5.1.1\/data\/back\/my_backup_1",
    "max_snapshot_bytes_per_sec":"20mb",
    "max_restore_bytes_per_sec":"20mb",
    "compress": true
  }
}'
其中参数解释如下:
type:仓库的类型为共享文件系统
location:指定仓库的路径,必须为path.repo 的子目录
max_snapshot_bytes_per_sec:快照数据进入仓库时,该参数可以控制过程的限流情况,默认为每秒20M
max_restore_bytes_per_sec:从仓库恢复数据时,该参数控制过程限流情况,默认值:每秒20M
注意:如果挂在的路径为远程目录时,应该合理配置该值,不至于网络流量被占满。
compress:数据是否压缩
  1. 快照索引
快照所有打开的索引
curl-XPUT http://${ES_IP}:9200/_snapshot/my_backup_1/snapshot_1?wait_for_completion=true
快照指定索引
curl-XPUT http://${ES_IP}:9200/_snapshot/my_backup_1/snapshot_3 -d'{
  "indices":"my_index_1,my_index_2",
  "ignore_unavailable": true,
 "include_global_state": true
}'
  1. 恢复快照
curl-XPOST http://${ES_IP}:9200/_snapshot/my_backup/snapshot_1/_restore?wait_for_completion=true
  1. 快照信息
获取单个快照的信息
curl-XGET http://${ES_IP}:9200/_snapshot/my_backup/snapshot_1
获取仓库下所有快照的信息
curl-XGET http://${ES_IP}:9200/_snapshot/my_backup/_all