• gearman mysql udf


    • gearman安装

    apt-get install gearman gearman-server libgearman-dev

    配置bindip

    /etc/defalut/gearman-job-server

    PARAMS="--listen=0.0.0.0"

    /etc/init.d/gearman-job-server start
    /etc/init.d/gearman-job-server status
    * gearmand is running

    mysql_config无就安装下面的
    apt-get install libmysqld-dev libmysqlclient-dev

    mysql 查找plugin目录:

     show variables like '%plugin%';

    编译安装 udf

    CPPFLAGS=" -Werror -Wno-unused-but-set-variable" ./configure --with-mysql=/usr/bin/mysql_config --libdir=/usr/lib/mysql/plugin

    make install

    Libraries have been installed in:
    /usr/lib/mysql/plugin

    If you ever happen to want to link against installed libraries
    in a given directory, LIBDIR, you must either use libtool, and
    specify the full pathname of the library, or use the `-LLIBDIR'
    flag during linking and do at least one of the following:
    - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
    during execution
    - add LIBDIR to the `LD_RUN_PATH' environment variable
    during linking
    - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
    - have your system administrator add LIBDIR to `/etc/ld.so.conf'

    安装函数UDF


    CREATE FUNCTION gman_do RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_do_high RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_do_low RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_do_background RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_do_high_background RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_do_low_background RETURNS STRING
    SONAME "libgearman_mysql_udf.so";
    CREATE AGGREGATE FUNCTION gman_sum RETURNS INTEGER
    SONAME "libgearman_mysql_udf.so";
    CREATE FUNCTION gman_servers_set RETURNS STRING
    SONAME "libgearman_mysql_udf.so";

    • 配置GearmanIP

     SELECT gman_servers_set('127.0.0.1:4730');

    CREATE FUNCTION json_array RETURNS STRING SONAME 'lib_mysqludf_json.so';
    select * from mysql.func;
    mysql> select * from mysql.func;
    +--------------+-----+----------------------+----------+
    | name | ret | dl | type |
    +--------------+-----+----------------------+----------+
    | json_array | 0 | lib_mysqludf_json.so | function |
    | json_members | 0 | lib_mysqludf_json.so | function |
    | json_values | 0 | lib_mysqludf_json.so | function |
    +--------------+-----+----------------------+----------+

    DROP FUNCTION json_array;

    查看gearman队列

    watch -n 1 "(echo status; sleep 0.1) | nc 127.0.0.1 4730"
  • 相关阅读:
    Scrum冲刺第一篇
    项目冲刺
    需求改进&系统设计
    需求规格说明书
    团队作业第五周-测试和发布
    冲刺集合贴
    冲刺第6天
    冲刺第7天
    冲刺第5天
    冲刺第四天
  • 原文地址:https://www.cnblogs.com/ahuo/p/6042906.html
Copyright © 2020-2023  润新知