易截截图软件、单文件、免安装、纯绿色、仅160KB

基于MySQL数据库的UTF8中文网站全文检索的实现


http://hi.baidu.com/xiyouwang/blog/item/9f15bbee99b0ce202df5349e.html
现在的互联网上,很多网站都提供了全文搜索功能,浏览者可以通过输入关键字或者是短语来搜索特定的资料。在PHP+MySQL构架的网站中,通常的做法是通过SELECT查询的Like语句来进行搜索,这一办法存在搜索不够精确、以及效率非常低下的缺点。比如对一个有十几万条记录数据表的TEXT字段进行LIKE操作,可能会花费上近10秒钟左右,这对网站的浏览者来说是一个非常糟糕的使用体验。如何在海量的数据中能够快速的进行全文检索呢?MySQL提供了一个全文索引功能,也就是把字段设置上FULLTEXT索引属性,然后通过SELECT的MATCH AGAINST语句进行查找。
我们开发的一个纯英文站点TouchUs - The Global Yellow Pages & Business Directory(www.touchus.org)就是利用MySQL的这一功能,实现了对十多万条数据的平均全文检索时间小于0.5秒。但是在开发TouchUs的中文网站——城市黄页网时(www.city39.cn),碰到了新的问题。原来英文排版时词和词之间是通过空格区分的,FULLText可以完全支持,但是对中文或者是东亚文字就没有这么简单了,因为中文的词和词之间并没有明显的分隔,所以MySQL不支持中文字符的全文检索。
如何让MySQL也能支持中文的全文检索呢?偶然间产生了一个思路,那就是能不能在中文分词后,通过对中文进行编码转化成英文字符,这样就在中英文间建立一个特定的联系,然后再进行全文检索,这样不就实现了中文的全文索引了吗?经过试验,答案是肯定的。下面是在城市黄页网中实现的具体过程:
1. 建立一个单独的索引表,比如对应members表,我们建立一个members_index表。
用户信息表(members)                    用户信息全文索引表(members_index)
User_id                                              user_id
User_name                            &nb


相关文档:

linux,nginx,mysql,php安装备忘

niginx安装流程
软件下载:--->
mkdir -p /home/dancebear/programe
cd /home/dancebear/programe
wget http://sysoev.ru/nginx/nginx-0.6.31.tar.gz
wget http://www.php.net/get/php-5.2.6.tar.gz/from/this/mirror
wget http://php-fpm.anight.org/downloads/head/php-5.2.6-fpm-0.5.8.diff.gz
wget http://dev ......

MySQL启动与基本配置

MySQL启动与基本配置
MySQL是一个小型关系型数据库管理系统。开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司10亿美元收购。MySQL被广泛地应用在Internet的中小型网站中,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
MySQL ......

mysql主从配置一些注意

配置主从:
两台服务器mysql版本一样,
Server version: 5.1.16-beta-log MySQL Community Server
配置基本一样、启动参数一样
主的可以访问从的,
但是
从那边怎么连接主的,都是失败:
[root@2006 htmlfile]# mysql -h192.168.xx.xxx -uxxx -pxxx --default-character-set=GBK --reconnect
ERROR 2003 (HY000): C ......

一个MYSQL的小问题

一下是一个SQL的小问题,困扰了3分钟,写下来记录一下。
数据库是MYSQL 5, 表的结构很简单, 就一个字段是abc,整型。
一下语句运行的结果是一样的。自己不留神,导致困扰了3分钟。
select * from table1 from abc = '123'
select * from table1 from abc = '123_1'
以上语句原来是查找是否数据存在,结果123_1和1 ......

[转]mysql修改表结构alter


 
[转自]http://waryist.javaeye.com/blog/104739
ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...]
alter_specification:
        ADD [COLUMN] create_definition [FIRST | AFTER column_name ]
  or    ADD ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号