『PostgreSQL』 Ubuntu 系统下PG15的安装与 PGVector 配置指南

📣读完这篇文章里你能收获到

  1. 📦 学会如何在 Ubuntu 上安装最新的 PostgreSQL 15 数据库。
  2. 🔑 掌握修改 PostgreSQL 管理员密码和配置远程连接的方法。
  3. 🌐 了解如何启用 PGVector 插件,实现向量存储和多种距离计算。
  4. 🛠️ 学习 PostgreSQL 的基本配置,包括防火墙设置和扩展安装。

文章目录

  • 前言
  • 一、安装PostgreSQL
    • 1. 更新系统软件包
    • 2. 添加 PostgreSQL 官方仓库
    • 3. 安装 PostgreSQL 15
    • 4. 验证安装
    • 5. 配置 PostgreSQL
      • 5.1 修改管理员用户密码
      • 5.2允许远程连接
      • 5.3 配置防火墙
    • 6. 登录 PostgreSQL
  • 二、安装PGVector插件
    • 1. 安装 PGVector 插件
    • 2. 配置 PGVector
      • 2.1 进入 PostgreSQL 命令行
      • 2.2 启用 PGVector 插件
      • 2.3 查看插件状态

前言

本文为开发者提供了一份详细的指南,介绍了如何在 Ubuntu 系统上安装 PostgreSQL 15 数据库,并配置 PGVector 插件。从更新系统软件包、添加官方仓库,到安装 PostgreSQL、修改管理员密码、允许远程连接,再到安装和启用 PGVector 插件,每一步都配有清晰的命令和说明。通过这些步骤,读者可以快速搭建一个支持向量存储和查询的 PostgreSQL 环境,为机器学习和数据分析项目打下坚实基础。

一、安装PostgreSQL

1. 更新系统软件包

在安装 PostgreSQL 之前,建议先更新系统软件包,确保系统处于最新状态:

sudo apt update
sudo apt upgrade -y

2. 添加 PostgreSQL 官方仓库

Ubuntu 默认仓库中的 PostgreSQL 版本可能不是最新的。为了安装 PostgreSQL 15,需要添加官方的 PostgreSQL 仓库:

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

3. 安装 PostgreSQL 15

添加仓库后,更新软件包列表并安装 PostgreSQL 15:

sudo apt update
sudo apt install -y postgresql-15 postgresql-client-15

4. 验证安装

安装完成后,可以通过以下命令验证 PostgreSQL 是否正常运行:

sudo systemctl status postgresql

如果服务已启动,输出应显示为 active (running)

此外,可以通过以下命令检查 PostgreSQL 的版本:

psql --version

输出应显示为 psql (PostgreSQL) 15.x


5. 配置 PostgreSQL

5.1 修改管理员用户密码

默认情况下,PostgreSQL 创建了一个名为 postgres 的用户。可以通过以下命令修改其密码:

sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'your_new_password';
\q

5.2允许远程连接

默认情况下,PostgreSQL 只允许本地连接。如果需要允许远程连接,需要修改配置文件:

  1. 修改 postgresql.conf 文件:
sudo vim /etc/postgresql/15/main/postgresql.conf

找到 listen_addresses,取消注释并将其值改为 '*'

listen_addresses = '*'
  1. 修改 pg_hba.conf 文件:
sudo vim /etc/postgresql/15/main/pg_hba.conf

在文件末尾添加以下行以允许所有 IP 连接:

host    all             all             0.0.0.0/0               md5
  1. 重启 PostgreSQL 服务以应用更改:
sudo systemctl restart postgresql

5.3 配置防火墙

如果系统启用了防火墙,需要允许 PostgreSQL 的默认端口(5432)通过:

sudo ufw allow 5432

6. 登录 PostgreSQL

可以通过以下命令切换到 postgres 用户并登录到 PostgreSQL:

sudo -u postgres psql

在 PostgreSQL 提示符下,可以执行 SQL 命令进行数据库操作。

二、安装PGVector插件

1. 安装 PGVector 插件

PGVector 是一个 PostgreSQL 扩展,支持向量存储和多种距离计算。安装步骤如下:

sudo apt -y install postgresql-15-pgvector

2. 配置 PGVector

安装完成后,需要在 PostgreSQL 数据库中启用 PGVector 插件。以下是具体步骤:

2.1 进入 PostgreSQL 命令行

切换到 PostgreSQL 用户并进入命令行:

sudo -u postgres psql

2.2 启用 PGVector 插件

在 PostgreSQL 命令行中,运行以下命令启用 PGVector 插件:

CREATE EXTENSION IF NOT EXISTS vector;

2.3 查看插件状态

可以通过以下命令查看已安装的扩展及其状态:

-- 查看所有可用的扩展
SELECT * FROM pg_available_extensions;

-- 查看当前数据库实例中已安装和启用的扩展
SELECT * FROM pg_extension;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/984792.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于在electron(Nodejs)中使用 Napi 的简单记录

当我们使用electron想要集成一个C SDK实现很底层的算法逻辑就有可能与C SDK进行数据通信。 Napi 应该是比较好的选择,因为C本身的运行速度很快,使用Napi也能很大程度上保证软件的兼容性、又不会阻塞C线程、还可以很简单的与C 实现数据传递。 开始使用 安…

vscode(cursor)配置python环境,含远程调试

一、本地配置 1.1 安装python插件 1.2 配置python环境 在右下角就可以切换python环境,太简单了! 1.3 Debug说明 打断点直接开启! 在debug的过程中,还可以输入打印中间变量或者做一些测试 二、远程连接 2.1 下载远程工具 2.2 连…

S19文件格式详解:汽车ECU软件升级中的核心镜像格式

文章目录 引言一、S19文件格式的起源与概述二、S19文件的核心结构三、S19在汽车ECU升级中的应用场景四、S19与其他格式的对比五、S19文件实例解析六、工具链支持与安全考量七、未来趋势与挑战结语引言 在汽车电子控制单元(ECU)的软件升级过程中,S19文件(也称为Motorola S-…

怎么使用数据集微调大模型LLM

怎么使用数据集微调大模型LLM 目录 怎么使用数据集微调大模型LLM项目运行后目录结构1. 导入必要的库2. 准备训练数据3. 加载模型与分词器4. 数据预处理5. 配置训练参数(CPU 专用)6. 训练与保存完整可运行代码,调试了2天,保证可用项目运行后目录结构 1. 导入必要的库 from …

深度评测DeepSeek、ChatGPT O1和谷歌Gemini AI应用开发场景 - DeepSeek性能完胜!

下面我会展示我为期一周的实验结果,创作不宜,希望大家关注我,以后多多互3!前一阵我在互联网上看到很多关于DeepSeek R1的讨论,这个开源模型据说可以媲美,甚至优于像OpenAI o1这样的付费模型。 由于我在日常…

ubuntu局域网部署stable-diffusion-webui记录

需要局域网访问,如下设置: 过程记录查看源码: 查看源码,原来修改参数:--server-name 故启动: ./webui.sh --server-name0.0.0.0 安装下载记录: 快速下载可设置: export HF_ENDPOI…

数智读书笔记系列015 探索思维黑箱:《心智社会:从细胞到人工智能,人类思维的优雅解读》读书笔记

引言 《The Society of Mind》(《心智社会》)的作者马文・明斯基(Marvin Minsky),是人工智能领域的先驱和奠基者之一 ,1969 年获得图灵奖,被广泛认为是对人工智能领域影响最大的科学家之一。他…

2.1 Vite + Vue 3 + TS 项目脚手架深度配置

文章目录 **一、环境准备与技术选型****二、项目初始化与基础架构****三、工程化配置深度优化****四、代码规范与质量保障****五、Vue 3 深度集成****六、TypeScript 高级配置****七、第三方库集成****八、构建优化策略****九、企业级最佳实践****十、扩展配置参考****本章核心…

利用FatJar彻底解决Jar包冲突(一)

利用FatJar彻底解决Jar包冲突 序FatJar的加载与隔离⼀、 FatJar概念⼆、FatJar的加载三、FatJar的隔离四、隔离机制验证五、 FatJar的定位六、 打包注意点 序 今天整理旧电脑里的资料,偶然翻到大概10年前实习时写的笔记,之前经常遇到Java依赖冲突的问题…

C/C++蓝桥杯算法真题打卡(Day4)

一、P11041 [蓝桥杯 2024 省 Java B] 报数游戏 - 洛谷 算法代码&#xff1a; #include<bits/stdc.h> using namespace std;// 计算第 n 个满足条件的数 long long findNthNumber(long long n) {long long low 1, high 1e18; // 二分查找范围while (low < high) {lo…

DeepSeek大语言模型下几个常用术语

昨天刷B站看到复旦赵斌老师说的一句话“科幻电影里在人脑中植入芯片或许在当下无法实现&#xff0c;但当下可以借助AI人工智能实现人类第二脑”&#xff08;大概是这个意思&#xff09; &#x1f49e;更多内容&#xff0c;可关注公众号“ 一名程序媛 ”&#xff0c;我们一起从 …

快速从C过度C++(一):namespace,C++的输入和输出,缺省参数,函数重载

&#x1f4dd;前言&#xff1a; 本文章适合有一定C语言编程基础的读者浏览&#xff0c;主要介绍从C语言到C过度&#xff0c;我们首先要掌握的一些基础知识&#xff0c;以便于我们快速进入C的学习&#xff0c;为后面的学习打下基础。 这篇文章的主要内容有&#xff1a; 1&#x…

IDEA接入阿里云百炼中免费的通义千问[2025版]

安装deepseek 上一篇文章IDEA安装deepseek最新教程2025中说明了怎么用idea安装codeGPT插件&#xff0c;并接入DeepSeek&#xff0c;无奈接入的官方api已经不能使用了&#xff0c;所以我们尝试从其他地方接入 阿里云百炼https://bailian.console.aliyun.com/ 阿里云百炼‌是阿…

六十天前端强化训练之第十三天之JavaScript 原型与继承详解

欢迎来到编程星辰海的博客讲解 目录 一、原型系统底层探秘 1.1 对象体系构建原理 内存模型示意图 1.2 原型链工作机制 1.3 原型相关方法详解 (1) Object.getPrototypeOf (2) Object.setPrototypeOf (3) Object.create 1.4 构造函数运行机制 二、八种继承模式深度剖析…

大语言模型学习--向量数据库基础知识

1.向量 向量是多维数据空间中的一个坐标点。 向量类型 图像向量 文本向量 语音向量 Embedding 非结构化数据转换为向量过程 通过深度学习训练&#xff0c;将真实世界离散数据&#xff0c;投影到高维数据空间上&#xff0c;通过数据在空间中间的距离体现真实世界的相似度 V…

Python语法核心架构与核心知识点:从理论到实践

一、Python的核心设计哲学 Python以“简洁优雅”为核心理念&#xff0c;遵循以下原则&#xff1a; # Zen of Python&#xff08;输入 import this 可查看&#xff09; >>> import this The Zen of Python, by Tim Peters ... Simple is better than complex. Readab…

mac本地部署Qwq-32b记录

导语 昨天看到阿里开源了Qwq-32b&#xff0c;号称性能可以媲美Deepseek-R1。今天晚上有空就在Mac上折腾了一下&#xff0c;使用ollma进行了部署&#xff0c;效果感觉还不错&#xff0c;特此记录。 环境 硬件 型号&#xff1a;Macbook M1 Pro 14寸内存&#xff1a;512G 环境…

Vue3 Pinia 符合直觉的Vue.js状态管理库

Pinia 符合直觉的Vue.js状态管理库 什么时候使用Pinia 当两个关系非常远的组件&#xff0c;要传递参数时使用Pinia组件的公共参数使用Pinia

JAVA面试_进阶部分_深入理解socket网络异常

在各种网络异常情况的背后&#xff0c;TCP是怎么处理的&#xff1f;又是怎样把处理结果反馈给上层应用的&#xff1f;本文就来讨论这个问题。 分为两个场景来讨论 建立连接 1 正常情况下 进过三次握手&#xff0c;客户端连接成功&#xff0c;服务端有一个新连接到来。 2 客…

警惕AI神话破灭:深度解析大模型缺陷与禁用场景指南

摘要 当前AI大模型虽展现强大能力&#xff0c;但其本质缺陷可能引发系统性风险。本文从认知鸿沟、数据困境、伦理雷区、技术瓶颈四大维度剖析大模型局限性&#xff0c;揭示医疗诊断、法律决策等8类禁用场景&#xff0c;提出可信AI建设框架与用户防护策略。通过理论分析与实操案…