如何搭建一套学习、开发PostgreSQL的环境

打印 上一主题 下一主题

主题 971|帖子 971|积分 2915

背景

万事开头难,搭建好一套学习、开发PostgreSQL的环境,是重中之重。
因为其他平台(Ubuntu, CentOS, MAC)的用户大多数都具备了自行安装数据库的能力,在这里我只写一个面向Windows用户的学习环境搭建文档。
分为三个部分,用户可以自由选择。
如果你想深入的学习PostgreSQL,建议搭建PostgreSQL on Linux的环境。如果你只是想将数据库使用在日常的应用开发工作中,有也不需要PG的其他附加插件的功能,那么你可以选择PostgreSQL on Win的环境搭建。
如果你不想搭建本地的PostgreSQL,那么你可以使用云数据库服务,比如阿里云RDS for PostgreSQL。
本章大纲

一、PostgreSQL on Win环境搭建

1 环境要求

2 下载PostgreSQL安装包

3 解压PostgreSQL安装包

4 下载pgadmin安装包(可选)

5 安装pgadmin(可选)

6 规划数据文件目录

7 初始化数据库集群

8 配置postgresql.conf

9 配置pg_hba.conf(可选)

10 启动、停止数据库集群

11 如何自动启动数据库集群

12 使用psql 命令行连接数据库

13 新增用户

14 使用psql帮助

15 使用psql语法补齐

16 使用psql sql语法帮助

17 查看当前配置

18 设置会话参数

19 在psql中切换到另一个用户或数据库

20 使用pgadmin4连接数据库

21 文档

二、PostgreSQL on Linux(虚拟机)环境搭建

1 环境要求

2 下载Linux镜像

3 安装VMware Workstation(试用版本)

4 安装securecrt(试用版本)

5 安装Linux虚拟机

6 配置Linux虚拟机网络

7 securecrt终端连接Linux

8 配置linux

9 配置yum仓库(可选)

10 创建普通用户

11 规划数据库存储目录

12 下载PostgreSQL源码

13 安装PostgreSQL

14 配置linux用户环境变量

15 初始化数据库集群

16 配置数据库

17 启动数据库集群

18 连接数据库

19 安装pgadmin(可选)

20 配置pgadmin(可选)

21 使用pgadmin连接数据库(可选)

三、云数据库RDS for PostgreSQL

1 购买云数据库

2 设置并记住RDS for PostgreSQL数据库根用户名和密码

3 配置网络

4 配置白名单

5 本地安装pgadmin(可选)

6 本地配置pgadmin(可选)

7 使用pgadmin连接RDS PostgreSQL数据库(可选)

一、PostgreSQL on Win环境搭建

1 环境要求

Win 7 x64, 8GB以上内存, 4核以上, SSD硬盘(推荐),100GB以上剩余空间, 可以访问公网(10MB/s以上网络带宽)
2 下载PostgreSQL安装包

https://www.postgresql.org/download/windows/
建议下载高级安装包,不需要安装,直接使用。
下载win x64的版本(建议下载最新版本)
http://www.enterprisedb.com/products/pgbindownload.do
例如
https://get.enterprisedb.com/postgresql/postgresql-9.6.2-3-windows-x64-binaries.zip
3 解压PostgreSQL安装包

postgresql-9.6.2-3-windows-x64-binaries.zip
例如解压到d:\pgsql

 
 
 
bin: 二进制文件
doc: 文档
include: 头文件
lib: 动态库
pgAdmin 4: 图形化管理工具
share: 扩展库
StackBuilder: 打包库
symbols: 符号表
4 下载pgadmin安装包(可选)

如果PostgreSQL包中没有包含pgAdmin,建议自行下载一个
建议下载pgadmin4(pgadmin3不再维护)
https://www.pgadmin.org/index.php
https://www.postgresql.org/ftp/pgadmin3/pgadmin4/v1.3/windows/
5 安装pgadmin(可选)

6 规划数据文件目录

例如将D盘的pgdata作为数据库目录。
新建d:\pgdata空目录。
7 初始化数据库集群

以管理员身份打开cmd.exe
  1. >d:  
  2.   
  3. >cd pgsql  
  4.   
  5. >cd bin  
  6.   
  7. >initdb.exe -D d:\pgdata -E UTF8 --locale=C -U postgres  
  8.   
  9. 初始化时,指定数据库文件目录,字符集,本地化,数据库超级用户名  
复制代码

 
 
 
8 配置postgresql.conf

数据库配置文件名字postgresql.conf,这个文件在数据文件目录D:\pgdata中。
将以下内容追加到postgresql.conf文件末尾
  1. listen_addresses = '0.0.0.0'  
  2. port = 1921  
  3. max_connections = 200  
  4. tcp_keepalives_idle = 60  
  5. tcp_keepalives_interval = 10  
  6. tcp_keepalives_count = 6  
  7. shared_buffers = 512MB  
  8. maintenance_work_mem = 64MB  
  9. dynamic_shared_memory_type = windows  
  10. vacuum_cost_delay = 0  
  11. bgwriter_delay = 10ms  
  12. bgwriter_lru_maxpages = 1000  
  13. bgwriter_lru_multiplier = 5.0  
  14. bgwriter_flush_after = 0  
  15. old_snapshot_threshold = -1  
  16. wal_level = minimal
  17. max_wal_senders = 0  # 如果max_wal_senders大于0,需要设置wal_level至少为replica级别。 PG 10开始,max_wal_senders默认值为10,以前的版本默认为0。
  18. synchronous_commit = off  
  19. full_page_writes = on  
  20. wal_buffers = 64MB  
  21. wal_writer_delay = 10ms  
  22. wal_writer_flush_after = 4MB  
  23. checkpoint_timeout = 35min  
  24. max_wal_size = 2GB  
  25. min_wal_size = 80MB  
  26. checkpoint_completion_target = 0.1  
  27. checkpoint_flush_after = 0  
  28. random_page_cost = 1.5  
  29. log_destination = 'csvlog'  
  30. logging_collector = on  
  31. log_directory = 'pg_log'  
  32. log_truncate_on_rotation = on  
  33. log_checkpoints = on  
  34. log_connections = on  
  35. log_disconnections = on  
  36. log_error_verbosity = verbose  
  37. log_temp_files = 8192  
  38. log_timezone = 'Asia/Hong_Kong'  
  39. autovacuum = on  
  40. log_autovacuum_min_duration = 0  
  41. autovacuum_naptime = 20s  
  42. autovacuum_vacuum_scale_factor = 0.05  
  43. autovacuum_freeze_max_age = 1500000000  
  44. autovacuum_multixact_freeze_max_age = 1600000000  
  45. autovacuum_vacuum_cost_delay = 0  
  46. vacuum_freeze_table_age = 1400000000  
  47. vacuum_multixact_freeze_table_age = 1500000000  
  48. datestyle = 'iso, mdy'  
  49. timezone = 'Asia/Hong_Kong'  
  50. lc_messages = 'C'  
  51. lc_monetary = 'C'  
  52. lc_numeric = 'C'  
  53. lc_time = 'C'  
  54. default_text_search_config = 'pg_catalog.english'  
复制代码
9 配置pg_hba.conf(可选)

数据库防火墙文件名字pg_hba.conf,这个文件在数据文件目录D:\pgdata中。
将以下内容追加到文件末尾,表示允许网络用户使用用户密码连接你的postgresql数据库.
  1. host all all 0.0.0.0/0 md5  
复制代码
10 启动、停止数据库集群

使用命令行启动数据库集群
  1. >d:  
  2.   
  3. >cd pgsql  
  4.   
  5. >cd bin  
  6.   
  7. D:\pgsql\bin>pg_ctl.exe start -D d:\pgdata  
  8. 正在启动服务器进程  
  9.   
  10. D:\pgsql\bin>LOG:  00000: redirecting log output to logging collector process  
  11. HINT:  Future log output will appear in directory "pg_log".  
  12. LOCATION:  SysLogger_Start, syslogger.c:622  
复制代码
使用命令行停止数据库集群
  1. D:\pgsql\bin>pg_ctl.exe stop -m fast -D "d:\pgdata"
  2. 等待服务器进程关闭 .... 完成
  3. 服务器进程已经关闭
复制代码
11 如何自动启动数据库集群

配置windows自动启动服务.
12 使用psql 命令行连接数据库

psql -h IP地址 -p 端口 -U 用户名 数据库名
  1. D:\pgsql\bin>psql -h 127.0.0.1 -p 1921 -U postgres postgres  
  2. psql (9.6.2)  
  3. 输入 "help" 来获取帮助信息.  
  4.   
  5. postgres=# \dt  
复制代码
13 新增用户

新建用户属于数据库操作,先使用psql和超级用户postgres连接到数据库。
新增一个普通用户
  1. postgres=# create role digoal login encrypted password 'pwd_digoal';  
  2. CREATE ROLE  
复制代码
新增一个超级用户
  1. postgres=# create role dba_digoal login superuser encrypted password 'dba_pwd_digoal';  
  2. CREATE ROLE  
复制代码
新增一个流复制用户
  1. postgres=# create role digoal_rep replication login encrypted password 'pwd';  
  2. CREATE ROLE  
复制代码
你还可以将一个用户在不同角色之间切换
例如将digoal设置为超级用户
  1. postgres=# alter role digoal superuser;  
  2. ALTER ROLE  
复制代码
查看已有用户
  1. postgres=# \du+  
  2.                                  角色列表  
  3.   角色名称  |                    属性                    | 成员属于 | 描述  
  4. ------------+--------------------------------------------+----------+------  
  5. dba_digoal | 超级用户                                   | {}       |  
  6. digoal     | 超级用户                                   | {}       |  
  7. digoal_rep | 复制                                       | {}       |  
  8. postgres   | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}       |  
复制代码
14 使用psql帮助

psql有很多快捷的命令,使用\?就可以查看。
  1. postgres=# \?  
  2. 一般性  
  3.   \copyright            显示PostgreSQL的使用和发行许可条款  
  4.   \errverbose            以最冗长的形式显示最近的错误消息  
  5.   \g [文件] or;     执行查询 (并把结果写入文件或 |管道)  
  6.   \gexec                 执行策略,然后执行其结果中的每个值  
  7.   \gset [PREFIX]     执行查询并把结果存到psql变量中  
  8.   \q             退出 psql  
  9.   \crosstabview [COLUMNS] 执行查询并且以交叉表显示结果  
  10.   \watch [SEC]          每隔SEC秒执行一次查询  
  11.   
  12. 帮助  
  13.   \? [commands]          显示反斜线命令的帮助  
  14.   
  15.   ......  
  16.   
复制代码
15 使用psql语法补齐

如果你编译PostgreSQL使用了补齐选项,那么在psql中按TAB键,可以自动补齐命令。
16 使用psql sql语法帮助

如果你忘记了某个SQL的语法,使用\h 命令即可打印命令的帮助
例如
  1. postgres=# \h create table  
  2. 命令:       CREATE TABLE  
  3. 描述:       建立新的数据表  
  4. 语法:  
  5. CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI  
  6. STS ] 表名 ( [  
  7.   { 列名称 数据_类型 [ COLLATE 校对规则 ] [ 列约束 [ ... ] ]  
  8.     | 表约束  
  9.     | LIKE 源表 [ like选项 ... ] }  
  10.     [, ... ]  
  11. ] )  
  12.   
  13. ......  
复制代码
17 查看当前配置

show 参数名
  1. postgres=# show client_encoding;  
  2. client_encoding  
  3. -----------------  
  4. GBK  
  5. (1 行记录)  
复制代码
查看pg_settings
  1. postgres=# select * from pg_settings;  
复制代码
18 设置会话参数

set 参数名=值;
  1. postgres=# set client_encoding='sql_ascii';  
  2. SET  
复制代码
19 在psql中切换到另一个用户或数据库

\c 切换到其他用户或数据库
  1. postgres=# \c template1 digoal  
  2. 您现在已经连接到数据库 "template1",用户 "digoal".  
复制代码
20 使用pgadmin4连接数据库

pgAdmin4被安装在这个目录
  1. d:\pgsql\pgAdmin 4\bin  
复制代码
双击pgAdmin4.exe打开pgadmin4(有点耗时,自动启动HTTPD服务)
点击server,右键,创建server.
配置server别名,连接数据库的 IP,端口,用户,密码,数据库名
 
 
21 文档

PostgreSQL的安装包中包含了pgadmin, PostgreSQL的文档,找到对应的doc目录,打开index.html。
二、PostgreSQL on Linux(虚拟机)环境搭建

1 环境要求

Win 7 x64, 8GB以上内存, 4核以上, SSD硬盘(推荐),100GB以上剩余空间, 可以访问公网(10MB/s以上网络带宽)
2 下载Linux镜像

http://isoredirect.centos.org/centos/6/isos/x86_64/
http://mirrors.163.com/centos/6.9/isos/x86_64/CentOS-6.9-x86_64-minimal.iso
3 安装VMware Workstation(试用版本)

http://www.vmware.com/cn/products/workstation/workstation-evaluation.html
4 安装securecrt(试用版本)

securecrt可以用来连接Linux终端,方便使用
https://www.vandyke.com/products/securecrt/windows.html
5 安装Linux虚拟机

打开vmware, 创建虚拟机, 选择CentOS 6 x64版本.
1. 配置建议:
4G内存,40G磁盘,2核以上,NAT网络模式。
2. 安装建议:
minimal最小化安装。
3. root密码:
记住你设置的root密码。
4. Linux安装配置建议
配置主机名,配置网络(根据你的vmware NAT网络进行配置),关闭selinux,关闭防火墙或开放ssh端口(测试环境)。
6 配置Linux虚拟机网络

vmware窗口连接linux
例子,192.168.150 请参考你的vmware NAT网络修改一下。
配置网关
  1. vi /etc/sysconfig/network  
  2.   
  3. NETWORKING=yes  
  4. HOSTNAME=digoal01  
  5. GATEWAY=192.168.150.2  
复制代码
配置IP
  1. cat /etc/sysconfig/network-scripts/ifcfg-eth0   
  2.   
  3. DEVICE=eth0  
  4. TYPE=Ethernet  
  5. UUID=d28f566a-b0b9-4bde-95e7-20488af19eb6  
  6. ONBOOT=yes  
  7. NM_CONTROLLED=yes  
  8. BOOTPROTO=static  
  9. HWADDR=00:0C:29:5D:6D:9C  
  10. IPADDR=192.168.150.133  
  11. PREFIX=24  
  12. GATEWAY=192.168.150.2  
  13. DNS1=192.168.150.2  
  14. DEFROUTE=yes  
  15. IPV4_FAILURE_FATAL=yes  
  16. IPV6INIT=no  
  17. NAME="System eth0"  
复制代码
配置DNS
  1. cat /etc/resolv.conf  
  2.   
  3. nameserver 192.168.150.2  
复制代码
重启网络服务
  1. service network restart  
复制代码
7 securecrt终端连接Linux

添加一个session,连接到Linux虚拟机。

 
8 配置linux

1. /etc/sysctl.conf
  1. vi /etc/sysctl.conf  
  2.   
  3. 追加到文件末尾  
  4.   
  5. kernel.shmall = 4294967296  
  6. kernel.shmmax=135497418752  
  7. kernel.shmmni = 4096  
  8. kernel.sem = 50100 64128000 50100 1280  
  9. fs.file-max = 7672460  
  10. fs.aio-max-nr = 1048576  
  11. net.ipv4.ip_local_port_range = 9000 65000  
  12. net.core.rmem_default = 262144  
  13. net.core.rmem_max = 4194304  
  14. net.core.wmem_default = 262144  
  15. net.core.wmem_max = 4194304  
  16. net.ipv4.tcp_max_syn_backlog = 4096  
  17. net.core.netdev_max_backlog = 10000  
  18. net.ipv4.netfilter.ip_conntrack_max = 655360  
  19. net.ipv4.tcp_timestamps = 0  
  20. net.ipv4.tcp_tw_recycle=1  
  21. net.ipv4.tcp_timestamps=1  
  22. net.ipv4.tcp_keepalive_time = 72   
  23. net.ipv4.tcp_keepalive_probes = 9   
  24. net.ipv4.tcp_keepalive_intvl = 7  
  25. vm.zone_reclaim_mode=0  
  26. vm.dirty_background_bytes = 40960000  
  27. vm.dirty_ratio = 80  
  28. vm.dirty_expire_centisecs = 6000  
  29. vm.dirty_writeback_centisecs = 50  
  30. vm.swappiness=0  
  31. vm.overcommit_memory = 0  
  32. vm.overcommit_ratio = 90  
复制代码
生效
  1. sysctl -p  
复制代码
2. /etc/security/limits.conf
  1. vi /etc/security/limits.conf   
  2.   
  3. * soft    nofile  131072  
  4. * hard    nofile  131072  
  5. * soft    nproc   131072  
  6. * hard    nproc   131072  
  7. * soft    core    unlimited  
  8. * hard    core    unlimited  
  9. * soft    memlock 500000000  
  10. * hard    memlock 500000000  
复制代码
3. /etc/security/limits.d/*
  1. rm -f /etc/security/limits.d/*  
复制代码
4. 关闭selinux
  1. # vi /etc/sysconfig/selinux   
  2.   
  3. SELINUX=disabled  
  4. SELINUXTYPE=targeted  
复制代码
5. 配置OS防火墙
(建议按业务场景设置,我这里先清掉)
  1. iptables -F  
复制代码
配置范例
  1. # 私有网段  
  2. -A INPUT -s 192.168.0.0/16 -j ACCEPT  
  3. -A INPUT -s 10.0.0.0/8 -j ACCEPT  
  4. -A INPUT -s 172.16.0.0/16 -j ACCEPT  
复制代码
重启linux。
  1. reboot  
复制代码
9 配置yum仓库(可选)

在linux虚拟机中,找一个有足够空间的分区,下载ISO镜像
  1. wget http://mirrors.163.com/centos/6.9/isos/x86_64/CentOS-6.9-x86_64-bin-DVD1.iso  
  2.   
  3. wget http://mirrors.163.com/centos/6.9/isos/x86_64/CentOS-6.9-x86_64-bin-DVD2.iso  
复制代码
新建ISO挂载点目录
  1. mkdir /mnt/cdrom1  
  2. mkdir /mnt/cdrom2  
复制代码
挂载ISO
  1. mount -o loop,defaults,ro /u01/CentOS-6.8-x86_64-bin-DVD1.iso /mnt/cdrom1  
  2. mount -o loop,defaults,ro /u01/CentOS-6.8-x86_64-bin-DVD2.iso /mnt/cdrom2  
复制代码
备份并删除原有的YUM配置文件
  1. mkdir /tmp/yum.bak  
  2. cd /etc/yum.repos.d/  
  3. mv * /tmp/yum.bak/  
复制代码
新增YUM配置文件
  1. cd /etc/yum.repos.d/  
  2.   
  3. vi local.repo  
  4.   
  5. [local-yum]  
  6. name=Local Repository  
  7. baseurl=file:///mnt/cdrom1  
  8. enabled=1  
  9. gpgcheck=0  
复制代码
刷新YUM缓存
  1. yum clean all  
复制代码
测试
  1. yum list  
  2.   
  3. yum install createrepo   -- 方便后面测试  
复制代码
修改YUM配置,修改路径为上层目录
  1. cd /etc/yum.repos.d/  
  2.   
  3. vi local.repo  
  4.   
  5. [local-yum]  
  6. name=Local Repository  
  7. baseurl=file:///mnt/  
  8. enabled=1  
  9. gpgcheck=0  
复制代码
创建YUM索引
  1. cd /mnt/  
  2. createrepo .  
复制代码
刷新YUM缓存,测试
  1. yum clean all  
  2.   
  3. yum list  
  4.   
  5. yum install vim  
复制代码
10 创建普通用户
  1. useradd digoal  
复制代码
11 规划数据库存储目录

假设/home分区有足够的空间, /home/digoal/pgdata规划为数据文件目录
  1. Filesystem      Size  Used Avail Use% Mounted on  
  2. /dev/sda3        14G  5.7G  7.2G  45% /  
复制代码
12 下载PostgreSQL源码

https://www.postgresql.org/ftp/source/
  1. su - digoal  
  2.   
  3. wget https://ftp.postgresql.org/pub/source/v9.6.2/postgresql-9.6.2.tar.bz2  
复制代码
13 安装PostgreSQL

安装依赖包
  1. root用户下,使用yum 安装依赖包  
  2.   
  3. yum -y install coreutils glib2 lrzsz mpstat dstat sysstat e4fsprogs xfsprogs ntp readline-devel zlib-devel openssl-devel pam-devel libxml2-devel libxslt-devel python-devel tcl-devel gcc make smartmontools flex bison perl-devel perl-Ext  
  4. Utils* openldap-devel jadetex  openjade bzip2  
复制代码
编译安装PostgreSQL
  1. digoal用户下,编译安装PostgreSQL  
  2.   
  3. tar -jxvf postgresql-9.6.2.tar.bz2  
  4. cd postgresql-9.6.2  
  5. ./configure --prefix=/home/digoal/pgsql9.6  
  6. make world -j 8  
  7. make install-world  
复制代码
14 配置linux用户环境变量

digoal用户下,配置环境变量
  1. su - digoal  
  2. vi ~/.bash_profile  
  3.   
  4. 追加  
  5.   
  6. export PS1="$USER@`/bin/hostname -s`-> "  
  7. export PGPORT=1921  
  8. export PGDATA=/home/digoal/pgdata  
  9. export LANG=en_US.utf8  
  10. export PGHOME=/home/digoal/pgsql9.6  
  11. export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH  
  12. export PATH=$PGHOME/bin:$PATH:.  
  13. export DATE=`date +"%Y%m%d%H%M"`  
  14. export MANPATH=$PGHOME/share/man:$MANPATH  
  15. export PGHOST=$PGDATA  
  16. export PGUSER=postgres  
  17. export PGDATABASE=postgres  
  18. alias rm='rm -i'  
  19. alias ll='ls -lh'  
  20. unalias vi  
复制代码
重新登录digoal用户,配置生效
  1. exit  
  2.   
  3. su - digoal  
复制代码
15 初始化数据库集群
  1. initdb -D $PGDATA -E UTF8 --locale=C -U postgres  
复制代码
16 配置数据库

配置文件在$PGDATA目录中
1. 配置postgresql.conf
  1. 追加  
  2.   
  3. listen_addresses = '0.0.0.0'  
  4. port = 1921  
  5. max_connections = 200  
  6. unix_socket_directories = '.'  
  7. tcp_keepalives_idle = 60  
  8. tcp_keepalives_interval = 10  
  9. tcp_keepalives_count = 10  
  10. shared_buffers = 512MB  
  11. dynamic_shared_memory_type = posix  
  12. vacuum_cost_delay = 0  
  13. bgwriter_delay = 10ms  
  14. bgwriter_lru_maxpages = 1000  
  15. bgwriter_lru_multiplier = 10.0  
  16. bgwriter_flush_after = 0   
  17. old_snapshot_threshold = -1  
  18. backend_flush_after = 0   
  19. wal_level = replica  
  20. synchronous_commit = off  
  21. full_page_writes = on  
  22. wal_buffers = 16MB  
  23. wal_writer_delay = 10ms  
  24. wal_writer_flush_after = 0   
  25. checkpoint_timeout = 30min   
  26. max_wal_size = 2GB  
  27. min_wal_size = 128MB  
  28. checkpoint_completion_target = 0.05   
  29. checkpoint_flush_after = 0   
  30. random_page_cost = 1.3   
  31. log_destination = 'csvlog'  
  32. logging_collector = on  
  33. log_truncate_on_rotation = on  
  34. log_checkpoints = on  
  35. log_connections = on  
  36. log_disconnections = on  
  37. log_error_verbosity = verbose  
  38. autovacuum = on  
  39. log_autovacuum_min_duration = 0  
  40. autovacuum_naptime = 20s  
  41. autovacuum_vacuum_scale_factor = 0.05  
  42. autovacuum_freeze_max_age = 1500000000  
  43. autovacuum_multixact_freeze_max_age = 1600000000  
  44. autovacuum_vacuum_cost_delay = 0  
  45. vacuum_freeze_table_age = 1400000000  
  46. vacuum_multixact_freeze_table_age = 1500000000  
  47. datestyle = 'iso, mdy'  
  48. timezone = 'PRC'  
  49. lc_messages = 'C'  
  50. lc_monetary = 'C'  
  51. lc_numeric = 'C'  
  52. lc_time = 'C'  
  53. default_text_search_config = 'pg_catalog.english'  
  54. shared_preload_libraries='pg_stat_statements'  
复制代码
2. 配置pg_hba.conf
  1. 追加  
  2.   
  3. host all all 0.0.0.0/0 md5  
复制代码
17 启动数据库集群
  1. su - digoal  
  2.   
  3. pg_ctl start  
复制代码
18 连接数据库
  1. su - digoal  
  2.   
  3. psql  
  4. psql (9.6.2)  
  5. Type "help" for help.  
  6.   
  7. postgres=#   
复制代码
19 安装pgadmin(可选)

在windows 机器上,安装pgadmin
https://www.pgadmin.org/download/windows4.php
20 配置pgadmin(可选)

参考章节1
21 使用pgadmin连接数据库(可选)

参考章节1
 三、云数据库RDS for PostgreSQL

1 购买云数据库

https://www.aliyun.com/product/rds/postgresql
2 设置并记住RDS for PostgreSQL数据库根用户名和密码

在RDS 控制台操作。
3 配置网络

在RDS 控制台操作,配置连接数据库的URL和端口。
4 配置白名单

在RDS 控制台操作,配置来源IP的白名单,如果来源IP为动态IP,白名单设置为0.0.0.0。
(数据库开放公网连接有风险,请谨慎设置,本文仅为测试环境。)
5 本地安装pgadmin(可选)

在windows 机器上,安装pgadmin
https://www.pgadmin.org/download/windows4.php
6 本地配置pgadmin(可选)

参考章节1
7 使用pgadmin连接RDS PostgreSQL数据库(可选)

参考章节1
  
  1. 作者丨digoal
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

拉不拉稀肚拉稀

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表