我们设置了3个节点和3个Solr 7实例的外部Zookeper。
我正在尝试使用Solr 4创建的旧项目中的schema.xml
文件。
我遵循以下步骤:
将managed-schema
文件重命名为schema.xml
。
修改solrconfig.xml
以替换schemaFactory
类。
一个。删除任何ManagedIndexSchemaFactory
定义(如果存在)。
湾添加ClassicIndexSchemaFactory
使用upconfig上传配置
sudo ./zkcli.sh -cmd upconfig -confdir /home/pc2/Desktop/solrconfig/conf-readData -confname readData -zkhost 192.168.1.120:2181,192.168.1.100:2181,192.168.1.105:2181
sudo ./zkcli.sh -cmd linkconfig -collection readData -confname readData -zkhost 192.168.1.120:2181,192.168.1.100:2181,192.168.1.105:2181
curl 'http://192.168.1.85:8983/solr/admin/collections?action=CREATE&name=readData&numShards=3&replicationFactor=3&maxShardsPerNode=3'
当我从Solr admin检查readData
的架构时,它没有显示我在schema.xml
中提到的字段。
创建的字段包括_root_
,_text_
,_version_
以及更多动态字段。
我缺少什么?
Solr版本:7.3.0
Zookeper版本:3.4.12
答案 0 :(得分:0)
我看到你做的2个问题:
创建集合时缺少collection.configName
参数。
您必须首先创建集合,然后链接配置。
linkconfig
非常有用,但您必须在创建新集合时指定collection.configName
参数,或者另一方面,_default
使用集合配置。
这也解释了为什么您只看到_root_
,version
,_text_
等等。这些是_default
集合配置中配置的默认字段。
我建议按以下方式创建集合:
curl "http://192.168.1.85:8983/solr/admin/collections?action=CREATE&name=readData&collection.configName=readData&numShards=3&replicationFactor=3&maxShardsPerNode=3"
或使用Solr管理控制台。