Mysql
 sql >> Base de données >  >> RDS >> Mysql

Exécuter des commandes shell à partir de la procédure stockée MySQL

MySQL ne fournit pas cette fonctionnalité prête à l'emploi, mais elle est fournie par lib_mysqludf_sys bibliothèque. Si vous l'installez, vous pourrez appeler son sys_exec fonction pour exécuter des commandes :

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 ;

(J'ai trouvé cette approche sur http://crazytechthoughts .blogspot.com/2011/12/call-external-program-from-mysql.html .)