node -v
3. 输入以下命令来检查npm的版本:
npm -v
根据上述步骤的结果,可以判断当前系统是否已安装Node.js和npm。如果两者都已安装并且显示了版本号,则说明可以在系统上使用它们。如果没有安装或显示错误信息,则需要根据需要安装Node.js和npm。
![在这里插入图片描述](https://img-blog.csdnimg.cn/761405de8d24421392297e863e1ceb57.png)
## 2. 安装Elasticsearch Dump
打开终端或命令行界面, 运行以下命令来全局安装Elasticsearch Dump:
npm install elasticdump -g
![在这里插入图片描述](https://img-blog.csdnimg.cn/cbb14ae1d358464894585eb29333b497.png)
## 3. 使用Elasticsearch Dump导出索引结构
Elasticsearch Dump支持导出和导入索引的映射(mapping)和设置(settings)
### 3.1 导出索引设置(settings)
elasticdump --input=http://localhost:9200/my_index --output=/path/to/exported_settings.json --type=settings
这将导出"my\_index"索引的设置,并保存到指定的JSON文件中。
示例:
elasticdump --input=http://192.168.0.221:11700/cnoa_data_1987051001 --output=E:/elatic_dump/cnoa_data_1987051001_settings.json --type=settings
![在这里插入图片描述](https://img-blog.csdnimg.cn/f9c64ea024cc4ecbbbac842a1ffab55e.png)
### 3.2 导出索引映射(mapping)
elasticdump --input=http://localhost:9200/my_index --output=/path/to/exported_mapping.json --type=mapping
这将导出"my\_index"索引的映射,并保存到指定的JSON文件中
示例:
elasticdump --input=http://192.168.0.221:11700/cnoa_data_1987051001 --output=E:/elatic_dump/cnoa_data_1987051001_mapping.json --type=mapping
![在这里插入图片描述](https://img-blog.csdnimg.cn/baa0e07246734083b41e054b8650293e.png)
### 3.3 导入索引设置(settings)
elasticdump --input=/path/to/exported_settings.json --output=http://localhost:9200/new_index --type=settings
这将导入先前导出的设置数据到"new\_index"索引中。
示例:
elasticdump --input=E:/elatic_dump/cnoa_data_1987051001_settings.json --output=http://localhost:9200/zhouquan_index --type=settings
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b8b8b6c91c6406c843ef5f9cb42b080.png)
注意:此操作会创建新的es索引并设置settings
![在这里插入图片描述](https://img-blog.csdnimg.cn/cce5d893b7f74b668d09817d2563bcaf.png)
### 3.4 导入索引映射(mapping)
elasticdump --input=/path/to/exported_mapping.json --output=http://localhost:9200/new_index --type=mapping
这将导入先前导出的映射数据到"new\_index"索引中。
示例:
elasticdump --input=E:/elatic_dump/cnoa_data_1987051001_mapping.json --output=http://localhost:9200/zhouquan_index --type=mapping
![在这里插入图片描述](https://img-blog.csdnimg.cn/c684c4487cf3474190cbcd67ffc2aa83.png)
## 4. 导出index
### 4.1 导出索引(index)
elasticdump --input=http://192.168.0.1:9200/data --output=D:/duoyuan/testenv_bak/data_index.json --type=index
这将data索引导出到本地data\_index.json中
示例:
elasticdump --input=http://192.168.0.1:9200/zkcx_data_1987051001 --output=D:/duoyuan/testenv_bak/zkcx_data_1987051001_index.json --type=index
![在这里插入图片描述](https://img-blog.csdnimg.cn/e92885a3d04f425da011e9c4787d36b9.png)
### 4.2 导入索引(index)
elasticdump --input=D:/duoyuan/zkcx_datacenter_data_index.json --output=http://192.168.0.1:9700/zkcx_data_1987051001 --type=index
这将本地data\_index.json索引文件导入到192.168.0.1:9700/zkcx\_data\_1987051001的索引中
示例:
elasticdump --input=D:/duoyuan/zkcx_datacenter_data_index.json --output=http://192.168.0.1:9700/zkcx_data_1987051001 --type=index
![在这里插入图片描述](https://img-blog.csdnimg.cn/74858381b81b47a894a9caf67dbbe283.png)
## 5. 使用Elasticsearch Dump导出数据
在终端或命令行界面中,可以使用以下命令导出Elasticsearch索引中的数据:
elasticdump --input=http://your_elasticsearch_host:9200/your_index_name --output=/path/to/output_file.json --type=data
* 将 `your_elasticsearch_host` 替换为实际的Elasticsearch主机地址。
* 将 `your_index_name` 替换为要导出的索引名称。
* 将 `/path/to/output_file.json` 替换为您想要保存导出数据的路径和文件名。
* `--type=data` 参数指定导出类型为数据。您还可以选择导出其他类型,如`--type=mapping`(导出索引映射)或`--type=settings`(导出索引设置)。
* 可以使用其他选项来进一步配置导出,如 `--limit`(限制导出的文档数量)或 `--searchBody`(指定自定义的搜索查询)。
运行命令后,Elasticsearch Dump将开始将数据从指定的索引导出到指定的文件中。导出的文件将采用JSON格式
示例:
elasticdump --input=http://192.168.0.1:8200/book --output=E:/elatic_dump/esdumptest.json --type=data
![在这里插入图片描述](https://img-blog.csdnimg.cn/d7125d5034164300a37e57445aa55050.png)
## 5. 使用Elasticsearch Dump导入数据到另一个Elasticsearch实例
如果希望将导出的数据导入到另一个Elasticsearch实例,可以使用Elasticsearch Dump的`--output`参数来指定导入的目标。
elasticdump --input=/path/to/exported_file.json --output=http://new_elasticsearch_host:9200/new_index_name --type=data
* 将 `/path/to/exported_file.json` 替换为先前导出的文件路径和文件名。
* 将 `new_elasticsearch_host` 替换为目标Elasticsearch主机地址。
* 将 `new_index_name` 替换为目标索引名称。