批量删除mysql数据表

#批量删除mysql数据表 ####欢迎访问www.zhizhi123.com ###问题描述 工做中咱们会遇到批量删除一些mysql数据表的状况,好比如今有100个带'2012_'前缀的表,如何将其批量删除,it's a problem. ###假设 数据库:test 表特征:'2012_'前缀 mysql用户名:root mysql密码:passwd ###解决方案 echo "select concat('drop table ', table_name ,';') from TABLES where TABLE_SCHEMA ='test' and table_name like '%2012_%' ;" | mysql information_schema -uroot -ppasswd| sed -n '2,$p' | mysql test -uroot -ppasswd ###要点解析mysql

  1. 上述命令应用了“管道”
  2. 'select concat'拼接出了查询语句
  3. mysql中有一个默认存在的数据库information_schema,其中包含全部mysql的数据表信息
  4. sed -n '2,$p'是取出管道输入的第二行到末尾行

###注意事项sql

  1. 若是你的环境变量中没有加入mysql的命令,把上述mysql命令替换为完整命令路径
  2. 数据无价,谨慎删除!😂
相关文章
相关标签/搜索