当前位置:  开发笔记 > 编程语言 > 正文

用于截断所有MySql表的shell脚本

如何解决《用于截断所有MySql表的shell脚本》经验,为你挑选了1个好方法。

我正在寻找一个Unix shell脚本,它将截断模式中的所有表.已经提出了一个类似的问题,但是我还有一些额外的要求,这些要求使得所提供的答案都不令人满意

必须是Unix shell脚本(即没有python,perl,PHP)

该脚本必须按照与外键约束相关的顺序截断表

我宁愿不必使用存储过程

唐先生,提前谢谢



1> Paul Dixon..:

像这样厚脸皮的东西怎么样:

mysqldump  --no-data mydb | mysql mydb

获取模式的转储并将其重放到数据库中!

另外,检查了MK-发现在Maatkit,你应该能够做这样的事情:

mk-find -exec "truncate %s"

mk-find的描述:

该工具是UNIX"find"命令的MySQL对应物.它接受测试(例如"查找大于1GB的所有表")并执行操作,例如执行SQL("DROP TABLE%s").使用此工具,您可以自动完成许多繁琐的任务,例如测量表和索引的大小,保存历史趋势的数据,删除旧的临时表等等.它在周期性计划任务(如cron作业)中特别有用.

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有