lib_mysqludf_sy--mysql集成用户自定义函数(添加自定义函数)

来源:互联网 发布:皮试液的配制简便算法 编辑:程序博客网 时间:2024/05/20 11:37

1.lib_mysqludf_sys简介
mysql中没有执行外部命令的函数,要调用外部的命令,可以通过开发MySQL UDF来实现,lib_mysqludf_sys 就是一个实现了此功能的UDF库。
下载地址:https://github.com/mysqludf/lib_mysqludf_sys

2.使用方法
2.1 安装部署
a) lib_mysqludf_sys.so复制到mysql/lib/plugin目录下。

b) 在mysql中创建函数(根据需要选取):

?
1
2
3
4
5
6
7
8
9
10
11
DropFUNCTION IF EXISTS lib_mysqludf_sys_info;
DropFUNCTION IF EXISTS sys_get;
DropFUNCTION IF EXISTS sys_set;
DropFUNCTION IF EXISTS sys_exec;
DropFUNCTION IF EXISTS sys_eval;
 
CreateFUNCTION lib_mysqludf_sys_info RETURNSstring SONAME 'lib_mysqludf_sys.so';
CreateFUNCTION sys_get RETURNSstring SONAME 'lib_mysqludf_sys.so';
CreateFUNCTION sys_set RETURNSint SONAME 'lib_mysqludf_sys.so';
CreateFUNCTION sys_exec RETURNSint SONAME 'lib_mysqludf_sys.so';
CreateFUNCTION sys_eval RETURNSstring SONAME 'lib_mysqludf_sys.so';

2.2 使用此函数
例:在select语句调用mkdir命令

?
1
Selectsys_exec('mkdir -p /home/user1/aaa')

例:在触发器中调用外部的脚本(脚本需要可执行权限)

?
1
2
3
4
5
6
CreateTRIGGER trig_test AFTERInsert ON <table1>
FOREACH ROW
BEGIN
    DECLAREret INT;
    Selectsys_exec('/home/user1/test.sh')INTOret;
END

0 0
原创粉丝点击