[英]MYSQL trigger that externally launches a PHP script
我目前正在嘗試使用mysql觸發器來啟動php腳本。 啟動時,腳本將從特定網站檢索數據,並將其放入另一個表中。 我已經測試了腳本,當我使用php5運行它時,它當前有效。 我也正確安裝了lib_mysqludf_sys,並將正確的文件夾移動到mysql的插件文件夾中。 當我創建觸發器時,我沒有收到任何錯誤。 它只是不會運行我的PHP腳本。 我哪里出錯了,我怎么能解決它?
DELIMITER $$
CREATE TRIGGER getFriends
-> AFTER INSERT ON tbluser
-> FOR EACH ROW
-> BEGIN
-> DECLARE RESULT INT;
-> SET RESULT = sys_exec('php5 /var/www/html/getFriends.php');
->END$$;
DELIMITER ;
確認您使用的是正確的插件文件夾:
SHOW VARIABLES LIKE 'plugin_dir';
重新創建功能:
DROP FUNCTION IF EXISTS sys_exec;
CREATE FUNCTION sys_exec RETURNS int SONAME 'lib_mysqludf_sys.so';
確保您使用可執行文件的完整路徑:
SET RESULT = sys_exec('/usr/bin/php5 /var/www/html/getFriends.php');
並確保運行MySQL的用戶具有訪問此腳本的權限,並執行其正在執行的操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.