最流行的nosql数据库:高性能分布式NoSQL数据库Aerospike
最流行的nosql数据库:高性能分布式NoSQL数据库Aerospike默认127.0.0.1备份连接的Aerospike节点的IP含义备注-h
1.1 Asadm1.1.1 Info通过该命令可以看出Aerospike集群的运行状态。
1.2 数据备份与恢复流立方的数据全部存储在分布式缓存Aerospike中,Aerospike中数据的备份与恢复使用asbackup及asrestore这两个命令完成,使用这两个命令需要先安装aerospike-tools。
1.2.1 备份 asbackup该命令既可以把集群中所有节点的数据一次性全部备份来,也可以只备份其中的某一个节点或若干个节点的数据。也可以通过参数指定备份数据的namespace和set。各参数的含义如下:
参数 |
含义 |
备注 |
-h |
备份连接的Aerospike节点的IP |
默认127.0.0.1 |
-p |
备份连接的Aerospike节点的端口 |
默认3000 |
-n |
备份的namespace |
该参数必须设置 |
-s |
备份的set,默认备份指定namespace下的所有set | |
-d |
存储备份数据的目录 |
该参数必须设置 |
-r |
是否强制删除目录下的其他备份文件 |
默认不删除 |
-f |
备份任务的优先级0:自动,1:低,2:中,3:高 |
默认是0 |
-c |
在集群变动时,取消备份任务 | |
-x nobin |
不备份bin数据 |
一般不要设置 |
-B bin_list |
只备份指定的bin | |
-w |
并发备份的节点数 |
默认10 |
-l |
只备份指定的节点,格式为:<IP addr 1>:<port 1>[ <IP addr 2>:<port 2>[ ...]] |
不可和-h、-p参数同时使用,使用-h、-p时,表示备份集群中所有节点的数据 |
更详细的信息可以使用asbackup --help查看
1.2.2 asrestore该命令可以把由asbackup命令导出的数据导入Aerospike。
该命令的参数如下:
参数 |
含义 |
备注 |
-h |
连接的Aerospike节点的IP |
默认127.0.0.1 |
-p |
连接的Aerospike节点的端口 |
默认3000 |
-n |
导入的namespace |
默认备份时的namespace |
-d |
存储备份数据的目录 |
该参数必须设置 |
-t |
导入数据的工作线程数 |
默认20 |
-u |
只导入缺失的record,已经存在的record不更新 |
默认更新存在的record |
-r |
替换已经存在的记录 |
默认不删除 |
-B bin_list |
只导入指定的bin |
默认导入所有 |
-g |
检查generation |
默认false,不检查 |
更详细的信息可以使用asrestore --help查看
1.2.3 示例假设现在有一个3个Aerospike节点组成的集群,各节点的IP依次为192.168.235.131、192.168.235.132、192.168.235.133,端口号都是3000。存放数据的namespace为bsfit、set为frms。
1.2.3.1 每个节点各自备份与恢复备份数据
备份192.168.235.131的数据:asbackup -d ./backup -n bsfit -s frms -l 192.168.235.131:3000 -r
备份192.168.235.132的数据:asbackup -d ./backup -n bsfit -s frms -l 192.168.235.131:3000 -r
备份192.168.235.133的数据:asbackup -d ./backup -n bsfit -s frms -l 192.168.235.131:3000 -r
恢复数据
恢复192.168.235.131的数据:asrestore -d backup -h 192.168.235.131 -p 3000 -n bsfit
恢复192.168.235.132的数据:asrestore -d backup -h 192.168.235.131 -p 3000 -n bsfit
恢复192.168.235.133的数据:asrestore -d backup -h 192.168.235.131 -p 3000 -n bsfit
注:恢复数据时,-h和-p参数只需要指定集群中任意节点的地址及端口即可。
1.2.3.2 集群统一备份与恢复备份数据
执行如下命令:asbackup -d ./backup -n bsfit -s frms -h 192.168.235.131 -p 3000 -r。当然也可以使用-l参数指定集群中的所有节点,如:asbackup -d ./backup -n bsfit -s frms -l 192.168.235.131:3000 192.168.235.132:3000 192.168.235.133:3000 -r
恢复数据
asrestore -d backup -h 192.168.235.131 -p 3000 -n bsfit