mysql用触发器同步表

一、先复制表 :

create table tytj select * from tongji where user=0 and DATE = '2016-09-26' or DATE = '2016-09-27';  

二、创建插入数据时的【触发器】  在phpmyadmin 运行时记得要修改语句定界符为 $

CREATE TRIGGER t_afterinsert_on_tongji
AFTER INSERT ON tongji
FOR EACH ROW
BEGIN
     insert into tytj(id,time,uid,user,channel,date) values(new.id,new.time,new.uid,new.user,new.channel,new.date);
     delete from tytj where user=1;
END$

三、创建删除数据时的【触发器】

CREATE TRIGGER t_afterdelete_on_tongji
AFTER DELETE ON tongji
FOR EACH ROW
BEGIN
      delete from tytj where id=old.id;
END$

四、创建【事件】,删除两天前的数据:  每天运行 ,开始时间是 : '2016-09-30 08:00:00'  没有结束时间

CREATE EVENT event_delete_table_daily
ON SCHEDULE EVERY 1 DAY 
STARTS  '2016-09-30 08:00:00'   
ENABLE
DO
BEGIN
delete from tytj where date < DATE_SUB(CURDATE(),INTERVAL 2 DAY);
END$

增加触发器时 成功添加之后 mysql出错了:  超过连接数

 很多开发人员都会遇见”MySQL: ERROR 1040: Too many connections”的异常情况,

造成这种情况的一种原因是访问量过高,MySQL服务器抗不住,这个时候就要考虑增加从服务器分散读压力;  //可惜 我遇见的可能是这一种

另一种原因就是MySQL配置文件中max_connections值过小。

posted @ 2016-09-29 16:37    阅读(2973)  评论(0编辑  收藏  举报