一个删除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 22:25
下一篇 2015-07-19 22:09

相关推荐

  • 在虚拟机上使用CentOS6的两个iso文件创建本地yum仓库和http仓库

    yum客户端和服务器端都是本虚拟机 一、创建本地磁盘访问的yum仓库 条件和要求: a.guest虚拟机需要添加2个光驱,分别装载CentOS6.4发行版的DVD1和DVD2 b.DVD1和DVD2的挂载目录分别是:/media/cdrom/下的os和extras,并设置开机挂载 c.使用CentOS-Media.repo作为yum客户端配置文件,将其他re…

    Linux干货 2015-09-22
  • 马哥教育网络班20期+第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel/ /home/tuser1 [root@localhost ~]# chmod&n…

    系统运维 2016-07-07
  • 常见文件管理命令及bash特性

    cat:查看文件文本内容  -n:显示行号  [root@study ~]# cat -n /etc/passwd  1  root:x:0:0:root:/root:/bin/bash  2  bin:x:1:1:bin:/bin:/sb…

    系统运维 2016-11-06
  • Openssl加密解密原理+CA自建实现

     Openssl加密解密原理+CA自建实现     前言 互联网的惊人发展使企业和消费者都感到非常兴奋,它正改变着我们的生活和工作方式。但是,互联网的安全程度如何——尤其是在通过它发送机密信息时的安全性——已经成为人们关心的主要问题。随着时代的发展,加密原理也不断地在更新换代. 数据的加密目前已广泛地运用于战争,商业活…

    Linux干货 2015-05-25
  • 在学习的过程中,我们应该如何获取帮助?

    正文 在学习的过程当中,我们总是遇到不会使用的问题,以各种姿势来获取帮助是一个运维人员的基本要求 在Linux系统中我们获取帮助主要有以下几种方式 1. 使用命令内建的选项来获取帮助 2. 使用man来查看命令使用手册 3. 使用info来查看命令的信息页 4. 查看软件自带的帮助文档 5. 查看软件官方的文档 6. 查看发行版本的文档 7. Google相…

    Linux干货 2016-03-04
  • 关于 开机启动加密破坏修复 自制linux系统

         开机破坏并且修复之       自制linux系统                CentOS 6启动流程: POST –> Boot Sequence(BIOS) –&…

    系统运维 2016-09-14