MySQL删除某个database的所有数据表 -好东西保存一下
2013-07-07 20:23
337 查看
1,在某些情况下,我要删除MySQL中某个schema下面的所有Tables,或者是要清空所有表中的数据,
这里介绍一种简单安全的方法,利用mysqldump工具,具体处理请见下面:
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^DROP | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
1.1 要求删除指定schema的所有表中数据,但是保持表结构。
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
原理说明:根据mysqldump的备份参数,包括drop table和建表create table语句,其实是先把database里的所有表drop后,再重建表结构。
1.2 要求删除指定schema的所有表。
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^DROP | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
加上grep来提取drop语句,不要create便可。
2 在MySQL中有关drop table的注意事项
2.1 drop table时数据表太大,table_cache
lock is being held so no other queries can start
详见:http://www.mysqlperformanceblog.com/2011/02/03/performance-problem-with-innodb-and-drop-table/
2.2
对于删除大表,利用link来实现快速删除,防止MySQL hung住
详见:http://www.mysqlops.com/2011/05/18/mysql%e5%88%a0%e9%99%a4%e5%a4%a7%e8%a1%a8%e6%9b%b4%e5%bf%ab%e7%9a%84drop-table%e5%8a%9e%e6%b3%95.html
这里介绍一种简单安全的方法,利用mysqldump工具,具体处理请见下面:
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^DROP | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
1.1 要求删除指定schema的所有表中数据,但是保持表结构。
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
原理说明:根据mysqldump的备份参数,包括drop table和建表create table语句,其实是先把database里的所有表drop后,再重建表结构。
1.2 要求删除指定schema的所有表。
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^DROP | mysql
-u[USERNAME] -p[PASSWORD] [DATABASE]
加上grep来提取drop语句,不要create便可。
2 在MySQL中有关drop table的注意事项
2.1 drop table时数据表太大,table_cache
lock is being held so no other queries can start
详见:http://www.mysqlperformanceblog.com/2011/02/03/performance-problem-with-innodb-and-drop-table/
2.2
对于删除大表,利用link来实现快速删除,防止MySQL hung住
详见:http://www.mysqlops.com/2011/05/18/mysql%e5%88%a0%e9%99%a4%e5%a4%a7%e8%a1%a8%e6%9b%b4%e5%bf%ab%e7%9a%84drop-table%e5%8a%9e%e6%b3%95.html
相关文章推荐
- mysql 删除数据库中所有的表中的数据,只删database下面所有的表。
- mysql 删除(清除)所有表数据方法,表格保留
- 删除所有MYSQL数据表的脚本
- 安卓学习笔记---如何保存数据到SharePreference里面,获取所有sp文件以及删除文件
- 记录一下误删除了mysql表中的数据后的恢复过程
- 保存数据库中其他对象不变,删除数据库中所有数据的实现方法
- MySQL删除所有数据时报错
- mysql删除表中所有数据
- 批量删除mysql一个库所有数据表方法
- MYSQL删除数据库报 ERROR 1010 (HY000): Error dropping database
- PHP mysql 删除表中所有数据只保留一条
- mysql关联查询怎么在查询软件中一下就能查询到所有的关联数据,修改的时候也方便,对比数据
- 保存中其他对象不变,删除数据库中所有数据的实现方法
- mysql 批量删除数据库中的所有数据
- (转帖的)如何完整彻底删除mysql,保存一下。
- 删除NSUserDefault保存的所有数据
- MYSQL删除数据库报 ERROR 1010 (HY000): Error dropping database (can't rmdir ...
- mysql 删除重复数据,并保存最新一条数据
- mysql下如何更改database下所有表的数据引擎--MyISAM 到InnoDB
- 保存数据库中其他对象不变,删除数据库中所有数据的实现方法