我现在有几个库,每个库都用sphinx建了不同的索引
但是查询就出问题了
比如说,我要从A库中查询所需内容
那我怎么来指定要查询哪个库的索引呢
这是我的coreseek配置
#音乐源定义source music{ type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = music sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM allmusic sql_query = SELECT id,`name`,`singer` FROM allmusic WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) #sql_query第一列id需为整数#name、singer作为字符串/文本字段,被全文索引 sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集 sql_query_info = SELECT id,`name`,`singer` FROM allmusic WHERE id=$id #命令行查询时,从数据库读取原始数据信息}# music 的增量索引source mdelta:music{ sql_query_pre = SET NAMES utf8 #sel_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM allmusic sql_query = SELECT id,`name`,`singer` FROM allmusic WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1)}#小说源定义source novel{ type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = novel sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM novel sql_query = SELECT id,`name`,`author`,`is_small` FROM novel WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) #sql_query第一列id需为整数#name、singer作为字符串/文本字段,被全文索引 sql_attr_uint = is_small sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集 sql_query_info = SELECT id,`name`,`img`,`des`,`content`,`is_small` FROM novel FROM allmusic WHERE id=$id #命令行查询时,从数据库读取原始数据信息}source ndelta:novel{ sql_query_pre = SET NAMES utf8 #sel_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM novel sql_query = SELECT id,`name`,`author`,`is_small` FROM novel WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) sql_attr_uint = is_small}#index定义index music{ source = music #对应的source名称 path = E:/sphinx/music/ #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... docinfo = extern mlock = 0 morphology = none html_strip = 0 #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾 charset_dictpath = C:/usr/local/coreseek/etc/ #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/... charset_type = zh_cn.utf-8 min_prefix_len = 0 min_infix_len = 0 min_word_len = 2 ngram_len = 0 ngram_chars = U+4E00..U+9FBF, U+3400..U+4DBF, U+20000..U+2A6DF, U+F900..U+FAFF,\ U+2F800..U+2FA1F, U+2E80..U+2EFF, U+2F00..U+2FDF, U+3100..U+312F, U+31A0..U+31BF,\ U+3040..U+309F, U+30A0..U+30FF, U+31F0..U+31FF, U+AC00..U+D7AF, U+1100..U+11FF,\ U+3130..U+318F, U+A000..U+A48F, U+A490..U+A4CF}index mdelta:music{ source = delta path = E:/sphinx/music/delta}#index定义index novel{ source = novel #对应的source名称 path = E:/sphinx/novel/ #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... docinfo = extern mlock = 0 morphology = none html_strip = 0 #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾 charset_dictpath = C:/usr/local/coreseek/etc/ #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/... charset_type = zh_cn.utf-8 min_prefix_len = 0 min_infix_len = 0 min_word_len = 2 ngram_len = 0 ngram_chars = U+4E00..U+9FBF, U+3400..U+4DBF, U+20000..U+2A6DF, U+F900..U+FAFF,\ U+2F800..U+2FA1F, U+2E80..U+2EFF, U+2F00..U+2FDF, U+3100..U+312F, U+31A0..U+31BF,\ U+3040..U+309F, U+30A0..U+30FF, U+31F0..U+31FF, U+AC00..U+D7AF, U+1100..U+11FF,\ U+3130..U+318F, U+A000..U+A48F, U+A490..U+A4CF}index ndelta:novel{ source = ndelta path = E:/sphinx/novel/delta}#全局index定义indexer{ mem_limit = 128M}#searchd服务定义searchd{ listen = 9312 read_timeout = 5 max_children = 30 max_matches = 1000 seamless_rotate = 0 preopen_indexes = 0 unlink_old = 1 pid_file = E:/var/log/searchd_mysql.pid #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... log = E:/var/log/searchd_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... query_log = E:/var/log/query_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... binlog_path = #关闭binlog日志 compat_sphinxql_magics = 0}
回复讨论(解决方案)
求高手指点啊
public array SphinxClient::query ( string $query [, string $index = "*" [, string $comment = "" ]] )
index
索引名称 (可以为多个,使用逗号分割,或者为“*”表示全部索引).
我现在有几个库,每个库都用sphinx建了不同的索引
但是查询就出问题了
比如说,我要从A库中查询所需内容
那我怎么来指定要查询哪个库的索引呢
这是我的coreseek配置
#音乐源定义source music{ type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = music sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM allmusic sql_query = SELECT id,`name`,`singer` FROM allmusic WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) #sql_query第一列id需为整数#name、singer作为字符串/文本字段,被全文索引 sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集 sql_query_info = SELECT id,`name`,`singer` FROM allmusic WHERE id=$id #命令行查询时,从数据库读取原始数据信息}# music 的增量索引source mdelta:music{ sql_query_pre = SET NAMES utf8 #sel_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM allmusic sql_query = SELECT id,`name`,`singer` FROM allmusic WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1)}#小说源定义source novel{ type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = novel sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM novel sql_query = SELECT id,`name`,`author`,`is_small` FROM novel WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) #sql_query第一列id需为整数#name、singer作为字符串/文本字段,被全文索引 sql_attr_uint = is_small sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集 sql_query_info = SELECT id,`name`,`img`,`des`,`content`,`is_small` FROM novel FROM allmusic WHERE id=$id #命令行查询时,从数据库读取原始数据信息}source ndelta:novel{ sql_query_pre = SET NAMES utf8 #sel_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM novel sql_query = SELECT id,`name`,`author`,`is_small` FROM novel WHERE id<=(SELECT max_id FROM sph_counter WHERE counter_id=1) sql_attr_uint = is_small}#index定义index music{ source = music #对应的source名称 path = E:/sphinx/music/ #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... docinfo = extern mlock = 0 morphology = none html_strip = 0 #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾 charset_dictpath = C:/usr/local/coreseek/etc/ #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/... charset_type = zh_cn.utf-8 min_prefix_len = 0 min_infix_len = 0 min_word_len = 2 ngram_len = 0 ngram_chars = U+4E00..U+9FBF, U+3400..U+4DBF, U+20000..U+2A6DF, U+F900..U+FAFF,\ U+2F800..U+2FA1F, U+2E80..U+2EFF, U+2F00..U+2FDF, U+3100..U+312F, U+31A0..U+31BF,\ U+3040..U+309F, U+30A0..U+30FF, U+31F0..U+31FF, U+AC00..U+D7AF, U+1100..U+11FF,\ U+3130..U+318F, U+A000..U+A48F, U+A490..U+A4CF}index mdelta:music{ source = delta path = E:/sphinx/music/delta}#index定义index novel{ source = novel #对应的source名称 path = E:/sphinx/novel/ #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... docinfo = extern mlock = 0 morphology = none html_strip = 0 #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾 charset_dictpath = C:/usr/local/coreseek/etc/ #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/... charset_type = zh_cn.utf-8 min_prefix_len = 0 min_infix_len = 0 min_word_len = 2 ngram_len = 0 ngram_chars = U+4E00..U+9FBF, U+3400..U+4DBF, U+20000..U+2A6DF, U+F900..U+FAFF,\ U+2F800..U+2FA1F, U+2E80..U+2EFF, U+2F00..U+2FDF, U+3100..U+312F, U+31A0..U+31BF,\ U+3040..U+309F, U+30A0..U+30FF, U+31F0..U+31FF, U+AC00..U+D7AF, U+1100..U+11FF,\ U+3130..U+318F, U+A000..U+A48F, U+A490..U+A4CF}index ndelta:novel{ source = ndelta path = E:/sphinx/novel/delta}#全局index定义indexer{ mem_limit = 128M}#searchd服务定义searchd{ listen = 9312 read_timeout = 5 max_children = 30 max_matches = 1000 seamless_rotate = 0 preopen_indexes = 0 unlink_old = 1 pid_file = E:/var/log/searchd_mysql.pid #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... log = E:/var/log/searchd_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... query_log = E:/var/log/query_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/... binlog_path = #关闭binlog日志 compat_sphinxql_magics = 0}
按索引名来来查询,不是指定库,sphinx搜索和数据库没有关系
$cl = new SphinxClient ();$cl->SetServer ('localhost', '9312');$res = $cl ->Query ( '我', "novel" );
http://docs.php.net/manual/zh/sphinxclient.query.php

Laravel simplifies handling temporary session data using its intuitive flash methods. This is perfect for displaying brief messages, alerts, or notifications within your application. Data persists only for the subsequent request by default: $request-

PHP logging is essential for monitoring and debugging web applications, as well as capturing critical events, errors, and runtime behavior. It provides valuable insights into system performance, helps identify issues, and supports faster troubleshoot

The PHP Client URL (cURL) extension is a powerful tool for developers, enabling seamless interaction with remote servers and REST APIs. By leveraging libcurl, a well-respected multi-protocol file transfer library, PHP cURL facilitates efficient execution of various network protocols, including HTTP, HTTPS, and FTP. This extension offers granular control over HTTP requests, supports multiple concurrent operations, and provides built-in security features.

Laravel provides concise HTTP response simulation syntax, simplifying HTTP interaction testing. This approach significantly reduces code redundancy while making your test simulation more intuitive. The basic implementation provides a variety of response type shortcuts: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Do you want to provide real-time, instant solutions to your customers' most pressing problems? Live chat lets you have real-time conversations with customers and resolve their problems instantly. It allows you to provide faster service to your custom

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo

Alipay PHP...

The article discusses adding custom functionality to frameworks, focusing on understanding architecture, identifying extension points, and best practices for integration and debugging.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

WebStorm Mac version
Useful JavaScript development tools

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Atom editor mac version download
The most popular open source editor