sql >> Base de Datos >  >> RDS >> Mysql

Ejecutar comandos de shell desde el procedimiento almacenado de MySQL

MySQL no proporciona esta funcionalidad de fábrica, pero la proporciona lib_mysqludf_sys biblioteca. Si instala eso, podrá llamar a su sys_exec función para ejecutar comandos:

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 ;

(Encontré este enfoque en http://crazytechthoughts blogspot.com/2011/12/call-external-program-from-mysql.html .)