当前位置: 首页 > news >正文

支持向量存储:PostgresSQL及pgvector扩展详细安装步骤!老工程接入RAG功能必备!

之前文章和大家分享过,将会出一篇专栏(从电脑装ubuntu系统,到安装ubuntu的常用基础软件:jdkpythonnode、nginx、maven、supervisor、minio、docker、git、mysql、redis、postgresql、mq、ollama等),目前CSDN专栏(https://blog.csdn.net/a13879442471/category_12899690.html)已经分享了jdk、node、redis、ollama、python的搭建,今天继续和大家分享ubuntu如何快速安装PostgreSQL以及数据库向量扩展pgvector

postgressql安装详细步骤

1、更新系统包

sudo apt upgrade

2、使用命令安装postgresql

使用以下命令安装,一路y下去就可以

sudo apt install postgresql postgresql-contrib

3、启动postgresql服务

sudo systemctl start postgresql

4、设置开机启动postgresql

sudo systemctl enable postgresql

5、创建新用户

PostgreSQL安装后,默认会创建一个名为 <font style="color:rgb(36, 41, 47);">postgres</font> 的用户。你可以使用这个用户登录到PostgreSQL。

5.1、切换到postgres用户并进入PostgreSQL

sudo -i -u postgres
psql

5.2、创建新用户和数据库 这里我创建了一个my_robot用户,密码为:myROBOT123,然后创建了一个vector数据库,并把该数据库全部操作权限赋权给my_robot

CREATE USER my_robot WITH PASSWORD 'myROBOT123';
CREATE DATABASE vector OWNER my_robot;
GRANT ALL PRIVILEGES ON DATABASE vector TO my_robot;

5.3 退出PostgreSQL命令行,并退出postgres用户

这里需要操作2步,才能退出到云服务器下,先\q退出postgresql命令行,再exit退出postgres用户

\q
exit

6、配置可公网访问

因为我需要在别的服务器访问该数据库,所以需要打开配置允许公网访问

6.1、编辑pg_hba.conf配置文件

编辑pg_hba.conf配置文件

sudo vim /etc/postgresql/14/main/pg_hba.conf 

在文件底部添加以下参数

host    all             all             0.0.0.0/0               md5

注意踩坑项

这里需要把all改为你前面的用户名,否则会提示权限问题

6.2、编辑postgresql.conf配置文件

sudo vim /etc/postgresql/14/main/postgresql.conf

打开地址监听

listen_addresses = '*'

如果想要访问安全些,这里可以把*改成指定ip地址

6.3、重启PostgreSQL服务

sudo systemctl restart postgresql

7、打开云服务器的PostgreSQL端口

我部署在的云服务器上,所以需要再去服务器把安全组打开postgresql端口公网访问,postgresql的默认安全端口是5432

如果端口有更改的,也可以在服务器使用命令(netstat -nltp)查看具体端口

8、测试访问

使用可视化工具Navicat Premium,点击新建连接,选择PostgreSQL

把第5步创建的用户名、密码及数据库名拷贝过来

引申阅读

postgresql是什么?

PostgreSQL是一种开源的关系型数据库管理系统(RDBMS),它具有高度的可靠性、稳定性和扩展性。PostgreSQL支持大部分SQL标准,并提供许多高级功能,如复杂查询、外键、触发器、视图等。它也支持许多扩展,可以用于处理各种不同类型的数据。PostgreSQL被广泛用于企业和开发者的应用程序中,是一个功能强大且可靠的数据库解决方案。

postgresql和mysql存储数据有什么区别?

PostgreSQL和MySQL是两种流行的开源关系型数据库管理系统,它们在存储数据方面有一些区别:

数据类型和功能

  • PostgreSQL
    • 支持更丰富的数据类型,如数组、JSON、HSTORE、范围类型等。
    • 提供更高级的功能,如窗口函数、CTE(Common Table Expressions)、全文搜索等。
    • 支持更复杂的查询和数据操作,如递归查询、复杂的多表连接等。
  • MySQL
    • 数据类型相对简单,主要支持基本的数据类型,如整数、字符串、日期等。
    • 提供一些特定的功能,如全文索引(在某些存储引擎中)、地理空间数据类型和函数。
    • 以简单易用和性能优化著称,适合快速开发和部署。

存储引擎

  • PostgreSQL
    • 使用单一的存储引擎,称为“Heap Storage”,它处理所有类型的数据存储。
    • 支持表空间(Tablespaces),可以将表和索引存储在不同的物理位置。
  • MySQL
    • 支持多种存储引擎,如InnoDB、MyISAM、Memory等,每种引擎有不同的特性和优化。
    • 默认的存储引擎是InnoDB,它支持事务、行级锁和外键约束。

事务和并发

  • PostgreSQL
    • 提供强大的事务支持,包括ACID(原子性、一致性、隔离性、持久性)特性。
    • 支持多种隔离级别,包括Serializable。
  • MySQL
    • 也提供事务支持,但不同存储引擎的事务特性有所不同。
    • InnoDB存储引擎支持完整的ACID事务,而MyISAM等其他存储引擎不支持事务。

性能和优化

  • PostgreSQL
    • 在复杂查询和数据分析方面表现出色,适合数据仓库和分析应用。
    • 优化器功能强大,能够处理复杂的查询计划。
  • MySQL
    • 在简单查询和高并发读取方面表现良好,适合Web应用和在线事务处理(OLTP)。
    • 优化器相对简单,但在某些场景下性能较高。

社区和支持

  • PostgreSQL
    • 社区活跃,文档丰富,有大量的扩展和插件。
    • 强调数据完整性和功能丰富性。
  • MySQL
    • 社区同样活跃,有大量的用户和开发者。
    • 强调性能和易用性,适合快速开发和部署。

什么场景下需要使用PostgreSQL?

选择PostgreSQL还是MySQL取决于具体的应用需求。如果需要更丰富的数据类型和高级功能,PostgreSQL可能是更好的选择。如果需要简单易用和高并发性能,MySQL可能更适合。PostgreSQL因其强大的功能、丰富的数据类型和高级特性,在多种场景下都非常适用。以下是一些常见的使用场景:

1. 复杂查询和数据分析

  • 数据仓库和BI系统:PostgreSQL支持复杂的查询和数据聚合操作,适合用于数据仓库和商业智能系统。
  • 地理空间数据:PostgreSQL通过PostGIS扩展支持地理空间数据类型和函数,适合用于GIS(地理信息系统)应用。

2. 数据完整性和高级功能

  • 事务处理:PostgreSQL提供完整的事务支持,包括ACID特性,适合需要高度数据完整性的应用。
  • 复杂数据类型:支持数组、JSON、HSTORE等复杂数据类型,适合需要存储非结构化或半结构化数据的应用。

3. 数据一致性和并发控制

  • 多用户并发:PostgreSQL提供强大的并发控制机制,适合多用户同时访问和修改数据的应用。
  • 隔离级别:支持多种隔离级别,包括Serializable,适合需要严格数据一致性的应用。

4. 扩展性和灵活性

  • 扩展插件:PostgreSQL有丰富的扩展和插件,可以增加新的功能和数据类型,适合需要高度定制化的应用。
  • 表继承和分区:支持表继承和分区,适合需要管理大量数据和复杂数据结构的应用。

5. 安全和合规性

  • 数据加密:PostgreSQL支持数据加密和安全特性,适合需要遵守数据安全和隐私法规的应用。
  • 审计和日志:提供详细的审计和日志功能,适合需要监控和记录数据操作的应用。

6. 科研和教育

  • 科研项目:PostgreSQL的丰富功能和灵活性使其成为科研项目的理想选择,可以支持复杂的数据分析和实验。
  • 教育机构:作为开源数据库,PostgreSQL在教育机构中广泛使用,用于教学和实验。

7. 企业级应用

  • 企业资源规划(ERP):PostgreSQL适合用于企业资源规划系统,支持复杂的数据模型和业务逻辑。
  • 客户关系管理(CRM):适合用于客户关系管理系统,支持大量的客户数据和复杂的业务流程。

总结

PostgreSQL在需要复杂查询、高级数据类型、事务完整性、并发控制和扩展性的场景下表现出色。无论是数据仓库、地理信息系统、科研项目还是企业级应用,PostgreSQL都是一个强大的选择。

安装pgvector扩展步骤

在Ubuntu上手工安装pgvector,并将其集成到PostgreSQL 14中,可以按照以下步骤进行:

  1. 安装必要的依赖
sudo apt-get update
sudo apt-get install -y build-essential postgresql-server-dev-14
  1. 克隆pgvector仓库
git clone --branch v0.6.2 git@github.com:pgvector/pgvector.git
cd pgvector
  1. 编译并安装pgvector
make
sudo make install
  1. 配置PostgreSQL以加载pgvector扩展
    编辑PostgreSQL的配置文件postgresql.conf,通常位于/etc/postgresql/14/main/postgresql.conf
sudo vim /etc/postgresql/14/main/postgresql.conf

找到shared_preload_libraries行,并添加pgvector

shared_preload_libraries = 'vector'
  1. 重启PostgreSQL服务
sudo systemctl restart postgresql
  1. 在PostgreSQL数据库中创建pgvector扩展

登录postgres用户,使用psql

su - postgres
psql

使用psql或其他PostgreSQL客户端连接到你的数据库,并运行以下命令:

CREATE EXTENSION vector;
  1. 验证安装
    你可以通过以下查询来验证pgvector是否安装成功:
SELECT * FROM pg_available_extensions WHERE name = 'pgvector';

如果返回结果中包含pgvector,则表示安装成功。

通过以上步骤,你已经成功在Ubuntu上手工安装了pgvector,并将其集成到PostgreSQL 14中。现在你可以在数据库中使用pgvector提供的向量相似性搜索功能了。

相关文章:

支持向量存储:PostgresSQL及pgvector扩展详细安装步骤!老工程接入RAG功能必备!

之前文章和大家分享过&#xff0c;将会出一篇专栏&#xff08;从电脑装ubuntu系统&#xff0c;到安装ubuntu的常用基础软件&#xff1a;jdk、python、node、nginx、maven、supervisor、minio、docker、git、mysql、redis、postgresql、mq、ollama等&#xff09;&#xff0c;目前…...

小土堆pytorch--神经网络-非线性激活线性层及其他层介绍

1. 神经网络-非线性激活 1.1 relu与sigmoid 1.1.1 ReLU&#xff08;Rectified Linear Unit&#xff0c;修正线性单元 &#xff09; 定义与数学表达&#xff1a;数学定义为 f ( x ) max ⁡ ( 0 , x ) f(x) \max(0, x) f(x)max(0,x) &#xff0c;即当输入 x > 0 x > …...

【Vue3】数据的返回和响应式处理(ref reactive)

目录 一、拉开序幕的setup 二、ref函数 2.1 访问对象的响应式处理 小结&#xff1a;ref函数 三、reactive函数 3.1 reactive同样也可以修改数组&#xff1a; 3.2 reactive小结&#xff1a; 四、Vue3中的响应式原理 4.1 vue2的响应式&#xff0c;对象属性的添加 4.2…...

【Rust智能指针】Rust智能指针原理剖析与应用指导

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…...

C++ - 仿 RabbitMQ 实现消息队列(3)(详解使用muduo库)

C - 仿 RabbitMQ 实现消息队列&#xff08;3&#xff09;&#xff08;详解使用muduo库&#xff09; muduo库的基层原理核心概念总结&#xff1a;通俗例子&#xff1a;餐厅模型优势体现典型场景 muduo库中的主要类EventloopMuduo 的 EventLoop 核心解析1. 核心机制&#xff1a;事…...

Java异常处理全解析:从基础到自定义

目录 &#x1f680;前言&#x1f914;异常的定义与分类&#x1f4af;运行时异常&#x1f4af;编译时异常&#x1f4af;异常的基本处理 &#x1f31f;异常的作用&#x1f427;自定义异常&#x1f4af;自定义运行时异常&#x1f4af;自定义编译时异常 ✍️异常的处理方案&#x1…...

C++初阶-vector的模拟实现2

目录 1.vector已经实现的代码总结 2.vector::resize的模拟实现 3.vector::vector(const vector& v)拷贝构造函数的模拟实现 4.vector::operator(const vector& x)的模拟实现&#xff08;原始写法&#xff09; 5.vector::swap的模拟实现 6.vector::operator(const …...

【图数据库】--Neo4j 安装

目录 1.Neo4j --概述 2.JDK安装 3.Neo4j--下载 3.1.下载资源包 3.2.创建环境变量 3.3.运行 Neo4j 是目前最流行的图形数据库(Graph Database)&#xff0c;它以节点(Node)、关系(Relationship)和属性(Property)的形式存储数据&#xff0c;专门为处理高度连接的数据而设计。…...

elementui初学1

当然可以&#xff01;下面是从零开始创建一个最简单的 Element UI 程序的完整流程&#xff0c;基于 Vue 2 Element UI&#xff08;如果你想用 Vue 3&#xff0c;请告诉我&#xff0c;我可以给你 Element Plus 的版本&#xff09;。 ✅ 一、准备环境 确保你已经安装了&#xf…...

lanqiaoOJ 4185:费马小定理求逆元

【题目来源】 https://www.lanqiao.cn/problems/4185/learning/ 【题目描述】 给出 n&#xff0c;p&#xff0c;求 。其中&#xff0c; 指存在某个整数 0≤a<p&#xff0c;使得 na mod p1&#xff0c;此时称 a 为 n 的逆元&#xff0c;即 。数据保证 p 是质数且 n mod p≠0…...

计算机视觉与深度学习 | Python实现CEEMDAN-ISOS-VMD-GRU-ARIMA时间序列预测(完整源码和数据)

以下是结合CEEMDAN、ISOS-VMD、GRU和ARIMA的时间序列预测的Python完整实现方案。本方案包含完整的代码、数据生成逻辑和实现细节说明。 完整代码实现 import numpy as np import pandas as pd from PyEMD import CEEMDAN from vmdpy import VMD from scipy.optimize import di…...

前端开发遇到 Bug,怎么办?如何利用 AI 高效解决问题

前端开发遇到 Bug&#xff0c;怎么办&#xff1f;如何利用 AI 高效解决问题 作为前端开发者&#xff0c;遇到 Bug 几乎是日常。无论是样式错乱、功能异常&#xff0c;还是接口数据不对&#xff0c;Bug 总能让人头疼。但随着人工智能&#xff08;AI&#xff09;技术的发展&…...

博主总结框架

1.博主总结框架 1.1 计算机基础类&#xff08;数据结构、计算机网络、操作系统等&#xff09; &#xff08;1&#xff09;数据结构 &#xff08;2&#xff09;操作系统 &#xff08;3&#xff09;计算机网络 &#xff08;4&#xff09;其他 物联网入门框架 1.2 计算机图形…...

国产化Excel处理组件Spire.XLS for .NET系列教程:通过 C# 将 TXT 文本转换为 Excel 表格

在数据处理和管理场景中&#xff0c;将原始文本文件&#xff08;TXT&#xff09;高效转换为结构化的 Excel 电子表格是一项常见要求。对于那些需要自动生成报表或者处理日志文件的开发人员而言&#xff0c;借助 C# 实现 TXT 到 Excel 的转换工作&#xff0c;可以简化数据组织和…...

网络安全--PHP第一天

目标 熟悉信息传递架构 基于phpstydy-mysql-php 前置条件 需要先在数据库中创建相应的库和表名并配置表的结构 该文件为数据库配置文件 名字为config.php <?php $dbip localhost;//连接数据库的地址 远程连接需要输入ip等 $dbuser root;//连接数据库的用户 $dbpass ro…...

结构型:组合模式

目录 1、核心思想 2、实现方式 2.1 模式结构 2.2 实现案例 3、优缺点分析 4、适用场景 1、核心思想 目的&#xff1a;将总是在重复、迭代地显示的某种自相似性的结构&#xff08;部分与整体结构特征相似&#xff09;&#xff0c;例如树形结构&#xff0c;以统一的方式处…...

Node.js多版本安装工具NVM详细使用教程

一、nvm 简介 nvm&#xff08;Node Version Manager&#xff09;是一个用于管理多个 Node.js 版本的命令行工具&#xff0c;允许开发者在单个系统中轻松切换、安装和卸载不同版本的 Node.js。它是前端和后端开发中处理 Node.js 版本兼容性问题的核心工具之一。 二、nvm 安装 …...

深度解析 Java 中介者模式:重构复杂交互场景的优雅方案

一、中介者模式的核心思想与设计哲学 在软件开发的历史长河中&#xff0c;对象间的交互管理一直是架构设计的核心难题。当多个对象形成复杂的网状交互时&#xff0c;系统会陷入 "牵一发而动全身" 的困境。中介者模式&#xff08;Mediator Pattern&#xff09;作为行…...

(八)深度学习---计算机视觉基础

分类问题回归问题聚类问题各种复杂问题决策树√线性回归√K-means√神经网络√逻辑回归√岭回归密度聚类深度学习√集成学习√Lasso回归谱聚类条件随机场贝叶斯层次聚类隐马尔可夫模型支持向量机高斯混合聚类LDA主题模型 一.图像数字化表示及建模基础 二.卷积神经网络CNN基本原…...

深入剖析原型模式:原理、实现与应用实践

在软件开发的世界里,设计模式如同建筑师手中的蓝图,为复杂系统的构建提供了行之有效的解决方案。其中,原型模式(Prototype Pattern)作为创建型设计模式的重要一员,以其独特的对象创建方式,在提高代码复用性、增强系统灵活性等方面发挥着关键作用。本文将深入剖析原型模式…...

【论文阅读 | CVPR 2024 |RSDet:去除再选择:一种用于 RGB - 红外目标检测的由粗到精融合视角】

论文阅读 | CVPR 2024 |RSDet:去除再选择&#xff1a;一种用于 RGB - 红外目标检测的由粗到精融合视角 1.摘要&&引言2. 方法2.1 “由粗到细”融合策略2.2 冗余光谱去除模块&#xff08;RSR&#xff09;2.3 动态特征选择模块&#xff08;DFS&#xff09;2.4 去除与选择检…...

WinForms 应用中集成 OpenCvSharp 实现基础图像处理

引言 欢迎关注dotnet研习社&#xff0c;今天我们要讨论的主题是WinForms 应用中集成 OpenCvSharp 实现基础图像处理。 在常规的图像处理软件开发中&#xff0c;图像处理功能是这些应用程序的核心组成部分。无论是简单的照片编辑工具&#xff0c;还是复杂的计算机视觉应用&…...

apache http client连接池实现原理

在java开发中我们经常会涉及到http 请求接口&#xff0c;一般有几种方式&#xff1a; java自带的 HttpURLConnectionokHttpClientapache http client 一般我们使用apache http client会比较多点&#xff0c;在代码中会进行如下调用方式&#xff1a; private static class Htt…...

adb抓包

目录 抓包步骤 步骤 1: 获取应用的包名 步骤 2: 查看单个应用的日志 步骤 3: 使用日志级别过滤器 步骤 4: 高级日志过滤 可能的原因&#xff1a; 解决方案&#xff1a; 额外提示&#xff1a; 日志保存 抓包步骤 连接设备 adb devices 步骤 1: 获取应用的包名 首先…...

C语言---结构体 、联合体、枚举

一、初识结构体 1、结构体类型 结构体和数组都是集合&#xff0c;但是结构体有成员&#xff0c;类型可以不同&#xff1b;数组有成员&#xff0c;类型相同。 int main() {struct tag{member--list //一个或者多个成员&#xff0c;成员变量}variable--list;//可以省略&#x…...

Web Workers 使用指南

文章目录 前言基础使用高级特性 使用 ES Modules实际应用场景图像处理大数据处理轮询任务 性能优化技巧现代开发方式使用 worker-loader (Webpack) Vite中的Worker使用 限制与注意事项DOM限制:通信限制:同源策略:最佳实践 前言 Web Workers 是浏览器提供的 JavaScript 多线程解…...

JVM 与容器化部署调优实践(Docker + K8s)

&#x1f4cc; 文章目录 &#x1f4d8; 前言1️⃣ 容器环境下 JVM 面临的新挑战2️⃣ JVM 的容器资源感知机制详解3️⃣ JVM 内存调优&#xff1a;如何正确使用堆内存4️⃣ JVM CPU 调优&#xff1a;GC 与编译线程控制5️⃣ Kubernetes 典型配置误区与对策6️⃣ 实战案例&#…...

Android OkHttp控制链:深入理解网络请求的流程管理

OkHttp作为Android和Java平台上广泛使用的HTTP客户端&#xff0c;其核心设计之一就是"控制链"(Chain)机制。本文将深入探讨OkHttp控制链的工作原理、实现细节以及如何利用这一机制进行高级定制。 一、什么是OkHttp控制链 OkHttp控制链是一种责任链模式的实现&#…...

《易经》的数学表达:初级版和高级版

《易经》的数学表达&#xff0c; 一、初级版&#xff0c;可基于以下框架构建&#xff0c; 涵盖符号系统、结构代数及变换规则&#xff1a; 此框架将《易经》抽象为离散数学结构&#xff0c;兼容符号逻辑、概率论与群论&#xff0c;为算法化占断、卦象拓扑分析及跨文化比较提供…...

卷积神经网络基础(十)

之前我们学习了SGD、Momentum和AdaGrad三种优化方法&#xff0c;今天我们将继续学习Adam方法。 6.1.6 Adam 我们知道Momentum参照的是小球在碗中滚动的物理规则进行移动而实现的&#xff0c;AdaGrad为参数的每个元素适当地调整更新步伐。那如果我们将这两种方法融合在一起会不…...

怎么把cursor(Cursor/ollama)安装到指定路径

使用PowerShell命令 打开电脑开始菜单&#xff0c;输入powerShell&#xff0c;使用管理员权限打开powerShell窗口&#xff0c;使用cd命令到cursor或ollama安装包的下载目录&#xff0c;如我的Cursor所在的目录为D:\environment\cursor\soft&#xff0c;输入以下 cd E:\downloa…...

第21天-pyttsx3语音播放功能

示例1:语音参数控制(语速/音量/音调) import pyttsx3def speech_demo():engine = pyttsx3.init()# 获取当前语音参数print("默认语速:", engine.getProperty(rate))print("默认音量:", engine.getProperty(volume))print("可用语音:", engin…...

Multi-Query Attention:传统自注意力( Self-Attention)优化显存和加速方案

本文导读&#xff1a;Multi-Query Attention&#xff08;MQA&#xff09;是 Google Research 2022 年提出的一项轻量化注意力技术&#xff0c;通过“多查询、单键值”的设计&#xff0c;把自注意力层的 KV 缓存从 O(hnd) 降到 O(nd)&#xff0c;在不牺牲模型精度的前提下大幅节…...

学习路之uniapp--unipush2.0推送功能--服务端推送消息

学习路之uniapp--unipush2.0推送功能--服务端推送消息 一、二、三、 一、 二、 三、...

如何使用AI搭建WordPress网站

人工智能正迅速成为包括网页设计在内的许多行业在其功能设置中添加的一种工具。在数字设计和营销领域&#xff0c;许多成熟的工具都在其产品中添加了人工智能功能。WordPress 也是如此。作为目前最流行的网站建设工具之一&#xff0c;WordPress 的人工智能插件越来越多也就不足…...

Java 项目管理工具:Maven 与 Gradle 的深度对比与选择

Java 项目管理工具&#xff1a;Maven 与 Gradle 的深度对比与选择 在 Java 开发领域&#xff0c;项目管理工具对于项目的构建、依赖管理等起着至关重要的作用。Maven 和 Gradle 是目前最主流的两款工具&#xff0c;它们各自有着独特的优势和适用场景。本文将对 Maven 与 Gradl…...

Elasticsearch简单集成java框架方式。

Elasticsearch 在 Java 中最常用的客户端是什么&#xff1f;如何初始化一个 RestHighLevelClient&#xff1f;如何用 Spring Boot 快速集成 Elasticsearch&#xff1f;Spring Data Elasticsearch 如何定义实体类与索引的映射&#xff1f; 最常用的 Java 客户端 目前官方推荐使用…...

50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | Hidden Search Widget (交互式搜索框)

&#x1f4c5; 我们继续 50 个小项目挑战&#xff01;—— Hidden Search Widget 组件 仓库地址&#xff1a;https://github.com/SunACong/50-vue-projects 项目预览地址&#xff1a;https://50-vue-projects.vercel.app/ ✨ 组件目标 点击按钮展开隐藏的搜索框 再次点击按钮…...

python爬虫和逆向:百度翻译数据采集的几种方式

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、官方API方式(推荐)1.1 百度翻译开放平台API二、网页版逆向方式(代码可直接运行)2.1 拿到js加密方法2.2 python解密代码三、浏览器自动化方式3.1 Selenium自动化操作3.2 Playwright自动化四、移动端API逆向4.1 分…...

spring5-配外部文件-spEL-工厂bean-FactoryBean

spring配外部文件 我们先在Spring里配置一个数据源 1.导c3p0包,这里我们先学一下hibernate持久化框架&#xff0c;以后用mybites. <dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>5.2.…...

Ubuntu部署私有Gitlab

这个东西安装其实挺简单的&#xff0c;但是因为我这边迁移了数据目录和使用自己安装的 nginx 代理还是踩了几个坑&#xff0c;所以大家可以注意下 先看下安装 # 先安装必要组件 sudo apt update sudo apt install -y curl openssh-server ca-certificates tzdata perl# 添加gi…...

Activiti 7建表语句及注释

Activiti数据库表Oracle兼容DM建表语句及字段注释。 附件下载版地址点这里 --通用属性表 create table ACT_GE_PROPERTY (NAME_ NVARCHAR2(64),VALUE_ NVARCHAR2(300),REV_ INTEGER,primary key (NAME_) );COMMENT ON TABLE ACT_GE_PROPERTY IS 通用属性表;COMMENT ON COLUMN …...

React中使用 Ant Design Charts 图表

// 引入 Ant Design Charts 的柱状图组件 Column import { Column } from ant-design/charts;// 定义函数组件 App&#xff0c;用于展示柱状图 function App() {// 数据源&#xff1a;每个对象代表一个柱子&#xff0c;包含类型&#xff08;type&#xff09;和销售额&#xff0…...

佰力博科技与您探讨压电材料的原理与压电效应的应用

压电材料的原理基于正压电效应和逆压电效应&#xff0c;即机械能与电能之间的双向转换特性。 压电材料的原理源于其独特的晶体结构和电-机械耦合效应&#xff0c;具体可分为以下核心要点&#xff1a; 1. ‌正压电效应与逆压电效应的定义‌ ‌正压电效应‌&#xff1a;当压电…...

vscode打开vue + element项目

好嘞&#xff0c;我帮你详细整理一个用 VS Code 来可视化开发 Vue Element UI 的完整步骤&#xff0c;让你能舒服地写代码、预览界面、调试和管理项目。 用 VS Code 可视化开发 Vue Element UI 全流程指南 一、准备工作 安装 VS Code 官网下载安装&#xff1a;https://code…...

一步步解析 HTTPS

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…...

使用vue2做一个生成二维码的案例【可当组件使用】

最近有个需求需要用前端来生成一个二维码&#xff0c;就封装了一个简单的组件&#xff0c;这篇文章来分享给大家。 使用的技术&#xff1a; Vue2 Ant Design Vue QRCodeJS2 node版本&#xff1a;16.20 组件样式&#xff1a; 大家可以根据自己的需求来调整代码。 依赖安装&am…...

Hadoop-HA高可用集群启动nameNode莫名挂掉,排错解决

Hadoop-HA高可用集群启动nameNode莫名挂掉&#xff0c;排错解决 nameNode错误日志 2025-05-21 16:14:12,218 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: node01/192.168.191.111:8485. Already tried 5 time(s); retry policy is RetryUpToMaximumCoun…...

从零基础到最佳实践:Vue.js 系列(2/10):《模板语法与数据绑定》

Vue.js 模板语法与数据绑定&#xff1a;从基础到实践 关键点 Vue.js 的模板语法使用 HTML 结合特殊指令&#xff08;如 v-bind、v-on&#xff09;&#xff0c;实现动态界面。插值&#xff08;{{ }}&#xff09;显示数据&#xff0c;指令控制 DOM 行为&#xff0c;双向绑定简化…...

第二章:Android常用UI控件

1、介绍&#xff1a; 控件是界面组成的主要元素&#xff0c;界面中的控件有序排放和完美组合&#xff0c;便可在用户眼前呈现出丰富多彩的页面。 2、常用控件&#xff1a; 一、TextView控件&#xff1a; 在使用手机时&#xff0c;经常会看见一些文本信息&#xff0c;这些文本…...