是否可以运行任意shell命令 - 例如,使用MySQL存储过程将文件从一个文件夹移动到另一个文件夹?如果是这样,怎么样?
答案 0 :(得分:4)
MySQL不提供开箱即用的此功能,但它由lib_mysqludf_sys
库提供。如果安装它,您将能够调用其sys_exec
函数来执行命令:
DELIMITER @@
CREATE TRIGGER Test_Trigger
AFTER INSERT ON MyTable
FOR EACH ROW
BEGIN
DECLARE cmd CHAR(255);
DECLARE result int(10);
SET cmd=('mv path/to/file new/path/file');
SET result = sys_exec(cmd);
END;
@@
DELIMITER ;
(我在http://crazytechthoughts.blogspot.com/2011/12/call-external-program-from-mysql.html找到了这种方法。)