我在Windows 7上使用Solr 6.1。
我在管理界面中看到了我的收藏文件,其中有一个managed-schema
文件。
当我尝试搜索(使用Notepad ++)我的Solr目录,其中包含来自托管模式文件的一行时,它什么都没找到。
我还尝试更改Solr目录中的大多数(如果不是全部)managed-schema
文件,并且在重新加载核心后仍然没有应用我的更改(以及managed-schema
的文件内容在管理界面中保持不变)。
有人可以向我解释一下我在admin UI中看到的这个文件是什么? 它是真实文件还是虚拟文件?
我尝试做什么 - 如果重要 - 是让一些字段不是多值的。似乎Solr喜欢因为某种原因将它们全部变为多值(管理UI' managed-schema
文件中包含一些<field name="fieldname" type="strings"/>
,所以我认为这会导致问题 - 我会尝试使用{{ 1}}那里,所以我正在努力改变它的配置。但是,似乎文件名,文件路径等等都在从版本变为版本。所以,我甚至找不到架构配置路径。很混乱的东西。 :(
有人可以帮忙吗?
编辑:
基于我在Solr文件夹中找不到单个string
配置文件的事实,我猜这个文件现在不合时宜了...我猜测它没有任何意义试图在这个版本的Solr中使用这样的文件...
更新:
在深入了解Solr的(无用和误导性)文档页面后,我得到了这些:
https://mail-archives.apache.org/mod_mbox/lucene-solr-user/201509.mbox/
https://mail-archives.apache.org/mod_mbox/lucene-solr-user/201509.mbox/
所以,如果那是真正的文档,我想我应该首先找到一种方法来获取我的zookeeper正在监听的端口并在那里上传我的配置文件。 Dandy,除了我没有在adminUI中看到ZooKepeer端口在ANYWHERE中列出的事实。我也没有设置任何ZooKeeper。我希望默认存在... :(
更新2:
https://wiki.apache.org/solr/SolrCloud
默认情况下,嵌入式Zookeeper服务器在Solr端口加上1000运行,所以9983。
这些信息似乎解决了我的工作问题......
答案 0 :(得分:7)
只需将托管架构重命名为 schema.xml。 然后重新加载核心。
如果您有一个使用的现有Solr集合 ClassicIndexSchemaFactory,您希望转换为使用托管 schema,您可以简化修改solrconfig.xml以指定使用 ManagedIndexSchemaFactory的内容。一旦Solr重新启动它 检测到schema.xml文件存在,但是 managedSchemaResourceName文件(即:“managed-schema”)不存在, 现有的schema.xml文件将重命名为schema.xml.bak和 内容被重写到托管模式文件。如果你看看 结果文件,您将在页面顶部看到:
请仔细阅读。
从schema.xml切换到托管架构
使用托管架构的替代方法是显式配置 ClassicIndexSchemaFactory。 ClassicIndexSchemaFactory需要使用 一个schema.xml配置文件,并禁止任何编程 在运行时更改架构。必须编辑schema.xml文件 手动,仅在加载集合时加载。
<schemaFactory class="ClassicIndexSchemaFactory"/>
https://cwiki.apache.org/confluence/display/solr/Schema+Factory+Definition+in+SolrConfig
<强>更新强>:
更改为手动编辑的schema.xml
如果您已启用Solr并启用了托管架构,并且您希望切换到手动编辑schema.xml文件,则应执行以下步骤:
答案 1 :(得分:0)
在ubuntu中:对于版本Solr 6.6.0集合存储在“/ var / solr / data / collection_name”