mysql在启动时截断表

时间:2011-03-13 16:26:28

标签: mysql truncate

How to truncate MySQL table on boot,
but want make sure script execute after mysqld started

mysql -h localhost -u root -pPASSWORD DBNAME -e "truncate table tables"
谢谢。

2 个答案:

答案 0 :(得分:1)

创建一个脚本startup.sql,将其存储在您的数据目录中,使其对服务器可读。 startup.sql脚本包含您需要的语句,例如“TRUNCATE TABLE tables;”。

将以下行添加到my.cnf文件的[mysqld]部分:

初​​始化文件= startup.sql

停止并重新启动服务器以进行测试。

相关文档可在此处找到:http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_init-file

答案 1 :(得分:0)

取决于你需要截断的原因......

或许考虑使用一个内存表,无论如何都会在服务器重启时被“截断”,因为它只保存在内存中......

否则你可以添加一行来截断你需要截断到设置脚本的每个表,并确保在启动时调用脚本。