#!/bin/bash
####################################################################################
#splitregion.sh -h 172.16.4.51 -P 4015 -d figl -t arap_oar_b -u root -p test -n 10
#               -h      ip地址
#               -P      端口
#               -d      数据库
#               -t      表
#               -u      用户
#               -p      密码
#               -n      split region 数 / 1000
#####################################################################################
while getopts ":h:P:d:t:u:p:n:" opt
do
    case $opt in
        h)
	V_HOST=$OPTARG
        ;;
        P)
        V_PORT=$OPTARG
        ;;
        d)
        V_DB_NAME=$OPTARG
        ;;
        t)
        V_TAB_NAME=$OPTARG
        ;;
        u)
        V_USER=$OPTARG
        ;;
        p)
        V_PASSWORD=$OPTARG
        ;;
        n)
        V_NUM=$OPTARG
        ;;
        ?)
        echo "usage $0 -h -p -d -t "
        echo "  -h  ip address"
        echo "  -P  port "
        echo "  -d  database"
        echo "  -t  tablename"
        echo "  -u  username"
        echo "  -p  password"
        exit 1;
        ;;
    esac
done

max_key=92233720368547758
#let V_NUM=100


for i in `seq 1 $V_NUM`
do
start_key=$[$max_key/$V_NUM*($i-1)]
end_key=$[$max_key/$V_NUM*$i-1]

mysql -h $V_HOST -P$V_PORT -u$V_USER -p$V_PASSWORD -D $V_DB_NAME -e "split table $V_TAB_NAME BETWEEN ($start_key) AND ($end_key) regions 1000" &

done
