mysql udf 刷新表_MYSQL之数据库变动时使用mysql-http-udf实时更新前台

本文介绍了如何利用MySQL的触发器和mysql-http-udf插件,实现实时将数据库变动通过HTTP请求传递给web服务器,从而更新前端数据。首先,详细讲解了安装Mysql、libcurl和mysql-http-udf的步骤,然后通过创建自定义函数和触发器,演示了在数据插入、更新和删除时,如何调用http_get、http_post和http_delete函数。最后,提到了使用redis作为优化方向,以及并发处理以提高性能。
摘要由CSDN通过智能技术生成

文章目录

一、安装Mysql

二、安装libcurl

三、安装mysql-http-udf

四、使用mysql-http-udf

实验1:mysql-http-udf与web服务器

准备服务器

1、创建项目

2、编写代码

3、打开服务器

Mysql测试准备

1、登陆MySQL

2、创建测试表

3、创建 触发器

4、测试

5、备注

实验2:验证“MySQL返回json”【不要看】

实验3:触发器中使用count(1)【不要看】

实验4:同时发送多个请求[允许]

实验2:mysql结合mysql-http-udf,使用redis测试

背景:项目中遇到一个问题,如果数据库中的数据变动之后及时通知前台

通过查找资料,决定采用websocket技术让服务器主动通过客户端。

但是问题来了,服务器如何得知数据库中有数据变化呢?我想了以下几种方法

(1)、服务器轮询。这个不好,只不过从客户端轮询–>服务器—>数据库 变成了服务器(轮询)—>数据库。有一点点改进

(2)、服务器监听数据库。这个相当于长轮询,pass

(3)、数据库中使用触发器和udf扩展服务,当数据库中有变化时,查询出结果通过http返回给服务器,服务器在通过websocket转交给客户端,即数据库–>服务器—>客户端。但是在做的过程中,发现MYSQL的触发器辣鸡的一笔,决定更改架构数据库–>服务器–>数据库—>服务器–>客户端。

(4)、将来的优化方向:redis缓存,消息队列,消息中间件

文章目录

一、安装Mysql

二、安装libcurl

三、安装mysql-http-udf

四、使用mysql-http-udf

实验1:mysql-http-udf与web服务器

准备服务器

1、创建项目

2、编写代码

3、打开服务器

Mysql测试准备

1、登陆MySQL

2、创建测试表

3、创建 触发器

4、测试

5、备注

实验2:验证“MySQL返回json”【不要看】

实验3:触发器中使用count(1)【不要看】

实验4:同时发送多个请求[允许]

实验2:mysql结合mysql-http-udf,使用redis测试

一、安装Mysql

$ uname -a

Linux ubuntu 4.18.0-13-generic #14-Ubuntu SMP Wed Dec 5 09:04:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

1.查看是否安装

$ sudo netstat -tap | grep mysql

2.安装

$ sudo apt-get update

$ sudo apt-get install mysql-server

$ sudo apt-get install mysql-client

$ sudo apt-get install libmysqlclient-dev

备注:安装了libmysqlclient-dev以后,在mysql安装目录下/usr/bin才会有mysql_config配置文件。

3.测试是否安装成功

sudo netstat -tap | grep mysql

备注:

此时mysql的安装目录为:/usr/bin

mysql插件的目录(可以登陆mysql以后使用命令show variables like ‘%plugin%’;查看) 我的为:/usr/lib/mysql/plugin

二、安装libcurl

$ sudo apt-get install libcurl4-openssl-dev

三、安装mysql-http-udf

1、下载:mysql-udf-http-1.0.tar.gz

网址:https://code.google.com/archive/p/mysql-udf-http/downloads

f2b0f97758c878aacd6a766727fcf45f.png

或者:https://pan.baidu.com/s/1nuYZqR3

2、解压:

$ tar zvxf mysql-udf-http-1.0.tar.gz

$ cd mysql-udf-http-1.0/

3、配置

$ ./configure --prefix=/usr/local/mysql-udf-http --with-mysql=/usr/bin/mysql_config

*******

configure: creating ./config.status

config.status: creating Makefile

config.status: creating src/Makefile

config.status: creating src/curl_config.h

config.status: executing depfiles commands

备注:

其中–prefix是你安装mysql-udf-http指定的安装目录,–with-mysql是你安装的mysql目录下的mysql_config文件所在位置。

遇到的错误:configure: error: no acceptable C compiler found in $PATH

解决:sudo apt-get install gcc

4、安装

$ sudo make

$ sudo make install

5.添加软链

sudo ln -s /usr/local/mysql-udf-http/lib/mysql/plugin/mysql-udf-http.so.0.0.0 /usr/lib/mysql/plugin/mysql-udf-http.so

5.将安装好的插件拷贝到mysql的插件目录下

$ sudo cp /usr/local/mysql-udf-http/lib/mysql-udf-http.so.0.0.0 /usr/lib/mysql/plugin/mysql-udf-http.so

四、使用mysql-http-udf

登陆Mysql

1.创建自定义函数

create function http_get returns string soname 'mysql-udf-http.so';

create function http_post returns string soname 'mysql-udf-http.so

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
lib_mysqludf_sys_x64.dll是一个用于MySQL数据库的外部库文件。它是MySQL User-defined Function (UDF)的一部分,允许用户通过调用这个库文件中的函数来扩展MySQL服务器的功能。 lib_mysqludf_sys_x64.dll提供了一些操作系统级别的功能,例如文件和目录操作、执行外部命令和程序、读取系统环境变量等。通过在MySQL中创建自定义函数并使用这个库文件,用户可以在数据库中执行许多与操作系统相关的任务。 这个库文件是为64位系统编译的,所以只能在64位的MySQL服务器上使用使用之前,需要将它加载到MySQL服务器中,并确保服务器和客户端的版本兼容性。 加载lib_mysqludf_sys_x64.dll的方法是通过在MySQL的配置文件中添加一行配置信息,指定库文件的路径。然后,重启MySQL服务器以使配置生效。 一旦加载成功,用户就可以在自己的数据库中创建自定义函数,通过调用这个库文件中的函数来实现特定的操作系统级别的功能。比如,可以创建一个函数来执行一个外部命令,然后将结果存储到数据库中。这样,用户就可以在数据库中操作文件、目录和其他操作系统资源。 总的来说,lib_mysqludf_sys_x64.dll是一个用于MySQL数据库的外部库文件,它扩展了MySQL服务器的功能,允许用户在数据库中执行一些操作系统级别的任务。它通过创建自定义函数并使用库文件中的函数来实现这些功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值