mysql触发器调用外部脚本

思路:

需要安装一个mysql的udf函数。这样就可以了。

源码:

#在tbls表上面创建触发器
#由于不能查询到刚插入的那条记录。所以只能在这边手动的传参
drop TRIGGER trigger_tbls;
create TRIGGER trigger_tbls AFTER INSERT ON hive_metastore.TBLS 
FOR EACH ROW
BEGIN
DECLARE script_sh VARCHAR(200) DEFAULT 'sh /opt/trigger/trigger_tbls.sh ';
DECLARE h_num VARCHAR(300) DEFAULT NEW.TBL_ID; 
DECLARE script_str_sh VARCHAR(2000) DEFAULT CONCAT(script_sh,h_num);
DECLARE cur2 CURSOR FOR select sys_exec(script_str_sh);
OPEN cur2;
insert into test.test_1(name,date_time,type) values(script_str_sh,NOW(),'table_meta');
CLOSE cur2;
END;
#在partition上面创建触发器
drop TRIGGER trigger_t

你可能感兴趣的:(数据库,mysql,触发器)