ElasticSearch 如何备份和转移整个数据库的数据?

在另一台机器上跑出的爬虫数据,如何迁移到线上服务器?
PS 数据源在内网,线上服务器在阿里云。

阅读 15.4k
1 个回答

直接ssh到阿里云上。
先mkdir /home/elasticsearch/snapshot //换成服务器用户名
然后chmod 777 /home/elasticsearch/snapshot
再创建快照存储库
curl -XPUT 127.0.0.1:9200/_snapshot/backup -d '
{
"type":"fs",
"settings":{"location":"/home/elasticsearch/snapshot"}
}'
然后创建快照
curl -XPUT 127.0.0.1:9200/_snapshot/backup/$filename?wait_for_completion=true&pretty
用tar打包sftp到本地
解压,本地配置好ES,同样方法创建快照存储库,解压服务器的快照到本地库目录下,然后执行:
curl -XPOST 127.0.0.1:9200/_snapshot/backup/$filename/_restore
就备份恢复到本地啦。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进