1.solr 的基本命令

2添加 jar包

3.配置连接文件

 

创建/opt/solr-7.5.0/server/solr/testcore/conf/data-config.xml 文件这里配置数据库连接

 

打开/opt/solr-7.5.0/server/solr/testcore/conf/solrconfig.xml 添加一下代码,是引入data-config.xml使其生效。

 

打开/opt/solr-7.5.0/server/solr/testcore/conf/managed-schema这里创建索引字段

4.开始测试

1.solr启动

如果报错“solr start -e techproducts 错误: 系统找不到指定的注册表项或值。”请配置JAVA_HOME环境变量

打开浏览器你会看到这个界面

如果你看不到这个界面,那么端口可能被占用了。

 

Solr扩展允许您与PHP中的Apache Solr服务器进行有效通信。Solr扩展是一个速度极快,重量轻,功能丰富的库,允许PHP开发人员与Solr服务器实例进行有效通信。PECL扩展的版本1.x支持Apache Solr Server 1.3-3.xPECL扩展的版本2.x支持Apache Solr Server 4.0+有内置工具可用于添加文档并更新Solr服务器。它还包含允许您在搜索文档时为服务器构建高级查询的工具。

排序

 

 

可用 Solr 软件包

Solr 可从 Solr 网站获取。您可以在此下载最新版本的 Solr:https://lucene.apache.org/solr/mirrors-solr-latest-redir.html

Solr 有三个独立的软件包:

  • solr-7.0.0.tgz:适用于 Linux / Unix / OSX 系统
  • solr-7.0.0.zip:适用于 Microsoft Windows 系统
  • solr-7.0.0-src.tgz:Solr 源代码包。如果您想在 Solr 上开发而不使用官方的 Git 存储库,这将非常有用。

 

软件包安装

为了保持现在的简单的方式,请将 Solr 分发存档解压缩到您的本地主目录,例如在 Linux 上,请执行以下操作:

一旦解压缩,您现在就可以使用下面的 “启动 Solr” 部分提供的说明运行 Solr 了。

目录布局

安装 Solr 之后,您将会看到以下的目录和文件:

  • bin
    此目录中包含几个重要的脚本,这些脚本将使使用 Solr 更容易。

    • solr 和 solr.cmd
      这是Solr 的控制脚本,也称为bin/solr(对于 * nix)或者bin/solr.cmd(对于 Windows)。这个脚本是启动和停止 Solr 的首选工具。您也可以在运行 SolrCloud 模式时创建集合或内核、配置身份验证以及配置文件。
    • post
      Post Tool,它提供了用于发布内容到 Solr 的一个简单的命令行界面。
    • solr.in.sh 和 solr.in.cmd
      这些分别是为 * nix 和 Windows 系统提供的属性文件。在这里配置了 Java、Jetty 和 Solr 的系统级属性。许多这些设置可以在使用bin/solr或者bin/solr.cmd时被覆盖,但这允许您在一个地方设置所有的属性。
    • install_solr_services.sh
      该脚本用于 * nix 系统以安装 Solr 作为服务。在 “将Solr用于生产 ” 一节中有更详细的描述。
  • contrib
    Solr 的contrib目录包含 Solr 专用功能的附加插件。
  • dist
    dist目录包含主要的 Solr .jar 文件。
  • docs
    docs目录包括一个链接到在线 Javadocs 的 Solr。
  • example
    example目录包括演示各种 Solr 功能的几种类型的示例。有关此目录中的内容的详细信息,请参阅下面的 Solr 示例。
  • licenses
    licenses目录包括 Solr 使用的第三方库的所有许可证。
  • server
    此目录是 Solr 应用程序的核心所在。此目录中的 README 提供了详细的概述,但以下是一些特点:

    • Solr 的 Admin UI(server/solr-webapp
    • Jetty 库(server/lib
    • 日志文件(server/logs)和日志配置(server/resources)。有关如何自定义 Solr 的默认日志记录的详细信息,请参阅配置日志记录一节。
    • 示例配置(server/solr/configsets

Solr 示例

Solr 包括许多在开始时使用的示例文档和配置。如果您运行了 Solr 教程,您已经与这些文件中的某些文件进行了互动。

以下是 Solr 包含的示例:

  • exampledocs
    这是一系列简单的 CSV、XML 和 JSON 文件,可以在首次使用 Solr 时使用bin/post。有关和这些文件一起使用bin/post的更多信息,请参阅 Post 工具。
  • example-DIH
    此目录包含一些 DataImport Handler(DIH)示例,可帮助您开始在数据库、电子邮件服务器甚至 Atom 提要中导入结构化内容。每个示例将索引不同的数据集;有关这些示例的更多详细信息,请参阅 README。
  • files
    files目录为您提供了一个基本的搜索 UI,可以用于文档(例如 Word 或 PDF),您可能已经存储在本地。有关如何使用此示例的详细信息,请参阅README。
  • films
    films目录包含一组关于电影的强大数据,包括三种格式:CSV、XML 和 JSON。有关如何使用此数据集的详细信息,请参阅 README。

启动 Solr

Solr 包括一个名为 bin/solr(对于Linux / MacOS系统)或者 bin\solr.cmd(对于 Windows 系统)的命令行界面工具。此工具允许您启动和停止 Solr、创建核心和集合、配置身份验证和检查系统的状态。

要使用它来启动 Solr,您只需输入:

如果您正在运行 Windows,则可以通过运行 bin \ solr 来启动 Solr。

这将在后台启动 Solr,监听端口 8983。

当您在后台启动 Solr 时,脚本将等待确认 Solr 在正确启动后再返回到命令行提示符。

使用特定捆绑示例启动 Solr

Solr 还提供了一些有用的例子来帮助您了解主要功能。您可以使用该 -e 标志启动这些示例。例如,要启动 “techproducts” 示例,您可以执行以下操作:

目前,您可以运行的可用示例是:techproducts、dih、schemaless 和 cloud。有关每个示例的详细信息,请参阅运行示例配置一节。

检查 Solr 是否正在运行

如果您不确定 Solr 是否在本地运行,则可以使用 status 命令:

这将搜索在您的计算机上运行的 Solr 实例,然后收集有关它们的基本信息,如版本和内存使用情况。

Solr 正在运行。如果您需要有说服力的证明,请使用 Web 浏览器查看管理控制台:http://localhost:8983/solr/

如果 Solr 未运行,您的浏览器将提示无法连接到服务器。请检查您的端口号,然后进行重试。

Solr 安装要求

Java 要求

您将需要 1.8 或更高版本的 Java 运行时环境(JRE)。在命令行中,检查您的 Java 版本,某些版本的 Java VM 有可能影响您的实现的错误。为确保,请查看 Lucene JavaBugs 页面。

支持的操作系统

Solr 在 Linux、MacOS 和 Windows 的几个版本上进行了测试,您可以使用它们。

Solr 是一个基于 Apache Lucene 之上的搜索服务器,它是一个开源的、基于 Java 的信息检索库。它旨在驱动功能强大的文档检索应用程序 – 无论您需要根据用户的查询将数据服务到何处,Solr 都可以为您服务。

下面是一个如何将 Solr 集成到应用程序中的示例:

在上述情况下,Solr 与其他服务器应用程序并行运行。例如,在线商店应用程序将提供用户界面、购物车以及为最终用户购买的方式;而库存管理应用程序将允许商店员工编辑产品信息。产品元数据将保存在某种数据库以及 Solr 中。

Solr 可以通过以下步骤轻松地添加在在线商店搜索的功能:

  1. 定义一个模式。该模式告诉 Solr 关于它将被索引的文档的内容。在在线商店的示例中,模式将定义产品名称、描述、价格、制造商等定义的字段。Solr 的模式是强大而灵活的,可以让您根据自己的应用程序定制 Solr 的行为。有关详细信息,请参阅文档、字段和模式设计。
  2. 您的用户将搜索的 Feed Solr 文档。
  3. 在您的应用程序中公开搜索功能。

因为 Solr 是基于开放标准的,所以它是高度可扩展的。Solr 查询是简单的 HTTP 请求 URL,响应是一个结构化文档:主要是 JSON,但也可以是 XML、CSV 或其他格式。这意味着各种各样的客户端将能够使用 Solr,从其他 Web 应用程序到浏览器客户端、丰富的客户端应用程序和移动设备。任何能够使用 HTTP 的平台都可以与 Solr 对话。有关客户端 API 的详细信息,请参阅客户端 API。

Solr 提供了对多个字段和多面搜索结果的复杂查询的最简单关键字搜索支持。搜索具有更多关于搜索和查询的详细信息。

如果 Solr 的功能还不够令人印象深刻,那么它处理非常高容量应用程序的能力就应该发挥出来。

一个相对常见的情况是,您有太多数据或者有许多查询,以至于单个 Solr 服务器无法处理您的整个工作负载。在这种情况下,您可以使用 SolrCloud 扩展应用程序的功能,以便在多个服务器之间更好地分发数据和处理请求。可以根据您需要的可扩展性的类型,混合和匹配多个选项。

例如:“Sharding” 是一种缩放技术,其中集合被拆分成多个称为“碎片(shards)”的逻辑片段,以便将集合中的文档数量扩展到超过单个服务器上的物理数量。收集的查询将分发到集合中的每个碎片,并通过合并结果进行响应。另一种可用的方法是增加集合的“复制因子”,这使您可以通过将请求扩展到多台计算机,来添加具有集合的额外副本的服务器,以处理更高的并发查询负载。切分和复制不是相互排斥的, 它共同使 Solr 成为一个非常强大和可伸缩的平台。

最重要的是,这个关于大容量应用程序的讨论不仅是假设性的:一些使用 Solr 的著名互联网网站是:Macy’s、EBay 和 Zappo。