几种环境下的Postgres数据库安装

1. Postgres 数据库介绍

PostgreSQL(又称 Postgres)是一种强大、开源的关系型数据库管理系统(RDBMS),它具备高度的可靠性、稳定性和可扩展性,主要特点如下:

  1. 开源:PostgreSQL 是基于开源许可证发布的,任何人都可以免费使用、修改和分发它。
  2. 关系型数据库:PostgreSQL 是一种关系型数据库,支持 SQL 查询语句,具有强大的数据处理能力。
  3. 可扩展性:PostgreSQL 支持多种插件扩展,可以满足各种不同规模和需求的应用场景。
  4. 支持复杂数据类型:除了传统的数据类型外,PostgreSQL 还支持数组、JSON、XML 等复杂数据类型。
  5. 事务支持:PostgreSQL 提供完整的 ACID 事务支持,确保数据的一致性和可靠性。
  6. 触发器和存储过程:支持触发器和存储过程,可以在数据库层面实现业务逻辑。
  7. 并发控制:具备强大的并发控制能力,能够处理大量并发访问请求。
  8. 安全性:提供强大的用户认证和权限管理能力,确保数据安全。
  9. 扩展性:可以轻松地通过扩展模块来增加额外的功能,如全文搜索、地理信息系统等。

PostgreSQL 官网:https://www.postgresql.org/


资料推荐

  • 💡大模型中转API推荐
  • ✨中转使用教程

2. 不同环境下的 Postgres 数据库安装

2.1 Windows 下 Postgres 安装

Windows/Mac 下支持使用可执行文件快速安装,安装后像普通软件一样启动 Postgres 即可。

下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads。

安装后可通过 pgAdmin 工具来连接 PostgreSQL 数据库。默认安装的 PostgreSQL 会开机自启,可以通过以下步骤关闭开机自启:

  1. 按下 win+r 打开运行对话框,输入 services.msc 并回车。
  2. 找到 postgres-x64-16,右击选择 属性,将启动方式修改为 手动。
  3. 可以右击选择 停止,关闭 postgres 服务。

Windows 下的启动与停止命令:

pg_ctl start -D "D:\Software\PostgreSQL\16\data"
pg_ctl stop -D "D:\Software\PostgreSQL\16\data"
  • -D 参数告诉 pg_ctl 命令应该使用哪个目录中的数据文件和配置文件。
  • 也可以写成 bat 批处理,快速实现启动+关闭。

启动 bat:

@echo off
set PG_PATH="D:\Software\PostgreSQL\16\bin"
set PG_DATA="D:\Software\PostgreSQL\16\data"echo Starting PostgreSQL...
%PG_PATH%\pg_ctl.exe start -D %PG_DATA%
echo PostgreSQL started.

停止 bat:

@echo off
set PG_PATH="D:\Software\PostgreSQL\16\bin"
set PG_DATA="D:\Software\PostgreSQL\16\data"echo Stoping PostgreSQL...
%PG_PATH%\pg_ctl.exe stop -D %PG_DATA%
echo PostgreSQL stoped.

2.2 Ubuntu 下 Postgres 安装

对于 Debian 的系统(如 Ubuntu),可以使用如下命令:

sudo apt update
sudo apt install postgresql postgresql-contrib

检测 PostgreSQL 是否启动:

sudo systemctl status postgresql

通过以下两个命令启动或者停止 PostgreSQL 服务:

sudo systemctl start postgresql
sudo systemctl stop postgresql

安装完成后,可以通过 postgresql 提供命令工具 psql 连接到 PostgreSQL 数据库,亦或者使用 pgAdmin 可视化界面进行连接:

psql -U postgres -h localhost -W

也可以通过切换到 postgres 用户直接运行 psql 命令:

sudo -i -u postgres
psql

在 psql 中修改 postgres 密码:

\password postgres

如果无法通过 psql -U postgres 进行登录,则大概率是 postgresql 仅开启了本地登录,可以通过编辑 pg_hba.conf 修改配置:

sudo vim /etc/postgresql/<版本号>/main/pg_hba.conf
# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

PostgreSQL 中常见的身份验证方法如下:

  1. peer:仅适用于本地连接。客户端必须作为相同的操作系统用户连接。例如,如果你以 postgres 用户登录操作系统,那么连接到数据库时也必须以 postgres 用户身份。
  2. md5:使用MD5哈希进行密码验证。客户端必须提供正确的密码,密码在传输过程中会被加密。
  3. password:以明文方式传输密码进行验证。不推荐使用,因为密码在网络上以明文形式传输,安全性较低。
  4. trust:不需要密码,直接允许连接。不推荐在生产环境中使用,因为安全性较低。

2.3 Docker 快捷安装 PostgreSQL

Docker 中安装 PostgreSQL 非常简单,官方配置了镜像支持一件安装。

首先,从 Docker Hub 上拉去 PostgreSQL 的官方镜像:

docker pull postgres

然后运行 PostgreSQL 容器:

docker run --name postgres-dev -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgres 

停止与开启 PostgreSQL 容器:

docker start postgres-dev
docker stop postgres-dev

Docker 删除镜像与删除容器命令:

docker rmi <镜像id或名称>
docker rm <容器id或名称>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

函数[x]和{x}在数论中的应用

函数[x]和{x}在数论中的应用 函数[x]和{x}的定义与基本性质&#xff08;定义1&#xff0c;命题1&#xff09;定义1例1命题1 函数[x]和{x}的应用&#xff08;定理1&#xff0c;推论1-推论3&#xff09;例2定理1注解5推论1例3例4推论2推论3命题2 函数[x]和{x}的定义与基本性质&am…

Python爬虫(32)Python爬虫高阶:动态页面处理与Scrapy+Selenium+BeautifulSoup分布式架构深度解析实战

目录 引言一、动态页面爬取的技术背景1.1 动态页面的核心特征1.2 传统爬虫的局限性 二、技术选型与架构设计2.1 核心组件分析2.2 架构设计思路1. 分层处理2. 数据流 三、代码实现与关键技术3.1 Selenium与Scrapy的中间件集成3.2 BeautifulSoup与Scrapy Item的整合3.3 分布式爬取…

FreeSWITCH rtcp-mux 测试

rtcp 跟 rtp 占用同一个端口&#xff0c;这就是 rtcp 复用 Fs 呼出是这样的&#xff1a; originate [rtcp_muxtrue][rtcp_audio_interval_msec5000]user/1001 &echo 需要同时指定 rtcp_audio_interval_msec&#xff0c;否则 rtcp_mux 不能生效 Fs 呼入不需要配置&#xf…

day019-特殊符号、正则表达式与三剑客

文章目录 1. 磁盘空间不足-排查流程2. 李导推荐书籍2.1 大话存储2.2 性能之巅 3. 特殊符号3.1 引号系列&#xff08;面试题&#xff09;3.2 重定向符号3.2.1 cat与重定向3.2.2 tr命令&#xff1a;替换字符3.2.3 xargs&#xff1a;参数转换3.2.4 标准全量追加重定向 4. 正则表达…

Vue3 watch 使用与注意事项

watch 的第一个参数可以是不同形式的“数据源”&#xff1a;它可以是一个 ref (包括计算属性)、一个响应式对象、一个 getter 函数、或多个数据源组成的数组&#xff1a; 1&#xff1a;reactive监听对象 <template><div><h1>情况二&#xff1a;watchEffect…

医学写作供应商管理全流程优化

1. 供应商筛选与评估 1.1 资质审核 1.1.1 行业认证核查 核查供应商的行业认证,如AMWA医学写作认证、EMWA会员资格、ISO 9001等,确保其专业资质。 1.1.2 团队背景评估 评估团队成员专业背景,包括医学/药学学位、临床试验经验、发表记录,保障专业能力。 1.1.3 国际规范熟悉…

固态硬盘颗粒类型、选型与应用场景深度解析

一、固态硬盘颗粒类型的技术演进与特性 固态硬盘&#xff08;SSD&#xff09;的性能核心在于存储单元结构的设计&#xff0c;这种设计直接决定了数据的存储密度、读写速度、耐久度及成本效益。当前主流的闪存颗粒类型呈现从单层到多层架构的梯度演进&#xff0c;其技术特征与应…

CAPL自动化-诊断Demo工程

文章目录 前言一、诊断控制面板二、诊断定义三、发送诊断通过类.方法的方式req.SetParameterdiagSetParameter四、SendRequestAndWaitForResponse前言 本文将介绍CANoe的诊断自动化测试,工程可以从CANoe的 Sample Configruration 界面打开,也可以参考下面的路径中打开(以实…

嵌入式预处理链接脚本lds和map文件

在嵌入式开发中&#xff0c;.lds.S 文件是一个 预处理后的链接脚本&#xff08;Linker Script&#xff09;&#xff0c;它结合了 C 预处理器&#xff08;Preprocessor&#xff09; 的功能和链接脚本的语法。它的核心作用仍然是 定义内存布局和链接规则&#xff0c;但通过预处理…

PT5F2307触摸A/D型8-Bit MCU

1. 产品概述 ● PT5F2307是一款51内核的触控A/D型8位MCU&#xff0c;内置16K*8bit FLASH、内部256*8bit SRAM、外部512*8bit SRAM、触控检测、12位高精度ADC、RTC、PWM等功能&#xff0c;抗干扰能力强&#xff0c;适用于滑条遥控器、智能门锁、消费类电子产品等电子应用领域。 …

RabbitMQ——消息确认

一、消息确认机制 生产者发送的消息&#xff0c;可能有以下两种情况&#xff1a; 1> 消息消费成功 2> 消息消费失败 为了保证消息可靠的到达消费者&#xff08;&#xff01;&#xff01;&#xff01;注意&#xff1a;消息确认机制和前面的工作模式中的publisher confi…

C++异步(1)

什么是异步? 异步就是多个线程是同时执行的&#xff0c;与之相对的就是线程同步&#xff0c;二者都应用在并发的场景上。 异步的特点 异步执行的任务无需等待其他任务完成&#xff0c;其本身是通过非阻塞的方式执行的&#xff0c;不依赖前驱任务&#xff0c;通常用于IO密集…

向量数据库Milvus03-高级功能与性能调优

Milvus高级功能与性能调优 目录 高级特性详解性能调优技巧生产环境部署最佳实践总结与展望 1. 高级特性详解 1.1 多索引兼容 Milvus 支持多种索引类型&#xff08;如 HNSW、IVF_PQ、IVF_FLAT&#xff09;的混合使用&#xff0c;以适应不同场景的需求。 HNSW&#xff08;Hier…

5月24日day35打卡

模型可视化与推理 知识点回顾&#xff1a; 三种不同的模型可视化方法&#xff1a;推荐torchinfo打印summary权重分布可视化进度条功能&#xff1a;手动和自动写法&#xff0c;让打印结果更加美观推理的写法&#xff1a;评估模式 作业&#xff1a;调整模型定义时的超参数&#x…

野火鲁班猫(arrch64架构debian)从零实现用MobileFaceNet算法进行实时人脸识别(三)用yolov5-face算法实现人脸检测

环境直接使用第一篇中安装好的环境即可 先clone yolov5-face项目 git clone https://github.com/deepcam-cn/yolov5-face.git 并下载预训练权重文件yolov5n-face.pt 网盘链接: https://pan.baidu.com/s/1xsYns6cyB84aPDgXB7sNDQ 提取码: lw9j &#xff08;野火官方提供&am…

R语言科研编程-柱状图

R语言简介 R语言是一种开源的统计计算和图形绘制编程语言&#xff0c;广泛应用于数据分析、机器学习、数据可视化等领域。它由Ross Ihaka和Robert Gentleman于1993年开发&#xff0c;具有丰富的统计函数库和图形功能&#xff0c;尤其适合数据科学研究和可视化任务。 使用R语言…

Android-Handler学习总结

​​面试官​&#xff1a;你好&#xff01;我看你简历里提到熟悉 Android 的 Handler 机制&#xff0c;能简单说一下它的作用吗&#xff1f; ​候选人​&#xff1a; Handler 是 Android 中用来做线程间通信的工具。比如Android 应用的 UI 线程&#xff08;也叫主线程…

【iOS】分类、扩展、关联对象

分类、扩展、关联对象 前言分类扩展扩展和分类的区别关联对象key的几种用法流程 总结 前言 最近的学习中笔者发现自己对于分类、扩展相关知识并不是很熟悉&#xff0c;刚好看源码类的加载过程中发现有类扩展与关联对象详解。本篇我们来探索一下这部分相关知识&#xff0c;首先…

30.第二阶段x64游戏实战-认识网络数据包发送流程

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;图灵Python学院 上一个内容&#xff1a;29.第二阶段x64游戏实战-技能冷却 发送数据包的方式&#xff08;函数&#xff09;操作系统提供…

【每日一题】【前缀和优化】【前/后缀最值】牛客练习赛139 B/C题 大卫的密码 (Hard Version) C++

牛客练习赛139 B题 大卫的密码 (Easy Version) 牛客练习赛139 C题 大卫的密码 (Hard Version) 大卫的密码 题目背景 牛客练习赛139 题目描述 给定一个 n m n\times m nm的网格图&#xff0c;我们使用 ( i , j ) (i,j) (i,j)表示网格中从上往下数第 i i i行和从左往右数第…