轻松上手:Windows环境下Elasticsearch搭建及Python运行

发布于:2025-03-05 ⋅ 阅读:(127) ⋅ 点赞:(0)

最近做毕设要用到 Elasticsearch 数据库,想在本地搭建,并用 python 调用数据库,踩了很多坑终于搞定,此教程简洁易懂,包你很快用上 es!

1. 安装

点击链接,在下拉框里选择 windows 版本,然后点击下载。

下载完后,找一个合适的位置,将压缩包解压。我直接在 D 盘解压了,解压后的文件夹名是 elasticsearch-8.17.2(截至目前最新的版本)。

2. 文件配置

因为是本地自己使用,并且只用于毕设项目的开发,为了方便快捷,所以禁用安全功能(仅用于开发环境),可以省去用户,密码登录等等操作。

进入到 config 文件夹,打开 elasticsearch.yml 文件。

找到 xpack.security.enabled 变量,把 true 改成 false(原本默认是 true)。

保存修改。进入到 bin 文件夹,双击 elasticsearch.bat 文件,启动 Elasticsearch 服务。

等终端指令跑完。

打开浏览器,输入 http://localhost:9200/,显示如下,即表示启动成功了。

3. python 库安装

切换到自己要安装的虚拟环境,然后在终端上输入下面指令,安装 elasticsearch 库。

!pip install --upgrade elasticsearch

在自己的 IDE 上,创建一个 .py 文件,贴入下面代码,然后在刚才安装 elasticsearch 库的环境下运行文件。

from datetime import datetime
from elasticsearch import Elasticsearch

client = Elasticsearch("http://localhost:9200/")

doc = {
    "author": "kimchy",
    "text": "Elasticsearch: cool. bonsai cool.",
    "timestamp": datetime.now(),
}
resp = client.index(index="test-index", id=1, document=doc)
print(resp["result"])

resp = client.get(index="test-index", id=1)
print(resp["_source"])

client.indices.refresh(index="test-index")

resp = client.search(index="test-index", query={"match_all": {}})
print("Got {} hits:".format(resp["hits"]["total"]["value"]))
for hit in resp["hits"]["hits"]:
    print("{timestamp} {author} {text}".format(**hit["_source"]))

终端输出如下结果即可。

之后就可以用 python 语言操控 Elasticsearch 数据库,创建各种索引以及检索向量(默认保存在 \elasticsearch-8.17.2\data 文件夹下)等等了,具体怎么用可以参考官方文档