利用mysql函数更新memcached
Memcached Functions for MYSQL官方主页:
https://launchpad.net/memcached-udfs
两篇基本文章:
http://www.libing.name/2009/02/06/mysql-map-data-to-memcached.html
http://www.libing.name/2008/02/26/mysql-map-memcached.html
安装和验证的SQL语句:
http://hg.tangent.org/memcached_functions_mysql/file/724eeccc55bc/README
安装:
1.安装mysql
2.安装memcached
3.启动mysql,memcached
/usr/local/bin/memcached -p 22222 -m 64m -u root -d
4.安装Memcached Functions for MYSQL
tar xzvf memcached_functions_mysql-0.2.tar.gz
cd memcached_functions_mysql-0.2
./configure –with-mysql=MYSQL_DIR/bin/mysql_config –libdir=MYSQL_DIR/lib/mysql/
make
make install
5.将UDFs加载到MySQL中(UDF=User Defined Function)
memc_servers_set()
mysql> create function memc_servers_set returns int soname "libmemcached_functions_mysql.so";
memc_set()
mysql> create function memc_set returns int soname "libmemcached_functions_mysql.so";
memc_get()
mysql> create function memc_get returns string soname "libmemcached_functions_mysql.so";
memc_delete()
mysql> create function memc_delete returns string soname "libmemcached_functions_mysql.so";
......
其他函数的加载省略
6.验证
select memc_servers_set('127.0.0.1:22222');
select memc_set('key','value');
select memc_get('key');
select memc_delete('key');
7.触发器更新memcached
(1)创建表
create table memc_test(
key varchar(100),
value varchar(100)
);
(2)创建触发器
delimiter ;;
create trigger memc_add after insert on memc_test for each row begin
select memc_set(NEW.key,NEW.value);
end;;
delimiter ;
delimiter ;;
create trigger memc_update after update on memc_test for each row begin
select memc_set(NEW.key,NEW.value);
相关文档:
如果在一些更新命令之后,mysqld总是当掉,或者如果你遇到被破坏的表,你可以用下面的操作测试看这个缺陷是否是可重复产生的:
卸掉MySQL守护进程(用mysqladmin shutdown)。
给该表做备份(防止修复操作反而搞坏这种很不可能出现的情况)。
用 myisamchk -s database/*.MYI 检查所有的表,用myisamchk -r database/ ......
1
安装MYSQL后更改了ROOT的密码后用
net startmysql
启动时我就遇到了这样的问题.使用以下命令后
c:\mysql\bin\mysqladmin-u root -p shutdown
再net start mysql就没有这个错误提示了!
*************
2
MySQL的1067错误
Q:我的Mysql碰到了 1067 错误
错误信息为:
A system error has occurred.
......
这几天做一个查询,需要在一个指定的结果集中进行查询,例如:
select * from table_name where doc_id IN ('1dba', 'c20a', '907b')
其中IN子句中的doc_id列表是通过调用一个外部接口获得一组doc_id常量列表,然后在本地库中搜索符合这个列表的数据
记录。后来发现mysql返回的结果集的排序是按照入库顺序给出的,但是我 ......
第五章 代码重用与函数编写
require()或include()可以将一个文件载入到php脚本中。
这两个函数几乎等价,唯一的区别是调用失败后require()给出一个致命错误,而include()只给出一个警告。
如果Web页面具有一致的外观,可以将相同的部分分离到单独的页面中,然后可以在php中使用require()语句将模板元素加入到页面中。
......
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using MySql ......