用mysql触发器自动更新memcache
mysql 5.1支持触发器以及自定义函数接口(UDF)的特性,如果配合libmemcache以及Memcached Functions for MySQL,就能够实现 memcache 的自动更新。简单记录一下安装测试步骤。 安装步骤 安装memcached,这个步骤很简单,随处可见 安装mysql server 5.1RC,安装
mysql 5.1支持触发器以及自定义函数接口(UDF)的特性,如果配合libmemcache以及Memcached Functions for MySQL,就能够实现memcache的自动更新。简单记录一下安装测试步骤。
安装步骤
- 安装memcached,这个步骤很简单,随处可见
- 安装mysql server 5.1RC,安装办法也很大众,不废话了
- 编译libmemcached,解压后安装即可
<code><span>./</span><span>configure</span><span>;</span><span> make</span><span>;</span><span> make install</span></code>
Salin selepas log masuk - 编译Memcached Functions for MySQL,在http://download.tangent.org/找一个最新的版本下载就是,
<code><span>.</span><span>/configure --with-mysql=/</span><span>usr</span><span>/</span><span>local</span><span>/</span><span>mysql</span><span>/</span><span>bin</span><span>/</span><span>mysql_config </span><span>--</span><span>libdir</span><span>=</span><span>/usr/</span><span>local</span><span>/</span><span>mysql</span><span>/</span><span>lib</span><span>/</span><span>mysql</span><span>/</span><span> make make install</span></code>
Salin selepas log masuk - 接下来有两个办法让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的源码目录,有兴趣可以试试
<code><span>drop table </span><span>if</span><span> exists urls</span><span>;</span><span> create table urls </span><span>(</span><span> id </span><span>int</span><span>(</span><span>3</span><span>)</span><span>not</span><span>null</span><span>,</span><span> url varchar</span><span>(</span><span>64</span><span>)</span><span>not</span><span>null</span><span>default</span><span>''</span><span>,</span><span> primary key </span><span>(</span><span>id</span><span>)</span><span>);</span><span>select</span><span> memc_servers_set</span><span>(</span><span>'localhost:11211'</span><span>);</span><span>select</span><span> memc_set</span><span>(</span><span>'urls:sequence'</span><span>,</span><span>0</span><span>);</span><span> DELIMITER </span><span>|</span><span> DROP TRIGGER IF EXISTS url_mem_insert</span><span>;</span><span> CREATE TRIGGER url_mem_insert BEFORE INSERT ON urls FOR EACH ROW </span><span>BEGIN</span><span> SET NEW</span><span>.</span><span>id</span><span>=</span><span> memc_increment</span><span>(</span><span>'urls:sequence'</span><span>);</span><span> SET </span><span>@mm</span><span>=</span><span> memc_set</span><span>(</span><span>concat</span><span>(</span><span>'urls:'</span><span>,</span><span>NEW</span><span>.</span><span>id</span><span>),</span><span> NEW</span><span>.</span><span>url</span><span>);</span><span>END</span><span>|</span><span> DELIMITER </span><span>;</span><span> insert </span><span>into</span><span> urls </span><span>(</span><span>url</span><span>)</span><span> values </span><span>(</span><span>'http://google.com'</span><span>);</span><span> insert </span><span>into</span><span> urls </span><span>(</span><span>url</span><span>)</span><span> values </span><span>(</span><span>'http://www.ooso.net/index.php'</span><span>);</span><span> insert </span><span>into</span><span> urls </span><span>(</span><span>url</span><span>)</span><span> values </span><span>(</span><span>'http://www.ooso.net/'</span><span>);</span><span> insert </span><span>into</span><span> urls </span><span>(</span><span>url</span><span>)</span><span> values </span><span>(</span><span>'http://slashdot.org'</span><span>);</span><span> insert </span><span>into</span><span> urls </span><span>(</span><span>url</span><span>)</span><span> values </span><span>(</span><span>'http://mysql.com'</span><span>);</span><span>select</span><span>*</span><span>from</span><span> urls</span><span>;</span><span>select</span><span> memc_get</span><span>(</span><span>'urls:1'</span><span>);</span><span>select</span><span> memc_get</span><span>(</span><span>'urls:2'</span><span>);</span><span>select</span><span> memc_get</span><span>(</span><span>'urls:3'</span><span>);</span><span>select</span><span> memc_get</span><span>(</span><span>'urls:4'</span><span>);</span><span>select</span><span> memc_get</span><span>(</span><span>'urls:5'</span><span>);</span></code>
作者: Volcano 发表于July 9, 2008 at 2:41 pm
版权信息: 和作者信息及此声明
永久链接 - http://www.ooso.net/archives/436

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kemahiran pemprosesan struktur data besar PHP

Bagaimana untuk mengoptimumkan prestasi pertanyaan MySQL dalam PHP?

Bagaimana untuk menggunakan sandaran dan pemulihan MySQL dalam PHP?

Windows tidak boleh mengakses peranti, laluan atau fail yang ditentukan

Bagaimana untuk memasukkan data ke dalam jadual MySQL menggunakan PHP?

Windows menjeda kemas kini secara kekal, Windows mematikan kemas kini automatik

Bagaimana untuk membetulkan ralat mysql_native_password tidak dimuatkan pada MySQL 8.4

Bagaimana untuk menggunakan prosedur tersimpan MySQL dalam PHP?
