nodetool 常用命令梳理

nodetool 常用命令梳理

Cassandra 自带了多个功能强大集群或数据管理工具,数量掌握有助于诊断和维护Cassandra集群、快速解决各种问题。

命令如下:

nodetool: 是一个命令行的工具集,它可以监控Cassandra和执行例行的数据库操作。作为内建的工具,nodetool一般用于在节点上直接运行。
nodetool工具集支持大多数重要的JMX指标和操作,并且包含了一些为管理员准备的命令。

cassandra utility: Cassandra utility 其实是Cassandra提供的一个启动时配置接口,也就是说通过这个方法可以配置cassandra启动参数,例如运行时java heap size等。

cassandra-stress tool:cassandra stress tool是一个针对集群进行压力测试的工具。

SSTable utilities: 是一组操作sstable的工具。

CQL shell:是一个通过CQL( Cassandra Query Language)来与Cassandra集群中的数据进行交互的命令行工具。

集群监控命令

列出nodetool所有可用的命令:nodetool help 
列出指定command 的帮助内容:nodetool help command-name
nodetool常用监控命令:nodetool工具集提供了一批用于查看表的指标、服务器指标和压缩统计。
nodetool describecluster:输出集群信息。
nodetool  ring : 查询环状
nodetool status:输出集群环的快速摘要和集群的当前状况;
nodetool netstats:  显示网络连接操作的统计数据;
查看某个节点负载,内存使用情况: nodetool info 
nodetool tpstats:列出Cassandra维护的线程池的信息,可以看到每个阶段有多少操作,以及他们的状态是活动中、等待还是完成;
nodetool cfstats/tablestats:查看表的一些信息,包括读的次数,写的次数,sstable的数量,memtable信息,压缩信息,bloomfilter信息;
查看指定表空间,默认输出所有:nodetool cfstats ptmind_test.users
nodetool cfhistograms: 显示表的统计数据,包括读写延迟,行大小,列的数量和SSTable的数量;
查看指定表空间,默认输出所有:nodetool cfhistograms ptmind_test.users
nodetool compactionstats:显示当前正在压缩的任务进度。

集群管理命令

nodetool decommission:关闭当前节点,并把数据复制到环中紧邻的下一个节点,当前节点不在对外服务 。
nodetool rebuild:当有新的数据中心加入,运行这个命令复制数据到数据中心
nodetool removenode HostID:删除一个节点 例:./nodetool removenode dcbbad83-fe7c-4580-ade7-aa763b8d2c40
nodetool removenode status:查看删除状态
nodetool removenode force:如果用status发现总在等待一个节点, 行一次force停掉
nodetool flush 或repair : 是将某keyspace中的缓存区数据提交,所以必须有在flush命令后提交一个keySpace的参数,否则命令不能执行. 
nodetool drain: 会把memtable中的数据刷新到sstable,并且当前节点会终止与其他节点的联系。执行完这条命令需要重启这个节点。一般在Cassandra版本升级的时候才使用这个命令。
nodetool move命令: 将当前节点中的数据转移到另一个指定的集群节点. 
nodetool loadbalance命令: 上传当前节点的所有数据到其它集群节点中,并将读取节点的请求转发到ring中的其它节点中. 

集群空间相关命令

nodetool describering: 后面需要跟keyspace的名字,显示圆环的节点信息。
nodetool getendpoints keyspacename tablename fieldname: 查看key分布在哪一个节点上
nodetool getsstables keyspacename tablename fieldname: 查看key分布在哪一个SSTable上
nodetool compact [keyspacename [tablename]]: 合并sstable文件。省略表,压缩keyspace下面的所有表  省略keyspace,压缩所有keyspace下的所有表
nodetool scrub :清洗指定的表的SSTable, 试图删除损坏的部分,保留完好的部分。

集群备份相关命令

nodetool refresh -- keyspacename tablename :把快照文件复制到对应表的目录下(data/keyspace/tablename-UUID) 运行该命令加载新的SSTables 不需要重启机器节点。
nodetool snapshot :用于创建keyspace或table的快照信息,即数据备份,可用于数据的恢复
nodetool clearsnapshot [-t snapshotname -- keyspacename] :删除快照

你可能感兴趣的:(nodetool 常用命令梳理)