找回密码
 立即注册
搜索
查看: 1982|回复: 7

[软件] [新问题]MYSQL的fulltext全文索引生成后会自动更新吗

[复制链接]
发表于 2012-3-16 14:07 | 显示全部楼层 |阅读模式
比如我给一个表wp_post建立了全文索引,然后又向表中写入了新的数据,那么新的内容会被索引吗,还是需要手动进行一次索引更新



解决了,因为没有建立fulltext索引

这个代码是从一个主题里抄的,里面有一个函数是建立索引的,但是我不知道还要先做一个索引,所以也没把那个函数加到我的代码里面。
本地因为先激活过那个主题,生成了索引,但是把代码上传到服务器上就不行了,因为服务器上的数据库没建立过索引。
  1.         $sql = "SELECT ID, post_title, post_content,"
  2.          . "MATCH (post_content) "
  3.          . "AGAINST ('$terms') AS score "
  4.          . "FROM $wpdb->posts WHERE "
  5.          . "MATCH (post_content) "
  6.          . "AGAINST ('$terms') "
  7.      . "AND post_date <= '$now' "
  8.          . "AND (post_status IN ( 'publish',  'static' ) AND ID != '$post->ID') ORDER BY score DESC LIMIT $limit";
复制代码

wordpress里根据当前文章的内容来查询相关文章的一段代码,上面就是里面用到的sql查询
其中:post_content 是文章正文内容,$terms是一个字符串,里面存储当前文章内容的关键词

这段代码在本地测试的时候正常,可以找到内容相关的文章,虽然匹配程度一般吧

但是上传到服务器上后,就没有作用了,一个相关文章也找不到。

本地环境是xampp,mysql版本 5.0.8
服务器是lnmp,mysql版本 5.1.54

应该不是版本问题吧,服务器版本还要新一些,用户权限也是最高了

我用phpmyadmin看了一下两个mysql的信息,除了版本区别,引擎数量也不一样,本地是9个,服务器上4个,是因为这个原因吗
回复

使用道具 举报

发表于 2012-3-16 14:21 | 显示全部楼层
哦,既然整个脚本的运行环境都变了
为啥不先把运行时实际生成SQL语句打印或是log下来
先确定一下问题到底是在脚本还是在数据库?
回复

使用道具 举报

 楼主| 发表于 2012-3-16 14:27 | 显示全部楼层

回 1楼(broomzhang) 的帖子

不太明白,是说吧$sql这个字符串显示出来看看,是不是和本地一样吗
回复

使用道具 举报

 楼主| 发表于 2012-3-16 16:38 | 显示全部楼层
我把服务器上的数据库导入到本地,结果本地的也不返回结果了,这到底是什么情况啊
回复

使用道具 举报

     
发表于 2012-3-16 18:00 | 显示全部楼层
是叫你做LST
mysql -uroot -p -vvv --force --comments < C:\\demo_01.sql >C:\\demo_01.lst
回复

使用道具 举报

 楼主| 发表于 2012-3-16 20:33 | 显示全部楼层
又碰到问题了,晚上在线的程序员应该多一些吧
回复

使用道具 举报

     
发表于 2012-3-17 00:01 | 显示全部楼层
存储引擎是MyISAM吧?更新索引相关列会自动更新索引
回复

使用道具 举报

 楼主| 发表于 2012-3-17 10:40 | 显示全部楼层

回 6楼(qieqie) 的帖子

多谢了,这个全文索引挺好用的,就是准确率差了点,不过个人博客也没太高要求了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-9-14 18:38 , Processed in 0.027180 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表