一个删除MySQL大表数据的shell脚本

#!/bin/bash
#为了删除一些特别大的表
dbname=''  #库名
tabname=''  #表名
step='10000' #删除步长
sleeptime=1  #睡眠时间
start_index=30000001  #开始行
end_index=39938589   #结束行
#为了防止误执行,把密码删除,用的时候再加
MYSQL="mysql -uroot -p -t -e "

i_start=$start_index
i_end=$(expr "$start_index" + "$step")
i_end=$(expr "$i_end" - 1)
if [ $i_end -gt $end_index ]; then
  i_end=$end_index
fi
while [ $i_end -le $end_index ]; do
    echo "start delete from $i_start to $i_end"
    #mysql delete delete from yitain where id >= $i_start and id <= $i_end
    #$MYSQL "delete from $dbname.$tabname where id >= $i_start and id <= $i_end;"
    i_start=$(expr "$i_end" + 1)
    i_end=$(expr "$i_end" + "$step")
    if [ $i_start -gt $end_index ]; then
        break
    fi
    if [ $i_end -gt $end_index ]; then
      i_end=$end_index
    fi
    sleep $sleeptime
done

原创文章,作者:tars,如若转载,请注明出处:http://www.178linux.com/6308

(0)
tarstars
上一篇 2015-07-16
下一篇 2015-07-19

相关推荐

  • redis/twemproxy 客户端连接异常

    对于一个DBA,客户端连接异常问题可以说是家常便饭的事情,处理多了都想吐。 root cause无疑发生在三个地方,先找自身的原因,依次排查下去: 1)服务器端db的负载,如果负载太高,创建socket太慢引起超时。另外服务器端socket的个数太多,也可以导致创建连接需要很长的时间或者创建连接不成功。 2)网络是够有抖动,包括lvs/twemproxy重启…

    Linux干货 2015-04-03
  • Liunx权限的管理

    一、权限 获取某种资源的能力。对于Liunx而言,一切皆文件。所以,对于Liunx的权限定义,也就是定义文件被不同用户访问能力的过程。 权限分为三种:r、w、x 文件 r:查看文件内容 w:修改文件内容 x:可以将文件启动运行 目录 r:可以使用ls命令查看目录中的文件名 w:可以在目录中创建或删除文件(能否删除文件,取决于用户对目录的写权限 x:可以cd到…

    Linux干货 2015-04-03
  • 系统日志和loganalyzer

    作为运维人员,熟悉系统日志是一项基本功。本文将介绍centos6的系统日志rsyslog及loganalyzer工具。 简介 系统日志:记录历史事件,通常都是按时间顺序将发生的事件予以记录,linux上的日志分为syslogd(系统进程相关日志)和klogd(内核事件日志) centos5:syslog    缺点:不能进行并行数据存储,…

    Linux干货 2016-03-20
  • find命令简单总结

     find     字符串类查询:            -type   //根据文件类型查找       &…

    Linux干货 2015-09-14
  • LVS专题: NAT和DR模型实现Web负载均衡

    LVS专题: NAT和DR模型实现Web负载均衡 前言: NAT实现 Real Server配置 Director配置 测试 实验拓扑 实验环境 实验步骤 DR实现 Director配置 Real Server配置 测试 实验拓扑 实验环境 实验步骤 总结: 前言: 在上篇文章中我们讲了一些LVS的基本概念和相应模型的实验原理和流程,本篇文章我们主要使用lv…

    2016-04-05
  • Linux-第一周作业

    1.计算机组成及其功能 计算机主要分为三部分: A、输入单元:包括键盘、鼠标、扫描仪、手写板、触摸屏等。 B、中央处理器(CPU):含有算术逻辑、控制、记忆等单元。 C、输出单元:例如屏幕、打印机等。 我们通过输入设备(如鼠标与键盘)来将一些数据输入到PC里面,然后再由PC的功能处理成为图表或文章等信息后,将结果传输到输出设备,如屏幕或打印机上面,这是计算机…

    Linux干货 2016-07-07