tmp for cassandra batch delete

本文介绍了一个用于Cassandra数据库的bash脚本,该脚本能够批量清空指定地址下的clicki_v4库中所有表的数据。通过提供Cassandra服务器地址作为参数,脚本会列出所有表并逐一进行数据清空操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

now i have no time to verify this bash script. it is hard for me to delete each data via primary key 

 

 

#!/bin/bash

if [[ ${1} == "" ]];then
echo "Please indicate the cassandra Address."
echo "Use this cmd like this:"
echo "./clear_data.sh 192.102.1.1"
exit
fi;

arr=(`cqlsh ${1} -f list_tables.cmd`)

echo "table list: ${arr[*]}"

for((i=0; i<${#arr[@]}; i++));do
count=(`cqlsh ${1} -e "use clicki_v4; select count(*) from ${arr[i]};"`)
#echo ${count[*]}
echo "before truncate table, there are ${count[2]} rows in table ${arr[i]};"
#====================================
#NOTE: dangerous command, please seriously check!!!!!!
cqlsh ${1} -e "use clicki_v4; truncate ${arr[i]};"
#====================================
count=(`cqlsh ${1} -e "use clicki_v4; select count(*) from ${arr[i]}"`)
echo "after truncate table, there are ${count[2]} rows in table ${arr[i]};"
done;


--目前就一个库clicki_v4,后续可以继续增加...
use clicki_v4;
desc tables;

 

CREATE TABLE coach_uat.mytable (
uid text,
id int,
name text,
PRIMARY KEY (uid),
    );

 

CREATE TABLE coach_uat.mytable(
  key1 text,
  key2 text,
  key3 text,
  column1 bigint,
  column2 int,
  column3 timestamp,
primary key(key1, key2, key3);
    )

 

转载于:https://www.cnblogs.com/qianjinyan/p/9182285.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值