入门postgre sql(PG的下载和安装,包括普通用户源码构建的安装方式)

news2024/11/23 21:13:28

目录

    • PG的下载安装
      • 1、Windows 上安装
      • 2、Linux上安装
        • 有root权限的安装
        • 无root权限的安装


PG的下载安装

点击这里,了解pg

1、Windows 上安装

(1)下载安装

访问官网下载地址

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

image.png

下载最新发布的PostgreSQL 14。

双击下载安装包,开始安装

image.png

image.png

你可以修改安装路径

image.png

选择安装组件,不懂的选就是全部勾上:

image.png

设置数据库路径

image.png

设置超级用户的密码

image.png

设置端口号,可以直接用默认就行

image.png

直接点 Next

image.png

点 Next

image.png

去掉勾选,直接点 Finish

image.png

打开 pgAdmin 4

image.png

pgAdmin 主页如下

image.png

点击左侧的 Servers > Postgre SQL 10

image.png

输入密码,点击 OK 即可

image.png

控制面板如下

image.png

打开 SQL Shell(psql)

image.png

(2)远程访问

\1. 打开postgresql安装目录的data子目录

image.png

\2. 修改pg_hba.conf文件:在IPV4部分添加新的一行:host all all 0.0.0.0/0 md5

image.png

\3. 控制面板–>系统与安全–>Windows防火墙,关闭防火墙。

4.重启服务

image.png

2、Linux上安装

有root权限的安装

(1)下载安装

访问官网下载地址

https://www.postgresql.org/download/

image.png

选择相应的版本和平台;

image.png

导入yum源

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

安装PostgreSQL服务

sudo yum install -y postgresql14-server

初始化数据库

sudo /usr/pgsql-14/bin/postgresql-14-setup initdb

启动PostgreSQL服务

#设置PostgreSQL服务为开机启动
sudo systemctl enable postgresql-14
#启动PostgreSQL服务
sudo systemctl start postgresql-14

(2)修改postgres账号密码

PostgreSQL安装成功之后,会默认创建一个名为postgres的Linux用户,初始化数据库后,会有名为postgres的数据库,来存储数据库的基础信息,例如用户信息等等,相当于MySQL中默认的名为mysql数据库。

postgres数据库中会初始化一名超级用户postgres

为了方便我们使用postgres账号进行管理,我们可以修改该账号的密码

进入PostgreSQL命令行

通过su命令切换linux用户为postgres会自动进入命令行

su - postgres

启动SQL Shell

psql

修改密码

ALTER USER postgres WITH PASSWORD 'NewPassword';

(3)配置远程访问

开放端口

sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload

修改IP绑定

#修改配置文件
vi /var/lib/pgsql/14/data/postgresql.conf

#将监听地址修改为*
#默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
listen_addresses='*'

允许所有IP访问

#修改配置文件
vi /var/lib/pgsql/14/data/pg_hba.conf

#在问价尾部加入
host  all  all 0.0.0.0/0 md5

重启PostgreSQL服务

#重启PostgreSQL服务
sudo systemctl restart postgresql-14

无root权限的安装

基于源码构建

  1. 准备条件

GUN make 3.80及以上版本(不可使用其他make或旧的GUN make)。查看GUN make版本:make --version

  1. 下载源码

https://www.postgresql.org/download/

  1. 解压文件
tar -xzvf postgresql-13.4.tar.gz -C /app/install
  1. ./configure

    如果只进行默认配置,可直接在源码解压路径下(postgresql-13.4)运行命令:./configure
    默认配置会安装仅使用C编译器的服务端和其他程序、客户端接口等。
    默认会安装到/usr/local/pgsql路径下。#数据库软件安装路径
    如果需要重新进行configure,则建议首先执行以下: make distclean #该命令重置源码树至初始状态

–prefix=PREFIX
将所有文件放置到PREFIX指定的路径下(而非默认的/usr/local/pgsql)。

–enable-nls[=LANGUAGES]
启用本地语言支持(NLS)。若不指定LANGUAGE,则会安装所有可用的语言。
需要Gettext API。

–with-perl
创建PL/Perl服务端语言。

–with-python
创建PL/Python服务端语言。

–with-openssl
支持SSL(加密)连接。需要安装OpenSSL。

–with-pgport=NUMBER
为客户端及服务端设置默认端口号。默认为5432。
也可以在此阶段设置块大小、WAL块大小及段大小。

在这里我指定了我的安装路径

 ./configure -prefix=~/pgsql
  1. build构建

    开始build

    make
    如果想同时安装文档以及其他的模块,则使用make world

    安装PostgreSQL

    make install
    将相关数据库文件安装到./configure中指定的路径下,默认为/usr/local/pgsql。
    该安装会同时安装客户端和服务端相关程序。
    如果想同时安装文档以及其他的模块,则使用make install-world

补充(可不看)

仅安装客户端程序及接口库

make -C src/bin install
make -C src/include install
make -C src/interfaces install
make -C doc install

卸载PostgreSQL

make uninstall
如果需要重新进行configure,则建议首先执行以下: make distclean #该命令重置源码树至初始状态
  1. 环境配置

修改IP绑定

#修改配置文件
vi ~/pgsql/14/data/postgresql.conf

#将监听地址修改为*
#默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
listen_addresses='*'

允许所有IP访问

#修改配置文件
vi ~/pgsql/14/data/pg_hba.conf

#在问价尾部加入
host  all  all 0.0.0.0/0 md5
vi /etc/profile
### 增加配置
LD_LIBRARY_PATH=/home/acm/pgsql/lib  
export LD_LIBRARY_PATH  
PATH=/home/acm/bin:$PATH  
export PATH  

source /etc/profile  
  1. 初始化数据库
initdb -E UTF8 -D /home/acm/pgsql/data 
  1. 启动数据库
###启动数据库
pg_ctl start -D ~/pgsql/postgresql-11/data -l /pgsql/postgresql-11/data/logfile

###关闭数据库
pg_ctl stop -D /usr/local/pgsql/data -m f

###查询状态
pg_ctl -D /usr/local/pgsql/data status

关闭数据库服务有三种模式:

SIGTERM,smart shutdown:阻止新连接,保持现有连接,仅当所有会话退出后才会关闭;SIGINT,fast shutdown:阻止新连接,中断事务,断掉会话;SIGQUIT,immediate shutdown:断电;

可使用命令pg_ctl stop -m smart|fast|immediate关闭数据库服务。

  1. 进入客户端
cd /home/acm/pgsql/bin
./psql -d postgres

#进入客户端后可以更改密码
\password

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

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

相关文章

3.kafka-3.生产者,消费者

文章目录1.个性化配置,增加吞吐量2.发送事务消息3.消费组手动提交offset指定offset位置进行消费指定时间消费当新增消费者,或者消费组时,如何消费漏消息和重复消息如何解决消费解压问题1.个性化配置,增加吞吐量 private static vo…

使用 .NET 7、Blazor 和 .NET MAUI 构建你自己的 Podcast App

.NET Podcast App 首次在 .NET Conf 2021上推出,最近进行了更新以在 .NET Conf 2022 keynote 中突出显示 .NET 7 中的新功能。该 Podcast App 已准备好使用展示 .NET,ASP.NET Core,Blazor,.NET MAUI,Azure Container A…

Android 蓝牙开发——概述(一)

一、蓝牙简介 蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。 其中将1.x~3.0之间的版本称之为经典蓝牙,4.x开始的蓝牙称之为低功耗蓝牙&…

Memcache学习总结

这里写自定义目录标题介绍一致性哈希寻找节点一致性哈希介绍内存管理slab结构寻找存储chunkChunk中存储的Item数据结构grow factor 调优回收删除一些特性介绍 基于内置内存Key-Value形式存储数据(字符串、对象)集群服务器是通过数组链表方式存储K-V数据<分布式>基于哈希…

编程语言那么多,我为什么推荐你学Java?

Java一直都是稳居排行榜第一的语言&#xff0c;在未来10年Java都会是最热门的语言之一&#xff0c;因为Java技术具有卓越的通用性、高效性、安全性和平台移植性&#xff0c;它可以跨平台的应用到不同的领域&#xff0c;工作需求足够大。 为什么选择学习Java编程语言&#xff1…

更具科技感的中塔机箱,模块设计兼容性强,鑫谷昆仑御风机箱上手

大家装机的时候应该都接触过鑫谷的机箱和散热器外设&#xff0c;作为一家有年头的外设品牌&#xff0c;这两年鑫谷推陈出新&#xff0c;像是在电源方面&#xff0c;就有不少很受欢迎的产品&#xff0c;像是昆仑系列等&#xff0c;前端鑫谷在昆仑系列中带来了一款设计新颖的机箱…

琥珀酰亚胺-双硫键-琥珀酰亚胺NHS-SS-NHS双端活性酯二硫键交联剂

名称:NHS-SS-NHS 中文名称:活性酯-双硫键-活性酯 琥珀酰亚胺-双硫键-琥珀酰亚胺 分子式 :C14H16N2O10S2 分子量 :436.41 存储条件&#xff1a;-20C&#xff0c;避光&#xff0c;避湿 用 途&#xff1a;仅供科研实验使用&#xff0c;不用于诊治 外观: 固体或粘性液体&am…

VMwareWorkstationPro16的下载与安装,以及vm账号注册的问题

VMwareWorkstationPro16的下载与安装&#xff0c;以及vm账号注册的问题查看虚拟化支持是否开启vm的安装vm账号注册的常见问题VM 16的安装步骤查看虚拟化支持是否开启 可以从任务管理器中的性能去查看CPU是否开启虚拟化支持 vm的安装 访问 vm 的官网: https://www.vmware.co…

I2C_Adapter驱动框架讲解与编写

I2C_Adapter驱动框架讲解与编写 文章目录I2C_Adapter驱动框架讲解与编写参考资料&#xff1a;一、 回顾1.1 2C驱动程序的层次1.2 I2C总线-设备-驱动模型二、 I2C_Adapter驱动框架2.1 核心的结构体1. i2c_adapter2. i2c_algorithm2.2 驱动程序框架1. 所涉及的函数2. i2c_algorit…

lq-递归

1、递归实现指数型枚举从 1∼n 这 n个整数中随机选取任意多个&#xff0c;输出所有可能的选择方案。输入格式输入一个整数 n。输出格式每行输出一种方案。同一行内的数必须升序排列&#xff0c;相邻两个数用恰好 1个空格隔开。对于没有选任何数的方案&#xff0c;输出空行。本题…

AStar(A*)算法核心思想( for unity)

AStar算法算法思想举例理解核心代码A* 算法&#xff0c;A* (A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法&#xff0c;也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近&#xff0c;最终搜索速度越快。 注意:AStar的类应该作为一种单例类只…

软考初级哪个好考

其实软考初级的实用性差不多。只是看自身怎么看&#xff0c;考哪一科对你来说&#xff0c;产生的意义更大&#xff0c;对自己以后的发展前景帮助大&#xff0c;那你就选择哪一科就行。 软考初级科目有&#xff1a;程序员、网络管理员、信息处理技术员、信息系统运行管理员、网…

C语言之vs2022安装教程,还不会的快来看

下载安装包官方无毒下载链接:https://visualstudio.microsoft.com/zh-hans/vs/点击链接或者复制到浏览器出现如下按钮点击下载社区版本Visual Studio 2022Community 2022: 社区版&#xff0c;也可以理解为个人版。适用于学生、开源和个人。一些新手用来学习是个不错的选择Profe…

第十三届蓝桥杯省赛 C++ B组 - 修剪灌木

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 &#x1f4da;专栏地址&#xff1a;蓝桥杯题解集合 &#x1f4dd;原题地址&#xff1a;付账问题 &#x1f4e3;专栏定位&#xff1a;为想参加蓝桥别的小伙伴整理常考算法题解&#xff0c;祝大家…

sentinel部署配置

sentinel部署配置sentinel 部署&#xff08;V1.8.6&#xff09;获取 Sentinel 控制台启动修改用户名密码控制台登录客户端集成sentinel 部署&#xff08;V1.8.6&#xff09; 获取 Sentinel 控制台 您可以从 release 页面 下载最新版本的控制台 jar 包。 官网&#xff1a; ht…

【C语言】深度剖析数据在内存中的存储---(附源码 | 建议收藏)

&#x1f680;write in front&#x1f680; &#x1f4dd;个人主页&#xff1a;认真写博客的夏目浅石. &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd; &#x1f4e3;系列专栏&#xff1a;凡人修C传 &#x1f4ac;总结&#xff1a;希望你看完之后&…

让Tomcat服务器运行在Windows后台

让tomcat运行在Windows后台一、设置环境变量二、安装tomcat服务三、设置后台自动运行本机环境&#xff1a;win10一、设置环境变量 进入tomcat主目录的bin文件夹&#xff0c;复制路径 快捷键winr键唤出运行框&#xff0c;输入sysdm.cpl然后点击“确定”进入系统属性面板 在系统…

传统工科应该怎么学习机器学习or深度学习?

还是老生常谈。建议先不要直接上手机器学习/深度学习&#xff0c;先把你研究对象/信号的机理给搞清楚&#xff0c;然后再开始上现代信号处理&#xff0c;机器学习/深度学习算法&#xff0c;只有对你研究对象的机理深入了解&#xff0c;才能更好地对信号处理算法&#xff0c;机器…

【职工管理系统】C++全栈体系(十三)

职工管理系统 第一章 管理系统需求 职工管理系统可以用来管理公司内所有员工的信息 公司中职工分为三类&#xff1a;普通员工、经理、老板&#xff0c;显示信息时&#xff0c;需要显示职工编号、职工姓名、职工岗位、以及职责 普通员工职责&#xff1a;完成经理交给的任务 …

运算符重载及组合与继承

目录 一、运算符重载 1.1普通运算符重载 1.2特殊运算符重载 二、标准输入输出流 三、组合与继承 3.1组合 3.2继承 1) public继承方式 2) protected继承方式 3) private继承方式 小作业&#xff1a;模仿c的string类&#xff0c;自己实现string类 一、运算符重载 百度…