PostgreSQL介绍及其安装

#PG简介

     PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统。它是一种特性非常齐全的自由软件的对象-关系型数据库管理系统,是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。

     PostgreSQL支持大部分SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。同样,PostgreSQL也可以用许多方法扩展,例如通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言等。另外,因为许可证的灵活,任何人都可以以任何目的免费使用、修改和分发PostgreSQL。

 

      目前国内的许多数据库都是基于PG进行研发的,例如华为开源的openGuass、腾讯的TDSQL等国产数据库都是基于PG开发的。

PG支持的操作系统有WINDOWSLinux、unix、MAC OS、BSD等。

大家可以通过以下网址对PG数据库进行下载及了解:

中文社区http://www.postgres.cn


 

英文社区PostgreSQL: The world's most advanced open source database

 

 

#windows安装

在下面网址中进行wondows版本的下载:

Download PostgreSQLPostgreSQL Database Downloadhttps://www.enterprisedb.com/downloads/postgres-postgresql-downloads

如上图,大家可以根据自己需要的版本进行选择下载。我安装的是14.5版本。 

windows版本的安装比较简单,直接“next”即可。但是需要注意的是,其间需要修改一下安装路径

和用户密码。相信大家对于windows的安装流程已经非常熟悉,这里就不再做演示。

#LINUX安装(centos 7)

在linux系统安装方式有两种,一种是yum安装,一种是源码安装,我选择的是源码安装方式,也比较推荐大家采用源码安装方式进行安装。我是在centos7 系统进行安装的。

下载方式及其地址:

 和上面windows的下载地址一样,我选的是linux x86-64版本,相信大家的设备大多数也都是此架构,如有不同,可以选择32位版本。点击其中一个PG版本。

点击页面中的“Source”

这里我选择的是v14.0版本,大家可以自由选择相应的PG版本。

然后选择不同压缩方式的源码压缩包进行下载,也是根据自己的环境和使用习惯进行选择。

我选的如下图方框的版本。点击即可下载。

 

 1.安装系统依赖

# 开发包,主要是需要gcc和gcc-c++编译器
yum groupinstall "Development tools"
# 语法分析器
yum install –y bison
# 词法分析器
yum install –y flex
# psql客户端的命令历史
yum install –y readline-devel
# pg_dump/pg_restore的压缩功能支持
yum install –y zlib-devel



#执行上面5条语句,或者直接执行下面一条语句,结果等同,都是安装系统依赖
yum install -y readline-devel gcc gcc-c++ bison flex zlib-devel

2.创建用户及其目录

# 创建postgres用户
useradd -rmU postgres
# 修改postgres用户密码
passwd postgres
# 切换到postgres用户目录
su - postgres

 切换到postgres用户以后,下面的操作全在postgres用户下操作,目的避免出现权限不足的情况。

创建相关目录:

# 创建安装目录
mkdir -p pgdb/pgsoft
# 创建数据库存放目录
mkdir -p pgdb/pgdata
# 创建归档存放目录
mkdir -p pgdb/pgarch
# 创建单独的wal日志存放目录
mkdir -p pgdb/pgwal

# 使用上面的4条创建语句一个一个创建或者用下面的语句一次性创建
mkdir -p pgdb/{pgsoft,pgdata,pgarch,pgwal}

# 如果是root用户创建的目录,则需要将目录权限授权给postgres用户
chown -R postgres:postgres /home/postgres/pgdb
chmod 700 /home/postgres/pgdb

3.解压、编译、安装三部曲

我们刚才已经将pg14的源码压缩包下载好了,利用xftp或者其他工具上传到centos7中。

# 解压源码包
tar -xzvf postgresql-14.0.tar.gz
# 进入解压的源码包
cd postgresql-14.0
# prefix拟指定安装路径/home/postgres/pgdb/pgsoft
./configure --prefix=/home/postgres/pgdb/pgsoft


# 查看相关初始化参数配置
./configure --help
./configure (--prefix=/xxoo 指定数据库软件安装目录)(--with-blocksize=?kb 指定数据文件块大小,默认8k)(--with-segsize=?GB 指定单个文件大小,默认1GB) (--with-wal-segsize=?MB 指定wal日志大小,默认16MB)(--with-perl,--with-python 存储过程支持所需)(--with-openssl ssl连接安全)


# 编译
make world
# 安装
make install

4.初始化数据库簇

这里的database cluster不是指数据库集群,而是数据库簇,即数据库。PG在磁盘上的一整套文件集合叫做database cluster。

# 此处使用绝对路径,也可用相对路径来操作。
# -D:database cluster的主目录
# -U:指定超级用户
# -W:指定用户密码
# -E:指定数据库字符编码
# --waldir:指定wal日志路径
/home/postgres/pgdb/pgsoft/bin/initdb -D /home/postgres/pgdb/pgdata -U postgres -E utf8 --waldir=/home/postgres/pgdb/pgwal



# 最简化的方式初始化数据库(只指定数据库簇的目录)
/home/postgres/pgdb/pgsoft/bin/initdb -D /home/postgres/pgdb/pgdata

5. 启动数据库

启动数据库的方式有两种:

一种是进入数据库目录,也就是绝对路径启动的方式。

另一种是配置环境变量,直接启动。

下面是两种启动方式的操作:

# 绝对路径启动
/home/postgres/pgdb/pgsoft/bin/pg_ctl -D /home/postgres/pgdb/pgdata -l logfile start


# 配置好环境变量后的启动方式
pg_ctl start

关于配置环境变量:

# 查看配置文件
ls -al ~/


# 编辑 .bash_profile 配置文件,输入:
vi ~/.bash_profile
export PGBASE=/home/postgres/pgdb
export PGHOME=$PGBASE/pgsoft
export PGDATA=$PGBASE/pgdata
export LD_LIBRARY_PATH=$PGHOME/lib
export PGDATABASE=postgres
export PGPORT=5432
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin
export PATH


# 环境变量生效
source ~/.bash_profile

6.修改数据库超级用户密码

# 连接数据库
psql

# 修改数据库超级用户密码
alter user postgres password '@Dameng520';

# 退出连接
\q

更多数据库技术问题,请登录达梦在线服务平台进行交流:

达梦在线服务平台icon-default.png?t=M85Bhttp://eco.dameng.com

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值