Sphinx搜索引擎的独立数据库

Sphinx搜索引擎的独立数据库,sphinx,Sphinx,我想知道是否有办法保持主数据库中与Sphinx相关的表的干净 详细信息:我有一个由Sphinx索引的数据库。由于很大,我使用了main+delta索引方法,但为了实现这一点,我不得不为计数器和观察列表添加额外的表 现在,我想知道是否有可能将计数器和监视列表表一起保存在一个单独的数据库中,并尽可能保持主数据库的干净。当然,您可能需要使用相同的信誉进行连接,以便用户可以从两个数据库读取数据 sql_query = select * from maindb.table where id > (s

我想知道是否有办法保持主数据库中与Sphinx相关的表的干净

详细信息:我有一个由Sphinx索引的数据库。由于很大,我使用了main+delta索引方法,但为了实现这一点,我不得不为计数器和观察列表添加额外的表


现在,我想知道是否有可能将计数器和监视列表表一起保存在一个单独的数据库中,并尽可能保持主数据库的干净。

当然,您可能需要使用相同的信誉进行连接,以便用户可以从两个数据库读取数据

sql_query = select * from maindb.table where id > (select counter from othersb.sphinxcounter)

当然,您可能需要使用相同的信誉来连接,以便用户可以从两个数据库读取数据

sql_query = select * from maindb.table where id > (select counter from othersb.sphinxcounter)

有一个联系。如果您想从另一个数据库收集数据,可以使用联邦表(对于大表来说可能会比较慢,最好是一个从所有数据库收集数据并将Sphinx作为XML/CSV提供的脚本),但是您仍然需要在现有数据库中创建表,这样就无法实现数据库“干净”的目的。为什么不将这些计数器和监视列表表放在同一台MySQL服务器上的另一个DB中呢

有一个连接。如果您想从另一个数据库收集数据,可以使用联邦表(对于大表来说可能会比较慢,最好是一个从所有数据库收集数据并将Sphinx作为XML/CSV提供的脚本),但是您仍然需要在现有数据库中创建表,这样就无法实现数据库“干净”的目的。为什么不将这些计数器和监视列表表放在同一台MySQL服务器上的另一个DB中呢

Sphinx如何知道“maindb”和“othersb”甚至是数据库名称?据我所知,Sphinx处理的“源”实际上是到单个数据库的连接。Sphinx没有!Sphinx只是运行数据库查询。路由取决于数据库引擎。对于mysql,请参阅sphinx中“表定义”的规范。sphinx中的
sql\u db
只是连接的“默认数据库”。使用“USE”sql命令的分析表明,“通过USE语句将特定数据库设置为默认数据库并不妨碍您访问其他数据库中的表。”我希望第二个数据库(“您示例中的othersb”)位于不同的IP/服务器上,因此凭据将不同。还有可能吗?嗯,那就难多了。我只能想使用类似的东西,或者Sphinx如何知道“maindb”和“othersb”甚至是数据库名称?据我所知,Sphinx处理的“源”实际上是到单个数据库的连接。Sphinx没有!Sphinx只是运行数据库查询。路由取决于数据库引擎。对于mysql,请参阅sphinx中“表定义”的规范。sphinx中的
sql\u db
只是连接的“默认数据库”。使用“USE”sql命令的分析表明,“通过USE语句将特定数据库设置为默认数据库并不妨碍您访问其他数据库中的表。”我希望第二个数据库(“您示例中的othersb”)位于不同的IP/服务器上,因此凭据将不同。还有可能吗?嗯,那就难多了。我只能考虑使用类似或这可能是一个解决方案,但当您可以访问单个数据库时,如何在“sql\u query”声明中对两个数据库运行查询?这可能是一个解决方案,但当您可以访问单个数据库时,如何在“sql\u query”声明中对两个数据库运行查询?