Elasticsearch备份和恢复
-----------------------备份---------------------------------------------
1.创建一个仓库(creating the repository),用来存储备份文件
修改es配置文件elasticsearch.yml
在最后面添加如下参数,该参数为备份路径
path.repo: /opt/elasticsearch-6.5.0/esbak
在linux下执行如下
curl -H "Content-Type: application/json" -XPUT http://192.168.1.85:9200/_snapshot/my_backup -d'{
"type": "fs",
"settings": {
"location": "/opt/elasticsearch-6.5.0/esbak"
}
}'
上面的代码,我们创建了一个名叫my_backup 的备份,存放在本地的/opt/elasticsearch-6.5.0/esbak目录下.
2.备份所有数据库
仓库创建好之后就可以开始备份了。一个仓库可以包含多个快照(snapshots),快照可以存所有的索引,部分索引或者一个单独的索引。可以给索引指定一个唯一的名字
curl -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_1
上面的代码会将所有正在运行的索引,备份到my_backup仓库下一个叫snapshot_1的快照中。
上面的api会立刻返回,然后备份工作在后台运行。如果你想api同步执行,可以加wait_for_completion标志
curl -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_1?wait_for_completion=true
3.备份指定的数据库
curl -H "Content-Type: application/json" -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2 -d '{
"indices": "db_customer"
}'
4.查看备份信息
curl -XGET http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2
-----------------------------恢复-----------------------------------
1.删除记录
curl -XDELETE 'http://192.168.1.85:9200/db_customer/tb_test/1'
2.删除索引
curl -XDELETE http://192.168.1.85:9200/db_customer
3.恢复
curl -XPOST http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2/_restore
1.创建一个仓库(creating the repository),用来存储备份文件
修改es配置文件elasticsearch.yml
在最后面添加如下参数,该参数为备份路径
path.repo: /opt/elasticsearch-6.5.0/esbak
在linux下执行如下
curl -H "Content-Type: application/json" -XPUT http://192.168.1.85:9200/_snapshot/my_backup -d'{
"type": "fs",
"settings": {
"location": "/opt/elasticsearch-6.5.0/esbak"
}
}'
上面的代码,我们创建了一个名叫my_backup 的备份,存放在本地的/opt/elasticsearch-6.5.0/esbak目录下.
2.备份所有数据库
仓库创建好之后就可以开始备份了。一个仓库可以包含多个快照(snapshots),快照可以存所有的索引,部分索引或者一个单独的索引。可以给索引指定一个唯一的名字
curl -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_1
上面的代码会将所有正在运行的索引,备份到my_backup仓库下一个叫snapshot_1的快照中。
上面的api会立刻返回,然后备份工作在后台运行。如果你想api同步执行,可以加wait_for_completion标志
curl -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_1?wait_for_completion=true
3.备份指定的数据库
curl -H "Content-Type: application/json" -XPUT http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2 -d '{
"indices": "db_customer"
}'
4.查看备份信息
curl -XGET http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2
-----------------------------恢复-----------------------------------
1.删除记录
curl -XDELETE 'http://192.168.1.85:9200/db_customer/tb_test/1'
2.删除索引
curl -XDELETE http://192.168.1.85:9200/db_customer
3.恢复
curl -XPOST http://192.168.1.85:9200/_snapshot/my_backup/snapshot_2/_restore
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?