PostgreSQL安装手册

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介:

本文讲述Linux生产环境(RHEL5.5 Kernel2.6.32)下安装PostgreSQL9.5.2的过程。安装所有contrib扩展,安装Python扩展。

安装详细细节,或者其他需求请参考官方文档安装说明:
http://www.postgresql.org/docs/9.5/interactive/installation.html

处理依赖

PostgreSQL的依赖都比较常见,一般系统中均已自带:
GNU Make 3.8+,ISO/ANSI C compiler,tar, zlib, GNU Readline Lib 6。

  • GNU Readline Lib
    这里提一下GNU Readline Lib。这个主要是用于psql shell一些查看历史记录之类功能。
    因为生产环境的Readline版本可能较老,如果要手动安装,请参考GNU ReadLine document: https://cnswww.cns.cwru.edu/php/chet/readline/INSTALL
    如果安装的时候因为readline报错了,可以在configure的时候用—without-readline去掉。

  • Anaconda
    安装Python扩展需要Python解释器,libpython,和Python头文件。
    这里以使用Anaconda发行版安装Python:
    http://continuum.io/downloads下载对应的版本。
    执行bash Anaconda2-4.0.0-Linux-x86_64.sh
    依据提示选择安装路径。这里为/usr/local/anaconda,没有权限请sudo。
    等待安装完成,将anaconda目录下bin, inlucde, lib目录分别加入各自的搜索路径中。

     
      
    1. export PATH="/usr/local/anaconda/bin/:$PATH"
    2. export C_INCLUDE_PATH="/usr/local/anaconda/include/:$C_INCLUDE_PATH"
    3. export CPLUS_INCLUDE_PATH="/usr/local/anaconda/include/:$CPLUS_INCLUDE_PATH"
    4. export LD_LIBRARY_PATH="/usr/local/anaconda/lib/:$LD_LIBRARY_PATH"
    5. export LIBRARY_PATH="/usr/local/anaconda/lib/:$LIBRARY_PATH"

2. PostgreSQL的安装

 
  1. 编译安装主体
  2. tar -jxf postgresql-9.5.2.tar.bz2
  3. cd postgresql-9.5.2
  4. ./configure PYTHON=/usr/local/anaconda/bin/python --with-python
  5. make -j8
  6. sudo make install
  7. make install-docs
  8. # 编译安装标准扩展
  9. $ cd contrib
  10. $ make -j8
  11. $ sudo make install

3. 数据库的初始化与启动

 
  1. 创建一个用户,postgres主进程应当由一个独立的用户持有。
  2. $ adduser postgres
  3. 创建一个数据目录,并指定上面创建的用户所有
  4. $ mkdir /usr/local/pgsql/data
  5. $ chown postgres /usr/local/pgsql/data
  6. $ su - postgres
  7. # 初始化数据目录
  8. $ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
  9. $ 启动数据库
  10. /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
  11. # 另一种启动数据库的方式是使用pg_ctl,推荐这种方式:
  12. $ /usr/local/pgsql/bin/pg_ctl init -D /usr/local/pgsql/data -l /usr/local/pgsql/data/logfile
  13. # 最后通过pg_ctl启动数据库
  14. /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

4. 配置PostgreSQL

创建数据库、角色、授权

PostgreSQL安装完成后会自带一个postgres数据库,用户postgres可直接使用psql连接。
每个操作系统用户可以直接连接自己同名的数据库。psql [-U<username>] [database]

 
  1. $ psql
  2. # 创建数据库
  3. $ create database vonng;
  4. # 创建角色:
  5. $ CREATE USER vonng login Superuser password 'xxxxxxx';
  6. #授予权限:
  7. $ GRANT ALL PRIVILEGES ON DATABASE vonng to vonng;

允许从外部主机访问PostgreSQL

 
  1. # Pg默认只接受本机的连接。需要配置HBA允许外部链接,具体细节参见文档。
  2. # 这里假设我们希望在10.0.0.0-10.255.255.255的A类局域网段内允许任何用户连接任何数据库。
  3. # 打开数据文件夹中的pg_hba.conf文件.
  4. $ vi /usr/local/pgsql/data/pg_hba.conf
  5. # 在最下方添加一行
  6. host all all 10.0.0.0/8 trust
  7. # 打开数据文件夹中的postgresql.conf
  8. # 找到 #listen_addresses = 'localhost',修改为 listen_addresses="*"
  9. # 重启PostgreSQL:
  10. $ pg_ctl stop -D /usr/local/pgsql/data
  11. $ pg_ctl start -D /usr/local/pgsql/data -l logfile
  12. # 在另一台机器上测试 $ psql -h<Your Pgserver host> -U<Your Pgserver username>。

5. PostgreSQL的常用运维命令

 
  1. #备份一个数据库
  2. $ pg_dump [connection-option...] [option...] [dbname]
  3. #恢复一个数据库
  4. $ psql [connectino-option] < dumpfile.sql
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
6月前
|
关系型数据库 数据库 数据安全/隐私保护
PostgreSQL安装和使用教程
PostgreSQL安装和使用教程
289 0
|
7月前
|
SQL Kubernetes 关系型数据库
如何一键安装部署PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署PolarDB-X。
349 0
|
8月前
|
存储 关系型数据库 数据库
Windows安装Postgresql之解压版
Windows安装Postgresql之解压版
299 0
|
6月前
|
关系型数据库 Linux PostgreSQL
Linux centos8 docker中安装postgresql12.4及远程访问设置
Linux centos8 docker中安装postgresql12.4及远程访问设置
376 0
|
9月前
|
关系型数据库 数据安全/隐私保护 PostgreSQL
Windows环境下安装PostgreSQL
Windows环境下安装PostgreSQL
229 0
|
17天前
|
关系型数据库 PostgreSQL
postgresql安装
postgresql安装
36 8
|
1月前
|
SQL 关系型数据库 分布式数据库
PolarDB常见问题之安装postgis报错如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
1月前
|
关系型数据库 分布式数据库 PolarDB
PolarDB常见问题之安装gms时出现docker如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
2月前
|
关系型数据库 数据库 PostgreSQL
Docker安装postgreSql
Docker安装postgreSql步骤
|
2月前
|
关系型数据库 Linux Shell
Centos系统上安装PostgreSQL和常用PostgreSQL功能
Centos系统上安装PostgreSQL和常用PostgreSQL功能