Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/netkiller/mysql-zmq-plugin

ZeroMQ / ØMQ for MySQL
https://github.com/netkiller/mysql-zmq-plugin

mysql netkiller zeromq

Last synced: 8 days ago
JSON representation

ZeroMQ / ØMQ for MySQL

Awesome Lists containing this project

README

        

mysql-zmq-plugin
================

[![Join the chat at https://gitter.im/netkiller/mysql-zmq-plugin](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/netkiller/mysql-zmq-plugin?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

ZeroMQ / ØMQ for MySQL

http://zeromq.org/event:zeromq-for-mysql

Build
-----
# yum install zeromq3-devel

# cmake .
# make && make install

Install & uninstall
-------------------

drop function zmq_client;
drop function zmq_publish;

create function zmq_client returns string soname 'libzeromq.so';
create function zmq_publish returns string soname 'libzeromq.so';

mysql> SELECT * FROM `mysql`.`func` LIMIT 1000;
+--------------+-----+--------------+----------+
| name | ret | dl | type |
+--------------+-----+--------------+----------+
| image_crc32 | 0 | image.so | function |
| image_rename | 0 | image.so | function |
| image_move | 0 | image.so | function |
| image_remove | 0 | image.so | function |
| image_check | 0 | image.so | function |
| fifo_write | 0 | fifo.so | function |
| fifo_read | 0 | fifo.so | function |
| fifo_remove | 0 | fifo.so | function |
| fifo_create | 0 | fifo.so | function |
| zmq_publish | 0 | libzeromq.so | function |
| zmq_client | 0 | libzeromq.so | function |
+--------------+-----+--------------+----------+
11 rows in set (0.00 sec)

Test
----

### 编译zeromq server 测试程序
cd test
cmake .
make
./server

### 在mysql终端中运行测试SQL
mysql> select zmq_client('tcp://localhost:5555','Hello world!');
+---------------------------------------------------+
| zmq_client('tcp://localhost:5555','Hello world!') |
+---------------------------------------------------+
| Hello world! OK |
+---------------------------------------------------+
1 row in set (0.01 sec)

mysql> select zmq_client('tcp://localhost:5555',mobile) from demo;
+-------------------------------------------+
| zmq_client('tcp://localhost:5555',mobile) |
+-------------------------------------------+
| 13113668891 OK |
| 13113668892 OK |
| 13113668893 OK |
| 13322993040 OK |
| 13588997745 OK |
+-------------------------------------------+
5 rows in set (0.03 sec)

手工编译
--------
gcc -O3 -g -I/usr/include/mysql -I/usr/include -fPIC -lm -lz -shared -o libzeromq.so zeromq.c
sudo mv libzeromq.so /usr/lib/mysql/plugin/

[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/netkiller/mysql-zmq-plugin/trend.png)](https://bitdeli.com/free "Bitdeli Badge")