## 安装node
使用 node 安装 elasticdump 非常方便。
node 官网:传送门 https://nodejs.org/en
下载版本:node-v12.14.0-linux-x64.tar.gz
安装环境:centos7.9
### 创建nodejs文件夹
```
cd /usr/local
mkdir nodejs
```
### 解压文件
```
tar -xzvf node-v12.14.0-linux-x64.tar.gz
```
### 移动nodejs文件
```
mv node-v12.14.0-linux-x64/* /usr/local/nodejs
```
### 建立软链接
此时的bin文件夹中已经存在node以及npm,如果你进入到对应文件的中执行命令行一点问题都没有,不过不是全局的,所以通过建立软链接的方式将这个设置为全局。
```
ln -s /usr/local/nodejs/bin/node /usr/local/bin
```
```
ln -s /usr/local/nodejs/bin/npm /usr/local/bin
```
### 测试node
```
[root@ncayu8847 data]# node -v
v12.14.0
[root@ncayu8847 data]# npm -v
6.13.4
```
## 安装打包工具 npm-pack-all
```
npm install -g npm-pack-all
```
打包步骤
* 找到项目中node-modules;
* 在node-modules中找到需要打离线包的依赖包;
* 在上述的依赖包中找到node-modules;
* 在终端中打开这个node-modules并执行npm-pack-all;
* 在文件夹中打开执行npm-pack-all的路径,可以在当前或者下一级看到tgz包。
## 安装elasticdump
```
npm install elasticdump -g
```
```
[root@ncayu8847 data]# npm install elasticdump -g
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated s3signed@0.1.0: This module is no longer maintained. It is provided as is.
/usr/local/nodejs/bin/multielasticdump -> /usr/local/nodejs/lib/node_modules/elasticdump/bin/multielasticdump
/usr/local/nodejs/bin/elasticdump -> /usr/local/nodejs/lib/node_modules/elasticdump/bin/elasticdump
+ elasticdump@6.103.0
added 128 packages from 200 contributors in 58.933s
[root@ncayu8847 data]#
```
### 打包elasticdump
进入到elasticdump安装目录
```
cd /usr/local/nodejs/lib/node_modules/elasticdump/
```
执行 npm-pack-all
当前目录生成 elasticdump-6.82.0.tgz
```
/usr/local/nodejs/lib/node_modules/npm-pack-all/index.js
```
### npm 离线安装esdump
```
npm install elasticdump-6.84.1.tgz
```
### 确认安装成功
elasticdump创建软连接
```
ln -s /usr/local/nodejs/lib/node_modules/elasticdump/bin/elasticdump /usr/local/bin
```
```
elasticdump --help
```
## elasticdump备份ES数据库
迁移Setting和Mapping等
```
elasticdump \
--input=http://192.168.1.1:9200/my_index \
--output=http://192.168.3.2:9200/my_index \
--type=analyzer
elasticdump \
--input=http://192.168.1.1:9200/my_index \
--output=http://192.168.3.2:9200/my_index \
--type=settings
elasticdump \
--input=http://192.168.1.1:9200/my_index \
--output=http://192.168.3.2:9200/my_index \
--type=mapping
```
迁移数据
```
elasticdump \
--input=http://192.168.1.1:9200/my_index \
--output=http://192.168.3.2:9200/my_index \
--type=data
```
### 示例
```
elasticdump \
--input='http://elastic:password@192.168.1.1:9200/my_index' \
--output=/data/my_index_mapping.json \
--type=mapping
elasticdump \
--input='http://elastic:password@192.168.1.1:9200/my_index' \
--output=/data/my_index_index.json \
--type=data
```
- 写在前面
- linux命令行
- 基础篇
- 1.SSH连接工具
- 2.查看系统版本信息
- 3.查看IP地址
- 4.查看cpu信息
- 5.查看内存磁盘信息
- 6.文件上传下载
- 7.linux中查找文件(find)
- 8.修改root账号密码
- 9.通过进程号查看端口
- 10.校验MD5值
- 11.Linux命令之seq
- 12.Linux命令之corntab
- 13.linux命令之awk
- 进阶篇
- 查看防火墙是否开启
- linux创建新的用户
- 更改文件的用户组
- 查找JAVA_HOME路径
- Linux主机时间同步
- 高CPU排查-个人总结
- Linux查看GPU性能
- 文件排序工具sort
- sed
- grep
- 实战篇
- 1.Linux基线
- 2.iptables学习
- 3.Tcpdump抓包命令
- 4.CentOS7更换镜像源
- shell脚本篇
- 1.Shell脚本速查手册
- 2.Shell中获取取昨天和多天前日期
- 3.rsync删除文件
- 4.nginx自动化安装脚本
- 5.后台启动服务
- 6.备份文件保留5天
- 数据库
- MySQL数据库备份命令
- ES数据库备份
- filebeat工具
- packetbeat工具
- MySQL数据库中删除表
- Docker容器
- 1.安装docker容器
- 2.docker容器的使用
- 3.docker overlay2 是存放什么的
- 4.docker删除已停止的容器
- 5.docker网卡的IP地址修改
- Ubuntu容器下载vim,curl命令
- docker磁盘占用瞬间变大问题解决
- Python学习
- 安装python环境
- Python 把代码编译成pyc文件