MySQL 5.1支持触发器以及自定义函数接口(UDF)的特性,如果配合libmemcache以及Memcached Functions for MySQL,就能够实现memcache的自动更新。简单记录一下安装测试步骤。

安装步骤

安装memcached,这个步骤很简单,随处可见

安装mySQL Server 5.1RC,安装办法也很大众,不废话了

编译libmemcached,解压后安装即可./configure; make; make install

编译Memcached Functions for MySQL,在http://download.tangent.org/找一个最新的版本下载就是,./configure --with-mysql=/usr/local/mysql/bin/mysql_config --libdir=/usr/local/mysql/lib/mysql/

make

make install

接下来有两个办法让Memcached Functions for MySQL在mysql中生效

在mysql的shell中执行memcached_functions_mysql源码目录下的sql/install_functions.sql,这会把memcache function作为UDF加入mysql

运行memcached_functions_mysql源码目录下的utils/install.pl,这是一个Perl脚本,作用同上一条

测试memcache function

以下测试脚本摘自memcached_functions_mysql的源码目录,有兴趣可以试试

PLAIN TEXTCODE: drop table if exists urls;

create table urls (

id int(3) not null,

url varchar(64) not null default '',

primary key (id)

);

select memc_servers_set('localhost:11211');

select memc_set('urls:sequence', 0);

DELIMITER |

DROP TRIGGER IF EXISTS url_mem_insert;

CREATE TRIGGER url_mem_insert

BEFORE INSERT ON urls

FOR EACH ROW BEGIN

SET NEW.id= memc_increment('urls:sequence');

SET @mm= memc_set(concat('urls:',NEW.id), NEW.url);

END |

DELIMITER ;

insert into urls (url) values ('http://google.com');

insert into urls (url) values ('http://www.ooso.net/index.PHP');

insert into urls (url) values ('http://www.ooso.net/');

insert into urls (url) values ('http://slashdot.org');

insert into urls (url) values ('http://mysql.com');

select * from urls;

select memc_get('urls:1');

select memc_get('urls:2');

select memc_get('urls:3');

select memc_get('urls:4');

select memc_get('urls:5');

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果

文章转载自:IT专家网

0

好文不易,鼓励一下吧!

memcache如何更新mysql_使用MySQL触发器如何实现memcache自动更新相关推荐

  1. android应用程序的自动更新升级(自身升级,通过tomcat),[SaltStack] Minion-conf自动更新...

    minion-conf配置文件自动更新, 加载 minion-conf是每个minion自身以来的配置, 为了方便我们在中心管控机上(Master)统一配置, 然后下发文件, 进而使得Minion能够 ...

  2. 计算机关闭的时候自动更新,win7自动更新关闭有什么影响_win7系统关闭自动更新的步骤-win7之家...

    在win7系统中,自带有自动更新功能,只要有新的更新发布,电脑就会在后台自动更新,但是自动更新的时候就会影响电脑运行速度,所以有用户就想要关闭自动更新功能,但是又不知道win7自动更新关闭有什么影响, ...

  3. 坦克世界服务器系统不更新失败怎么办,win7系统下坦克世界自动更新失败如何解决...

    坦克世界是一款深受玩家们欢迎的游戏之一,而有时候版本更新了,运行坦克世界的时候就会自动更新,但是却遇到自动更新失败的情况,屏幕上显示"严重错误,用http方式下载失败,应用程序不能继续.详情 ...

  4. 阻止计算机系统自动更新,W10电脑系统如何阻止并关闭自动更新

    W10电脑系统如何阻止并关闭自动更新?很多用户升级W10 1709版本之后,发现电脑系统又自动下载一些电脑系统更新了,这让用户很是郁闷,其实想要关闭自动更新很容易,下面请随小编一起操作! W10 17 ...

  5. mysql 唯一索引与插入重复自动更新

    在我们使用mybatis对mysql数据库进行增删改查的时候,可能会碰到比较棘手的情况,如这个问题: 当主键id自增时,同一个订单号下的数据可能经过多次更新,且要保证数据库中订单号唯一不重复,我们只能 ...

  6. 如何关闭电脑自动更新?方案三部曲带你走出自动更新的阴影

    如何关闭电脑自动更新?电脑的更新会让我们的系统功能更上一层楼,但同时也有弊端,如果你的配置承受不住这个更新后的适配要求的话,电脑会变得非常不稳定.而道理我们都懂,但是每次它偷偷摸摸地更新都让人&quo ...

  7. ubuntu 本地更新php,Linux_Ubuntu系统怎么手动进行更新升级?,Ubuntu 系统有自己的自动更新升 - phpStudy...

    Ubuntu系统怎么手动进行更新升级? Ubuntu 系统有自己的自动更新升级机制,但是有时候也需要手动执行更新.比如,某软件发现了漏洞,需要及时更新补丁,但是自动升级的提示还没有出现,这时就需要手动 ...

  8. 计算机不支持win10 1809更新,win10更新版本1809后,完全关闭系统自动更新方法,亲测可行...

    将win10升级到版本1809后,还有一个附加的" Windows Update Medic Service"服务,它是" Windows Update"服务的 ...

  9. 苹果电脑删除下载的更新文件_如何为macOS启动软件自动更新

    启用自动更新已经成为每一个操作系统的默认行为,无论是windows,macos还是linux等等.启用自动更新允许您的设备后台自动安装的所有更新软件,而无需手动下载最新的软件版本.默认情况下macOS ...

最新文章

  1. 如何只使用预训练模型的卷积层
  2. 线程组名称_Netty在Dubbo中的线程名称
  3. iis7.5支持html5,IIS7.5 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面...
  4. 汇编语言程序设计c,c与汇编语言程序设计
  5. ImportError: No module named openid
  6. html css 学习笔记(1)背景相关
  7. 关于安卓手机在微信浏览器中无法调起相机的原因
  8. 安全登录代码 php,PHP登录怎么写安全
  9. 通过安装扩展让 KDE Plasma 5 桌面看起来感觉就像 Windows 10 桌面
  10. CRC校验 与 模2运算
  11. 计算机专业搜题软件免费,QuestionHelper(pc搜题工具)
  12. wake on LAN: 三分钟实现从Linux和Windows设备上远程唤醒设备
  13. 屏幕录制专家,如何上传到优酷的高清视频?
  14. 新手入门AI (Adobe Illustrator)软件工具详解(一)
  15. PHP微信公众号开发接口封装
  16. 使用VirtualBox创建虚拟机
  17. 温湿度传感器不同输出方式的优异对比
  18. 这次把怎么做好一个PPT讲清-动画篇
  19. Java依赖于抽象不依赖于具体,依赖倒置原则(Dependecy-Inversion Principle)
  20. PHP中使用CURL之php curl详细解析和常见大坑

热门文章

  1. Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call.... 此错误的解
  2. html文件头自动生成,基于infinispan源码包HtmlGenerator代码生成器通过指定头部、标题、底部等进行生成HTML文件...
  3. css实现loading,CSS3 19种LOADING(加载)动效
  4. linux 拆分文件 多个,linux – 如何拆分文件并保留每个部分的第...
  5. python报数组越界_python数组越界
  6. apache多站点配置+多端口配置
  7. 介绍 Echoo: go 语言编写的 echo 服务器
  8. input 打开文件夹事件委托
  9. 移动互联网时代 浏览器不可能干掉App
  10. MySQL limit 优化,百万至千万级快速分页:复合索引