MySQL通过UDF实现扩展功能(Linux环境和Windows环境)

本文介绍了如何在MySQL中通过UDF(User Defined Function)扩展功能,包括在Linux和Windows环境下编译动态库。在Linux系统中,通过编译生成so动态链接库并安装测试;在Windows下,利用VS2015创建DLL并测试调用。通过UDF,可以在MySQL中执行shell脚本和Python功能。详细步骤和注意事项一并提供。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

    最近项目数据库选型,对于自治事务这个特性,MySQL不支持,在MySQL和PostGreSQL之间权衡对比了一段时间,后来发现,通过UDF可以实现,因此,最终敲定了MySQL,下面来记录下过程:

    环境说明:

        - 服务器环境: 前面基于CentOS7.1测试,后面基于Windows NT架构的系统进行测试

        - 数据库环境: MYSQL5.7.19

    UDF,也就是user definition function,通过动态库方式实现,因此,我们要做的,就是需要编译出一个动态链接库so或dll。

    测试代码如下:

#include <my_global.h>
#include <my_sys.h>

#include <mysql.h>
#include <m_ctype.h>
#include <m_string.h>
#include <stdlib.h>

#include <ctype.h>

#if defined(_WIN32) || defined(_WIN64) || defined(__WIN32__) || defined(WIN32)
    #define DLLEXP __declspec(dllexport)
#else
    #define DLLEXP
#endif

/* 自定义的函数 */
DLLEXP long long udf

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值