coreseek3.2 php 怎样更新索引

coreseek3.2 php 怎样更新索引,第1张

php是无法更新 coreseek  的索引的,需要使用coreseek的语法,配合定时任务来自动更新索引。

这个写起来很麻烦,我们的系统正好用了 coreseek ,说一下我的思路吧。

1、首先建立一个  search 表,这个表用来存你要进行搜索的、经过分词的数据,分词系统你们自己选,我使用的是php的pscws4中文分词。

DROP TABLE IF EXISTS `search`;
CREATE TABLE `search` (
  `searchid` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `content` text NOT NULL,
  `add_time` int(11) NOT NULL,
  PRIMARY KEY (`searchid`)
) ENGINE=MyISAM AUTO_INCREMENT=15209 DEFAULT CHARSET=utf8;

2、还需要一个 索引计数表 search_counter,这个表用来存放每次索引更新后的最大一个ID,下次更新索引的时候,就不需要从头更新了,只需要比这个ID大的就可以。

DROP TABLE IF EXISTS `search_counter`;
CREATE TABLE `search_counter` (
  `counter_id` int(11) NOT NULL,
  `max_doc_id` int(11) NOT NULL,
  PRIMARY KEY (`counter_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

3、配置 coreseek ,以下是我在windows下 coreseek的配置文件,linux 在服务器上,没去找。这里配置了2个索引源,一个是main,一个是增量索引delta,这样不需要每次重建所有索引,只需要合并 main和delta就可以了。


#源定义
source main
{
    type                    = mysql
    sql_host                = 192168010
    sql_user                = root
    sql_pass                = root
    sql_db                  = database
    sql_port                = 3306
    sql_query_pre           = SET NAMES utf8
    sql_query_pre           = REPLACE INTO search_counter SELECT 1, MAX(searchid) FROM qhb_search
    sql_query               = SELECT searchid, title, content, controller_id, controller,add_time FROM search
                                                              #sql_query第一列id需为整数
                                                              #title、content作为字符串/文本字段,被全文索引
    #sql_attr_uint           = searchid           #从SQL读取到的值必须为整数
sql_attr_uint           = controller_id      # 数据库ID过滤
sql_attr_uint           = controller         # 控制器过滤
    sql_attr_timestamp      = add_time #从SQL读取到的值必须为整数,作为时间属性
    sql_query_info_pre      = SET NAMES utf8                                        #命令行查询时,设置正确的字符集
    #sql_query_info          = SELECT  FROM qhb_search WHERE searchid=$searchid #命令行查询时,从数据库读取原始数据信息
}
source delta : main
 
{
 
    sql_query_pre  = SET NAMES utf8
    sql_query      = SELECT searchid, title, content, controller_id, controller,add_time FROM qhb_search WHERE searchid>( SELECT max_doc_id FROM qhb_search_counter WHERE counter_id=1 )

sql_query_post = REPLACE INTO qhb_search_counter SELECT 1, MAX(searchid) FROM qhb_search
 
}
#index定义
index main
{
    source          = main             #对应的source名称
    path            = D:/WebSoft/coreseek/var/data/main #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/
    docinfo         = extern
    mlock           = 0
    morphology      = none
    min_word_len    = 1
    html_strip      = 0
    #中文分词配置,详情请查看:>}

4、建立索引。必须要先建立索引, coreseek 才能启动。下面是我在Windows的建立索引命令,如何使用命令行我就不赘述了。

D:\WebSoft\coreseek\bin\indexer --all --config d:\WebSoft\coreseek\bin\sphinxconf

5、配置并启动服务

D:\WebSoft\coreseek\bin\searchd --install --config 
D:\WebSoft\coreseek\bin\sphinxconf --servicename coreseek

6、Windows创建定时任务,每分钟更新一次索引


D:\WebSoft\coreseek\bin\indexerexe --config D:\WebSoft\coreseek\bin\sphinxconf delta --rotate
echo indexing, window will close when complete

7、Windows创建定时任务,每天凌晨2点合并索引


D:\WebSoft\coreseek\bin\indexerexe --config D:\WebSoft\coreseek\bin\sphinxconf --merge main delta --rotate
echo indexing, window will close when complete

8、附上 创建索引,重建索引,合并索引在windows及linux上的方法,以及一些使用上的小问题

windows:
建立索引
D:\WebSoft\coreseek\bin\indexer --all --config d:\WebSoft\coreseek\bin\sphinxconf
重建索引
D:\WebSoft\coreseek\bin\indexer --config D:\WebSoft\coreseek\bin\sphinxconf main --rotate
增量索引
D:\WebSoft\coreseek\bin\indexer --config D:\WebSoft\coreseek\bin\sphinxconf delta --rotate
合并索引
D:\WebSoft\coreseek\bin\indexer --config D:\WebSoft\coreseek\bin\sphinxconf --merge main delta --rotate
配置并启动服务
D:\WebSoft\coreseek\bin\searchd --install --config D:\WebSoft\coreseek\bin\sphinxconf --servicename coreseek
创建自定义词库方法:
1、先去 >1、conimeexe:是输入法编辑器相关程序。注意:conimeexe同时可能是一个bfghost10远程控制后门程序。此程序允许攻击者访问你的计算机,窃取密码和个人数据。建议立即删除此进程。
完全删除conimeexe
第一步首先结速conimeexe进程,然后在system32中找到conimeexe将其删除。
第二步修改注册表找到:HKEY_CURRENT_USER\Console中的LoadConIme修改为0即可;
2、hhukcertexe 是银行的U程序,没在使用时可以结束该进程
3、iaanotifexe 是英特尔芯片的驱动程序,可以结束,要让它不随机启动,可以在系统服务里找到ia开头的那项,然后设置禁用;
4、msascuiexe是微软反间谍软件windows defender的程序。可以结束;
5、onekeytheaterexe 应该是联想OneKeyTheater软件,好像是什么一键剧院之类的,具体不详,可以结束;
6、RTHDCPLexe:是Realtek声卡特性设置软件相关程序。在“开始——运行”输入msconfig ,点“启动”在启动项目里将相对应的项目的对勾去掉,才能彻底解决随机运行;结束掉该进程;
7、rundll32exe:用于在内存中运行DLL文件,它们会在应用程序中被使用。该病毒允许攻击者访问你的计算机,窃取密码和个人数据。建议立即结束进程。
8、SearchProtocolHostexe 是 Windows Vista、Windows 7 的桌面搜索引擎的索引程序,它会在计算机空闲时自动扫描索引位置的文件名、属性信息和给定类别的文件内容,这些索引位置默认包括桌面、收藏夹、开始菜单、系统目录,以及在 Windows 7 中添加到 Libraries 中的目录(Windows Vista 下的用户文件夹,如文档、、音乐、视频文件夹)。但是如果配置并不高,特别是没有配备多核心 CPU 以及 2 GB 以上内存的计算机系统,在不运行其他程序时,自动索引文件也会使得 CPU 占用率高达 80% 以上并且对硬盘文件进行大范围的读取 *** 作从而较为严重的影响系统性能。这两个进程是 Windows Search 系统服务的宿主进程,自动索引不能手动关闭,而只能通过控制面板中的搜索选项暂停 15 分钟。对于存储在 FAT32 分区上的文件,大量索引将造成很大的系统开销,建议首先取消包含大量文件的索引目录。并且在所有默认路径建立索引完毕之后,要取消此功能,可以在“开始——运行”输入Servicesmsc 然后手动禁止 Windows Search 服务从而停止这一进程。
9、taskmgrexe是任务管理器,你打开了两个任务管理器,所以显示两个进程,这个不需要理会,你关闭任务管理器后它会自动消失;
10、txopshowexe是腾讯新的迷你首页的广告进程,建议结束
11、txplatformexe:腾讯即时通讯客户端相关程序,用于阻止同一个QQ号在同一台电脑上登陆2次和支持外部添加功能(如添加到用户自定义面板)。可以删除以减少内存使用。
12、unsecappexe是微软Microsoft Windows服务器和工作站套装相关程序,用于支持其相关兼容。
可以结束。
13、倒数第5个因为模糊,看不清是什么程序,但这么长的文件名,想必不是什么必须的东西,建议你结束它吧。

概述
随着科技的飞速发展,互联网的应用软件都在不断扩大和升级。但是技术的进步并没有让管理员感到轻松的咖啡厅,他们正在挣扎,三个更新,系统的整体运行状况,游戏服务器的磁盘空间使用情况,资产追踪硬件的网吧,网吧专用应用程序部署的越来越多的细节所以他们需要经常关注日益复杂的应用程序允许网吧管理员的困惑。
为了帮助管理员提高的网吧和网吧的安全系数运营效率的内部管理,提高网吧维大师V6400运营管理监控中心,以帮助管理员维护交易从被动互联网咖啡馆从被动中解脱出来,主动管理维护,推进处理各种咖啡馆经营失败和威胁的过程中,带领网吧全面进入“预管理”时代!
新功能
1,增加了服务器的监控中心,网吧管理员可以一目了然地监控全球形势;
2,虚拟磁盘和流媒体节点同步游戏增加了变速功能;
3,净增加维大师数据库服务器自动备份功能,备份时支持本地驱动器和网络驱动器; 4,开机命令选择的;
5,“IDC已删除游戏”栏目显示,方便管理员清理垃圾游戏本地游戏管理服务器增加;
6,增加服务器资源下载中心“最近新追加游戏“部分,让用户选择添加新游戏更加直观易用性
1,当服务器扫描客户端的MAC地址,MAC地址功能,支持从文件导入;
2,同步监控增加了DP值显示,易于理解游戏中的火爆局面;
3,同步监控增加了要删除的每个节点提醒游戏,直接删除;
4,服务于客户端的远程管理功能,重要 *** 作增加确认提示,防止用户误 *** 作;
5,在一个单一的虚拟磁盘的服务器,游戏之前,6300返回到配置界面版本,使得 *** 作更加简单; 虚拟磁盘优化6,服务器端同步进行的监测接口与分流节点同步分离两个页面显示,
让用户更容易理解,同时简化的步骤同步的功能,减少误 *** 作;
7,设置服务器的客户端桌面快捷方式,使用户能够自定义快捷方式图标时;
8,单个磁盘容量的增加和显示登录提示的进展;
稳定
1,游戏更新模式设置为“自动更新”的游戏或软件发生错误的索引,
安全服务器会根据IDC的游戏内容自动修复;
2,优化服务器日志处理系统,显著减少日志所占用的磁盘空间;
3,修正了个别游戏输入拼音字母无法找到游戏BUG;
4,经造成长期的目录索引错误问题文件名;
5,优化接入节点功能,让选择更智能的接入节点;
6,优化网维大师的通信协议,它允许数据更新更加快捷;
7,后司机关掉了防火墙客户端上不再有一个图标和流程;
8,在丰富的游戏视图的客户端视图服务的摘要信息。

在notes的 文件-设置场所-场所-连接 右面的界面中可以看到你所在服务器路径,端口和IP地址。
可能会有多个服务器地址, 在你工作台邮件图标上右键-数据库-属性,这里的服务器名称就是你的邮件服务器,对照上面就可以找到该服务器的详细信息了。

对三个字段建立索引:
create index Stuname on student(name);
create index Stusex on student(sex);
create index Stugrade on student(grade);
注意的问题,考虑是不是要建立唯一索引(unique),如果有学号的话,可以考虑建立唯一索引引。
再就是对经常查询,但又相对稳定的可以建立聚簇索引,提高查询效率


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13493892.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-18
下一篇 2023-08-18

发表评论

登录后才能评论

评论列表(0条)

保存