我本地自己的window10机器上是利用Vagrant配合VirtualBox所运行的Ubuntu 16.04虚拟机环境,但项目的测试环境是阿里云的CentOS 7.5云主机(ECS),为了方便本地测试,便在两个环境下都分别搭建了PostgreSQL,接下来介绍各环境下的安装步骤。
Ubuntu 16.04环境
1、添加Postgresql apt存储库
# 创建pgdg.list sudo vi /etc/apt/sources.list.d/pgdg.list # 添加一行如下apt地址 deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main # 导入存储库签名密钥 wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - # 更新软件包列表 sudo apt-get update
2、安装PostgreSQL
sudo apt-get install postgresql-9.6
说明:ubuntu在安装Postgresql核心数据库的时候会顺便安装postgresql-client-9.6(客户端库和客户端二进制文件)和postgresql-contrib-9.6(附加提供的模块)
用这种方式安装成功后,系统会自动将Postgresql注册为一个服务,随着ubuntu操作系统自动启动并自动添加一个名为postgres密码随机的操作系统用户,与此同时还会自动生成一个名为postgres的数据库,用户名也是postgres,密码也是随机。
3、打开客户端工具(psql)并登录
sudo -u postgres psql
4、修改postgres数据库的用户名密码
注意:postgres=#为PostgreSQL下的命令提示符,每个SQL语句的结尾都要注意最后的英文分号';' postgres=# ALTER USER postgres WITH PASSWORD '123456';
5、退出PostgreSQL psql客户端
postgres=# \q
6、修改ubuntu操作系统的postgres用户密码(密码要与数据库用户postgres的密码相同)
1) 切换到root用户 su - root 2) 删除postgres用户密码(passwd -d 是清空指定用户密码的意思) sudo passwd -d postgres 3) 设置postgres用户的密码 sudo -u postgres passwd 4) 按照提示输入两次新密码(123456)
7、配置远程登录
1) 编辑postgresql配置文件 sudo vi /etc/postgresql/9.6/main/postgresql.conf 更改1:修改监听地址,查找listen_addresses,去掉前面的#号,并将'localhost'改为'*' listen_addresses = '*' 更改2:启用密码验证,将 #password_encryption = on 前面的 # 号去掉 password_encryption = on 2) 编辑pg_hba.conf配置文件 sudo vi /etc/postgresql/9.6/main/pg_hba.conf 更改1:在文档末尾加上以下内容 host all all 0.0.0.0/0 md5 3) 保存并重启postgresql服务 sudo /etc/init.d/postgresql restart 4) 向防火墙中添加一条开放5432端口的规则 sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5432 -j ACCEPT
CentOS 7.5环境
1、查看linux系统版本
$cat /proc/version Linux version 3.10.0-693.2.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Sep 12 22:26:13 UTC 2017 $cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core)
2、安装PostgreSQL
1) 访问如下地址,选择要安装的postgresql版本,linux系统版等相关信息,接着根据官方提供的yum安装指令安装即可 https://www.postgresql.org/download/linux/redhat/#yum 2) Install the repository RPM: yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm 3) Install the client packages: yum install postgresql96 4) Optionally install the server packages: yum install postgresql96-server 5) Optionally initialize the database and enable automatic start: /usr/pgsql-9.6/bin/postgresql96-setup initdb systemctl enable postgresql-9.6 systemctl start postgresql-9.6
3、打开客户端工具(psql)并登录
sudo -u postgres psql 以上命令等价于 sudo su - postgres # 切换账号,进入bash psql # 进入数据库管理
4、修改postgres数据库的用户名密码
注意:postgres=#为PostgreSQL下的命令提示符,每个SQL语句的结尾都要注意最后的英文分号';' postgres=# ALTER USER postgres WITH PASSWORD '123456';
5、新创建一个用户pguser和数据库test
CREATE USER pguser WITH PASSWORD '123456'; # 创建数据库用户 CREATE DATABASE test OWNER pguser; # 创建数据库 GRANT ALL PRIVILEGES ON DATABASE test to pguser; # 授权给pguser
这个时候如果用刚刚新建的用户pguser登录会报错
$ psql -U pguser -d test
psql: FATAL: Peer authentication failed for user "pguser"
6、配置本地用户登录
编辑pg_hba.conf配置文件 vi /var/lib/pgsql/9.6/data/pg_hba.conf 将 # "local" is for Unix domain socket connections only local all all peer 改为 # "local" is for Unix domain socket connections only local all all md5 类似的其它改为: # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 重启postgresql服务 sudo service postgresql-9.6 restart 重新尝试登录即可 psql -U pguser -d test -h 127.0.0.1
7、配置远程登录
1) 编辑postgresql配置文件 sudo vi /var/lib/pgsql/9.6/data/postgresql.conf 更改1:修改监听地址,查找listen_addresses,去掉前面的#号,并将'localhost'改为'*' listen_addresses = '*' 更改2:启用密码验证,将 #password_encryption = on 前面的 # 号去掉 password_encryption = on 2) 编辑pg_hba.conf配置文件 sudo vi /var/lib/pgsql/9.6/data/pg_hba.conf 更改1:在文档末尾加上以下内容 host all all 0.0.0.0/0 md5 3) 保存并重启postgresql服务 sudo service postgresql-9.6 restart
以上就是PostgreSQL 9.6在Ubuntu 16.04和CentOS 7.5下的安装配置步骤,下面顺便给出一些命令行客户端操作postgresql数据库常用操作命令
1、连接数据库 $psql -U user_name -d database_name -h serverhost 2、命令常用操作 \h #查看所有的sql关键字 \? #命令行操作的帮助 \d #查看当前schema中所有的表 \q #退出pg命令行 \d #schema.table查看表的结构 \x #横纵显示切换 \dT+ #显示扩展类型相关属性及描述 \dx #显示已安装的扩展插件 \l #列出所有的数据库 \timing #显示执行时间 \c database_name #切换数据库 set search to schema #切换schema explain sql #解释或分析sql执行过程
相关推荐
在离线且无网络环境的Ubuntu 16.04系统上安装PostgreSQL 9.6.8并允许远程访问,需要遵循一系列步骤。首先,你需要从PostgreSQL官方网站下载适用于Linux的二进制包,例如`postgresql-9.6.8-4-linux-x86-binaries.tar....
PostgreSQL 9.6 RPM包是一款专为Linux系统设计的数据库管理系统安装包,采用RPM(Red Hat Package Manager)格式,适用于基于RPM的Linux发行版,如CentOS、Fedora、RHEL等。PostgreSQL是一款强大的开源关系型数据库...
PostgreSQL 9.6 离线安装部署在 CentOS 7.x 操作系统上是一项关键任务,尤其对于那些没有互联网连接或者网络环境受限的环境。离线安装允许管理员提前下载所有必需的文件,并在本地进行安装,避免了在线安装过程中...
centos7.5离线安装postgresql14
centos7.5离线安装postgresql14和postgis
PostgreSQL 9.6是PostgreSQL数据库管理系统的一个版本,它在2016年发布,提供了许多增强功能和性能改进。JDBC(Java Database Connectivity)是Java编程语言中用于与数据库交互的一种API,允许Java应用程序连接到...
- 安装与配置PostgreSQL 9.6的方法。 2. **数据库设计与优化**: - 如何设计高效的数据表结构。 - SQL查询语句的编写与优化技巧。 - 使用索引提高查询性能。 3. **高级功能详解**: - 存储过程的创建与调用。...
在安装这些RPM包时,通常需要按照特定的顺序进行:首先安装`postgresql96-libs`,然后是`postgresql96-server`,接着是`postgresql96`,最后是`postgresql96-contrib`。安装完成后,你需要初始化数据库集群,配置...
文件夹中包含postgresql9,6和postGIS这两个开源软件,下载解压后,先安装postgresql,之后将postGIS安装在同一路径下,因为两个软件都是.exe文件,所以直接运行并且一直点击“下一步”就可以了
总之,"postgres9.6 rpm包.zip"提供了在Linux环境中部署PostgreSQL 9.6的简便途径,通过使用RPM包管理和一系列安装配置步骤,用户可以快速搭建起一个功能强大的数据库服务器。了解并掌握PostgreSQL的安装、配置和...
Mastering PostgreSQL 9.6 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
PostgreSQL 9.6 是 PostgreSQL 数据库管理系统的一个重要版本,它在功能、性能和稳定性上都有显著提升。这个版本的中文手册旨在为中文用户提供了详尽的文档,涵盖了数据库管理、SQL查询、安全性、备份与恢复、并行...
总结来说,PostgreSQL 9.6在CentOS 7上的安装涉及添加YUM源、安装服务器和贡献包、初始化数据库、配置远程访问、创建用户和数据库。这是一个基础的安装流程,根据实际需求,你可能还需要配置防火墙、调整参数或者...
对于初学者,可以首先通过PDF和CHM了解PostgreSQL的基础概念、安装配置以及基本操作。进阶用户则可以通过HTML源文件深入学习其内部机制和高级特性,并结合实际项目进行实践。无论哪种格式,都有助于开发者和管理员更...
postgresql的linux安装包。PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系...另外,因为许可证的灵活,任何人都可以以任何目的免费使用、修改和分发PostgreSQL。
本教程将详细介绍如何在CentOS系统上离线编译安装PostgreSQL 14和PostGIS 3.2,这两个是用于地理空间数据库管理的重要组件。 PostgreSQL是一个强大的开源关系型数据库管理系统,它支持复杂查询、事务处理和多种数据...
因此,这个压缩包适用于在Linux环境下搭建和运行PostgreSQL数据库系统。 综上所述,"postgresql-9.6.18.tar.gz"提供了一种方便的方式来在Linux环境中部署PostgreSQL 9.6.18,它包含了一系列的性能增强和新特性,...
该应用用于从官网下载的postgresql9.6版本所需要的地图字段所需的postgis安装包,安装时请选择安装到和postgresql相同文件下即可