1.下载lib_mysqludf_sys程序:https://github.com/mysqludf/lib_mysqludf_sys
2.解压文件,在源码目录里编译源代码:
gcc -DMYSQL_DYNAMIC_PLUGIN -fPIC -Wall -I/usr/include/mysql -I. -shared lib_mysqludf_sys.c -o lib_mysqludf_sys.so
3.把lib_mysqludf_sys.so文件放到 mysql的lib/mysql/plugin/
4.在mysql中执行如下sql创建函数
DROP FUNCTION IF EXISTS lib_mysqludf_sys_info; DROP FUNCTION IF EXISTS sys_get; DROP FUNCTION IF EXISTS sys_set; DROP FUNCTION IF EXISTS sys_exec; DROP FUNCTION IF EXISTS sys_eval; CREATE FUNCTION lib_mysqludf_sys_info RETURNS string SONAME 'lib_mysqludf_sys.so'; CREATE FUNCTION sys_get RETURNS string SONAME 'lib_mysqludf_sys.so'; CREATE FUNCTION sys_set RETURNS int SONAME 'lib_mysqludf_sys.so'; CREATE FUNCTION sys_exec RETURNS int SONAME 'lib_mysqludf_sys.so'; CREATE FUNCTION sys_eval RETURNS string SONAME 'lib_mysqludf_sys.so';
5.测试
创建shell脚本
vi /var/ant/ant_msg.sh #/bin/sh date > /tmp/testlog.txt
执行SQL: SELECT sys_exec("/var/ant/ant_msg.sh")
检查日志: tail -f /tmp/testlog.txt
发表评论