Windows 10平台安装postgreSQL 14.2.1,安装步骤很简单,基本上是点击下一步(next)。

使用SQL Shell(psql)进行交互;使用pgAdmin工具进行管理。

tips:注意选择安装目录(请不要放到C盘,虚拟机搭建测试环境另说)。

postgreSQL安装详细教程

一 postgreSQL 安装步骤

01 下载postgreSQL

Windows版本(64位)postgreSQL 14.2.1下载地址:

https://www.enterprisedb.com/postgresql-tutorial-resources-training?uuid=db55e32d-e9f0-4d7c-9aef-b17d01210704&campaignId=7012J000001NhszQAC

官网https://www.postgresql.org

官方文档

https://www.postgresql.org/docs/

最新版本14的PDF下载地址:https://www.postgresql.org/files/documentation/pdf/14/postgresql-14-A4.pdf

02 Windows 10安装postgreSQL 14.2

2.1 安装步骤01

Setup —— PostgreSQL

进入PostgreSQL安装界面

2.2 安装步骤02

Installation Directory

注意:选择安装目录,推荐安装至D盘或者顺延。

2.3 安装步骤03

Select components

选择需要安装的服务

  1. PostgreSQL Server:数据库(DBMS)服务,必选项
  2. pgAdmin 4:客户端管理工具,建议勾选。
  3. Stack Builder:依据需求选择。
  4. Command Line Tools:命令行工具,交互必选项

2.4 安装步骤04

Data Directory

设置数据库实例化数据存放目录。类似于MySQ初始化生成data目录。

2.5 安装步骤05

Set Password

设置数据库超级用户(postgres)密码。

如果初始化失败,后续则不会生效。

2.6 安装步骤06

Port

设置默认监听端口(port):5432

2.7 安装步骤07

Advanced Options

建议选择数据库群组(database cluster),下拉有中文简体可选。

cluster有集群的意思,但在此处指的是组、群组、国别地区(安装支持的语言)。

注意:这一步初始化后生成的data目录是空的,可能是权限问题(会有警告提示,导致初始化失败,虽然最终安装完成)。

2.8 安装步骤08

Pre Installation Summary

打印出安装配置信息,其它数据库厂商(DBMS)提供的可视化界面安装一样会有信息显示,例如Oracle数据库。

2.9 安装步骤09

Ready to Install

到了这一步,真正开始执行安装过程。

关于遇到的警告问题,会在遇到问题解决方案进行展示说明,并给出个人解决方案。

03 postgreSQL 安装目录说明

3.1 postgreSQL 安装目录重点说明

  1. bin:bin目录一般存放与数据库服务进行交互的命令脚本。
  2. data:data目录是初始化完成后生成的数据库文件,包含配置文件postgresql.conf。
  3. pgAdmin 4 :存放pgAdmin 4客户端管理工具文件。
  4. uninstall-postgresql.dat与uninstall-postgresql.exe:提供便捷式卸载。

3.2 data目录

  1. 主要注意postgresql.conf配置文件,比如配置监听端口(port)和主机(IP)地址。

3.3 配置文件设置

  1. listen_addresses:设置监听主机地址,重启服务生效。
  2. port:设置监听服务默认端口,重启服务生效。

二 postgreSQL 遇到问题解决方案

01 遇到问题处理方法

  1. 定位问题:遇到问题别慌,也别急着去使用搜索引擎,先将问题定位好。
  2. 文档:参考官方文档
  3. 善于使用搜索引擎和StackOverflow以及github的Issues
  4. 使用浏览器过滤方式:-xx网址或者-site:xx网址。

例如,个人安装遇到问题(Warning)警告:

Problem running post-install step. Installation may not complete correctly

The database cluster installation failed

我第一时间联想到的是初始化出问题了,去检查data目录,果不其然是空的。

如果你有一些英语底子(说实话,个人基本是靠平时积累的词汇量和有道),一些命令基本上可以猜个八九不离十。

以前我的同事问我,你是猜的?结果发现还挺准的。后面还有一句话没说出来而已,其实是有一定依据才去试一试的。

02 实际解决方案

个人根据以前使用MySQL(其它数据库)的经验进行判断,结合官方文档进行思考的临时解决方案。

出现警告后,使用以下方式解决无法启动postgreSQL:

  1. 检查data目录是空的(初始化失败了)。

  2. 使用cmd(管理员身份)执行initdb命令初始化。

D:\software\PostgreSQL\14\bin>initdb "D:\software\PostgreSQL\14\data"
  1. 继续在cmd(管理员身份)窗口执行创建用户。
D:\software\PostgreSQL\14\bin>createuser postgres
  1. 普通用户身份启动postgreSQL。

​ 如果没有配置环境变量,注意在PostgreSQL\14\bin目录下执行postgres命令。使用这种方式启动服务,使用Ctrl + c快捷键即可退出服务

D:\software\PostgreSQL\14\bin>postgres --config-file="D:\\software\\PostgreSQL\\14\\data\\postgresql.conf" -D "D:\\software\\PostgreSQL\\14\\data"
  1. 或者使用pg_ctl start命令启动服务(postgreSQL加入path环境变量)。
D:\>pg_ctl start -D "D:\software\PostgreSQL\14\data"
  1. 使用pg_ctl stop命令关闭服务。
D:\>pg_ctl stop -D "D:\software\PostgreSQL\14\data"

如下是使用pg_ctl命令启动服务,然后使用netstat命令去验证服务是否启动。

安装后第二天查阅StackOverflow:其实解决方案相差不大,和我思考分方向是一致的,可以参考。

https://stackoverflow.com/questions/32453451/postgres-installation-the-database-cluster-initialization-failed-postgresql-ve

三 使用SQL Shell(psql)进行交互

01 使用select语句验证

进入SQL Shell(psql)交互界面,直接回车即可进入(前提是服务启动成功

如同在MySQL中,使用select 1直接返回结果,这种方式是不走表的,通过explain分析就可看出。

select 1;

02 使用explain进行测试

使用explain测试select 1:

explain select 1;

四 使用pgAdmin进行管理

01 配置服务名称

注意:Name是必填项。

02 配置连接

  1. HOST name、address:配置主机名或者IP地址。
  2. Port:配置连接监听端口(启动服务时,在配置文件设置的端口)。
  3. Usernam:用户名。
  4. Password:用户密码。

03 初次进入pgAdmin需要配置密码

04 配置完后的界面

progres和test是自己使用命令创建的:

createuser progres
createuser test

莫问收获,但问耕耘

以上是本文全部内容,希望能对你的工作与学习有所帮助。善于总结,其乐不穷。好记性不如烂笔头,多收集自己第一次尝试的成果,收获也颇丰。你会发现,自己的知识宝库越来越丰富。原创不易,转载也请标明出处和作者,尊重原创。不定期上传到github仓库SQL-study。

Windows 10平台安装PostgreSQL 14.2详细教程的更多相关文章

  1. 【转】Windows 7下硬盘安装Ubuntu 14.04图文教程--不错

    原文网址:http://www.linuxidc.com/Linux/2014-04/100369p3.htm Ubuntu 官方已经发布了正式版的 Ubuntu 14.04 LTS,并宣称这是为云计 ...

  2. Ubuntu 14.04/14.10下安装VMware Workstation 11图文教程

    VMware workstation 是一个可以进行桌面操作的虚拟软件.它可以让我们在一台电脑或者虚拟机中运行多个虚拟机. 由VMware公司研发和维护.由于是商业软件,我们需要买他们家的许可证或者说 ...

  3. [转] Ubuntu 14.04/14.10下安装VMware Workstation 11图文教程

    点击这里查看原文 译者:GuiltyMan 本文由 Linux公社翻译组 原创翻译  Linux公社 诚意奉献 更多请访问此处博客网站 VMware workstation 是一个可以进行桌面操作的虚 ...

  4. 如何在 Windows 10 上安装 WSL 2

    翻译自 Joey Sneddon 2020年10月30日的文章<How to Install WSL 2 on Windows 10> [1] 如果您想在最新的 Windows 版本中尝试 ...

  5. 在Windows 10上安装Oracle 11g数据库出现的问题及解决

    在Windows 10上安装Oracle 11g数据库,并且很多次出现过:当安装的进度条进行到快要结束的时候弹出一个提示框.如下: [Java(TM)2 Platform Standard Editi ...

  6. Windows 10环境安装VIM代码补全插件YouCompleteMe

    Windows 10环境安装VIM代码补全插件YouCompleteMe 折腾一周也没搞定Windows下安装VIM代码补全插件YouCompleteMe,今天在家折腾一天总算搞定了.关键问题是在于P ...

  7. 分布式进阶(一)Windows 7下硬盘安装Ubuntu 14.04图文教程

    Windows 7下硬盘安装Ubuntu 14.04图文教程 本人下载的是ubuntu-14.04.2-desktop-amd64.iso,经本人亲自测试的,折腾了一天的时间. 1)首先还是分区,在计 ...

  8. Windows 10 上安装 3D Studio Max 2016 报错的解决办法

    在 Windows 10 上安装 3D Stuido Max 2016 报错,无法正常安装,查看日志是 VC 运行时安装错误,经过分析发现在 Windows 10 上已经有这些运行时并且版本比安装包中 ...

  9. 【Flutter 1-2】在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境

    在 Windows 10下安装Flutter+Dart+Android Studio 配置Flutter开发环境 文章首发地址 配置环境变量 由于部分网站被墙的原因,我们需要先配置Flutter国内镜 ...

随机推荐

  1. Redis分布式锁实现原理

    关于Redis分布式锁网上有很多优秀的博文,这篇文章仅作为我这段时间遇到的新问题的记录. 1.什么是分布式锁: 在单机部署的情况下,为了保证数据的一致性,不出现脏数据等,就需要使用synchroniz ...

  2. Nginx中的 location 匹配和 rewrite 重写跳转

    Nginx中的location匹配和rewrite重写跳转 1.常用的Nginx正则表达式 2.location 3.rewrite 4.rewrite实例 1.常用的Nginx正则表达式: ^ :匹 ...

  3. DAG(有向无环图)技术

    什么是DAG? DAG的全称为"Directed Acyclic Graph",中文意思为:有向无环图,它由有限个顶点和"有向边"组成,从任意顶点出发,经过若干 ...

  4. uos系统安装tree

    apt install tree 提示无法安装软件包 执行apt update 然后执行apt install tree

  5. 5、Linux基础--etc(文件系统)、启动模式、单用户模式修改密码、安装目录、日志目录、状态目录

    笔记 1.晨考 1.存放系统配置文件的目录 /etc 2.存储系统实时运行状态的目录 /proc 3.存储系统硬件接口的目录 /dev 4.查看系统挂载情况的命令 df -h 5.系统网卡文件路径 / ...

  6. fork_join

    在systemverilog中可以用fork-- join.fork --join_any.fork--join_none来实现多个线程的并发执行. 1.父线程.子线程 调用fork--join的线程 ...

  7. BigDecimalAvoidDoubleConstructorRule:不要直接用double变量作为构造BigDecimal的参数

    先上结论: 不要直接用double变量作为构造BigDecimal的参数. 线上有这么一段Java代码逻辑: 1,接口传来一个JSON串,里面有个数字:57.3. 2,解析JSON并把这个数字保存在一 ...

  8. Redis入门与实践(附项目真实案例代码)

    我是3y,一年CRUD经验用十年的markdown程序员‍常年被誉为优质八股文选手 今天继续更新austin项目,如果还没看过该系列的同学可以点开我的历史文章回顾下,在看的过程中不要忘记了点赞哟!建议 ...

  9. webshell安全教程防止服务器被破解

    直接上传取得webshell 因过滤上传文件不严,导致用户能够直接上传webshell到网站恣意可写目录中,然后拿到网站的办理员操控权限. 2 增加修正上传类型 现在很多脚本程序上传模块不是只允许上传 ...

  10. 利用信号量semaphore实现两个进程读写同步 Linux C

    这篇帖子主要是记录一下自己使用信号量遇到的坑. 首先是需求:创建两个进程A,B.A往buffer中写,B读.两个进程利用命名管道进行通信,并实现读写同步.即A写完后通知B读,B读完后通知A写. 如果A ...