删除一个表的所有数据,可以使用delete
*
from
'table'
MySQL
AB
公司开发,目前属于
Oracle
旗下公司。MySQL
最流行的关系型数据库管理系统,在
WEB
应用方面
MySQL
是最好的
RDBMS
(Relational
Database
Management
System,关系数据库管理系统)
应用软件之一。
利用shell的do....done循环写一个脚本,在系统环境下进行删除。
利用excle的编辑便利性写好sql脚本再导入文本中,进入数据库后使用source /tmp/xxx.txt。
(愚见:数据库一般没有批量删除的功能,这太危险了。)
系统内有一只游戏日志表,每日以百万条数据增长,过段时间需要按照日期清理数据。同事使用delete循环删除过一次,时间久不说,表中的数据是删除了,但是查看服务器发现,*.idb文件大小居高不下,使用optimize table 表名 , 优化表以后,内存大小恢复正常。前前后后花费将近4个小时的时间。效率比较低,偶然想起TRUNCATE TABLE,决定使用以下方案,结果10分钟内,清除3千多万条废弃数据。记录以下,已备下次使用。
按以上步骤,可以解决锁表问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)