MySQL支持用戶自定義函數,在MySQL服務器上安裝使用用戶自定義函數(User-defined function)可以增強MySQL的功能。本文主要介紹如何在MySQL中上傳UDF。
UDF是一種 C 語言庫,可以擴展 MySQL 的功能,比如說自定義函數、自定義聚合函數。
首先需要確定你已經安裝了 MySQL,此外還需要以下工具:
yum install gcc yum install gcc-c++ yum install libtool yum install automake yum install autoconf
下載 UDF 并編譯
wget https://github.com/mysqludf/lib_mysqludf_sys/archive/master.zip unzip master.zip cd lib_mysqludf_sys-master ./configure --with-mysql=/usr/bin/mysql_config make && make install
完成后在MySQL中進行測試,如下:
mysql>use mysql; mysql>create function sys_exec returns int soname 'lib_mysqludf_sys.so'; mysql>select sys_exec('ls -l');
上傳UDF
介紹一下MySQL的UDF上傳流程,首先需要驗證上傳庫的確在MySQL中運行
mysql>create function myfun(returns string soname 'path/to/your/lib.so') mysql>select myfun();
接下來就是上傳UDF庫的過程:
mysql -u root -p -e "set global secure_file_priv='/tmp/';" cp path/to/your/lib.so /tmp mysql -u root -p mysql>select @@global.secure_file_priv; ##如果上面的輸出值是 /tmp/ 的話就可以上傳了,否則再次執行上面的命令 mysql>create function myfun(returns string soname 'path/to/your/lib.so');
這樣就完成了MySQL的UDF上傳,此時就可以測試自定義函數是否有效了!
上一篇響應式布局css庫
下一篇哪個版本不能用css3