在Ubuntu上安装开源数据库PostgreSQL 9.4
简介
PostgreSQL 是一款强大的,开源的,对象关系型数据库系统。它支持所有的主流操作系统,包括 Linux、Unix(AIX、BSD、HP-UX,SGI IRIX、Mac OS、Solaris、Tru64) 以及 Windows 操作系统。
下面是 Ubuntu 发起者 Mark Shuttleworth 对 PostgreSQL 的一段评价。
PostgreSQL 是一款极赞的数据库系统。刚开始,我们在 Launchpad 上使用它的时候,并不确定它能否胜任工作。但我是错了。它很强壮、快速,在各个方面都很专业。
— Mark Shuttleworth.
在这篇简短的指南中,让我们来看看如何在 Ubuntu 15.10 服务器中安装 PostgreSQL 9.4。
安装 PostgreSQL
默认仓库中就有可用的 PostgreSQL。在终端中输入下面的命令来安装它。
sudo apt-get install postgresql postgresql-contrib
如果你需要其它的版本,按照下面那样先添加 PostgreSQL 仓库,然后再安装。
PostgreSQL apt 仓库支持 amd64 和 i386 架构的 Ubuntu 长期支持版(10.04、12.04 和 14.04),以及非长期支持版(14.10)。对于其它非长期支持版,该软件包虽然没有完全支持,但使用和 LTS 版本近似的也能正常工作。
Ubuntu 14.10 系统:
新建文件/etc/apt/sources.list.d/pgdg.list ;
sudo vi /etc/apt/sources.list.d/pgdg.list
用下面一行添加仓库:
deb http://apt.postgresql.org/pub/repos/apt/ utopic-pgdg main
注意:上面的库只能用于 Ubuntu 14.10。还没有升级到 Ubuntu 15.04 和 15.10。
对于 Ubuntu 14.04,添加下面一行:
deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main
对于 Ubuntu 12.04,添加下面一行:
deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main
导入库签名密钥:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc sudo apt-key add -
更新软件包列表:
sudo apt-get update
然后,安装需要的版本。
sudo apt-get install postgresql-9.4
访问 PostgreSQL 命令窗口
默认的数据库名称和数据库用户名称都是 “postgres”。切换到 postgres 用户进行 postgresql 相关的操作:
sudo -u postgres psql postgres
示例输出:
psql (9.4.5) Type "help" for help. postgres=#
要退出 postgresql 窗口,在 psql 窗口输入 \q 退出到终端。
设置 “postgres” 用户密码
登录到 postgresql 窗口,
sudo -u postgres psql postgres
用下面的命令为用户 postgres 设置密码:
postgres=# \password postgres Enter new password: Enter it again: postgres=# \q
要安装 PostgreSQL Adminpack 扩展,在 postgresql 窗口输入下面的命令:
sudo -u postgres psql postgres
postgres=# CREATE EXTENSION adminpack; CREATE EXTENSION
在 psql 窗口输入 \q ,从 postgresql 窗口退回到终端。
创建新用户和数据库
例如,让我们创建一个新的用户,名为 “senthil”,密码是 “ubuntu”,以及名为 “mydb” 的数据库。
sudo -u postgres createuser -D -A -P senthil
sudo -u postgres createdb -O senthil mydb
删除用户和数据库
要删除数据库,首先切换到 postgres 用户:
sudo -u postgres psql postgres
输入命令:
$ drop database database-name
要删除一个用户,输入下面的命令:
$ drop user user-name
配置 PostgreSQL-MD5 验证
MD5 验证 要求用户提供一个 MD5 加密的密码用于认证。首先编辑 /etc/postgresql/9.4/main/pg_hba.conf 文件:
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
按照下面所示添加或修改行。
[...] # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 192.168.1.0/24 md5 # IPv6 local connections: host all all ::1/128 md5 [...]
其中, 192.168.1.0/24 是我的本地网络 IP 地址。用你自己的地址替换。
重启 postgresql 服务以使更改生效:
sudo systemctl restart postgresql
或者,
sudo service postgresql restart
配置 PostgreSQL TCP/IP 配置
默认情况下,没有启用 TCP/IP 连接,因此其它计算机的用户不能访问 postgresql。为了允许其它计算机的用户访问,编辑文件 /etc/postgresql/9.4/main/postgresql.conf:
sudo vi /etc/postgresql/9.4/main/postgresql.conf
找到下面一行:
[...] #listen_addresses = localhost [...] #port = 5432 [...]
取消该行的注释,然后设置你 postgresql 服务器的 IP 地址,或者设置为 ‘*’ 监听所有用户。你应该谨慎设置所有远程用户都可以访问 PostgreSQL。
[...] listen_addresses = * [...] port = 5432 [...]
重启 postgresql 服务保存更改:
sudo systemctl restart postgresql
或者,
sudo service postgresql restart
用 phpPgAdmin 管理 PostgreSQL
phpPgAdmin 是基于 web 用 PHP 写的 PostgreSQL 管理工具。
默认仓库中有可用的 phpPgAdmin。用下面的命令安装 phpPgAdmin:
sudo apt-get install phppgadmin
默认情况下,你可以在本地系统的 web 浏览器用 http://localhost/phppgadmin 访问 phppgadmin。
要访问远程系统,在 Ubuntu 15.10 上做如下操作:
编辑文件 /etc/apache2/conf-available/phppgadmin.conf,
sudo vi /etc/apache2/conf-available/phppgadmin.conf
找到 Require local 的一行在这行前面添加 # 注释掉它。
#Require local
添加下面的一行:
allow from all
保存并退出文件。
然后,重启 apache 服务。
sudo systemctl restart apache2
对于 Ubuntu 14.10 及之前版本:
编辑 /etc/apache2/conf.d/phppgadmin:
sudo nano /etc/apache2/conf.d/phppgadmin
注释掉下面一行:
[...] #allow from 127.0.0.0/255.0.0.0 ::1/128
取消下面一行的注释使所有系统都可以访问 phppgadmin。
allow from all
编辑 /etc/apache2/apache2.conf:
sudo vi /etc/apache2/apache2.conf
添加下面一行:
Include /etc/apache2/conf.d/phppgadmin
然后,重启 apache 服务。
sudo service apache2 restart
配置 phpPgAdmin
编辑文件 /etc/phppgadmin/config.inc.php, 做以下更改。下面大部分选项都带有解释。认真阅读以便了解为什么要更改这些值。
sudo nano /etc/phppgadmin/config.inc.php
找到下面一行:
$conf[servers][0][host] = ;
按照下面这样更改:
$conf[servers][0][host] = localhost;
找到这一行:
$conf[extra_login_security] = true;
更改值为 false。
$conf[extra_login_security] = false;
找到这一行:
$conf[owned_only] = false;
更改值为 true。
$conf[owned_only] = true;
保存并关闭文件。重启 postgresql 服务和 Apache 服务。
sudo systemctl restart postgresql sudo systemctl restart apache2
或者,
sudo systemctl restart postgresql sudo systemctl restart apache2
现在打开你的浏览器并导航到 http://ip-address/phppgadmin。你会看到以下截图。
phpPgAdmin
用你之前创建的用户登录。我之前已经创建了一个名为 “senthil” 的用户,密码是 “ubuntu”,因此我以 “senthil” 用户登录。
phpPgAdmin
然后你就可以访问 phppgadmin 面板了。
phpPgAdmin
用 postgres 用户登录:
phpPgAdmin
就是这样。现在你可以用 phppgadmin 可视化创建、删除或者更改数据库了。
加油!
作者:SK 来源:51CTOWinsows Server 2019 安装 PostgreSQL 环境准备 windows server 2019 镜像文件,官网地址 =》Windows Server 2019 | Microsoft postgresql 12.x for windows,官网地址=》PostgreSQL: The world s most advanced open source database 准备一个满足以上条件的服务器;(物理机,VM 均可)以上环境中安装 windows server 2019 的环节省略,...
【PostgreSQL】入门学习笔记(包括安装、环境与参数配置、故障排查以及备份还原等) 以下内容为前几天在备考PostgreSQL入门考试时候做的笔记,经过了全职的两天的奋战与实验,并最终顺利通过了PCA初级认证考试。现在把我学习的笔记分享给大家,文中有对应的思维导图图片可供查看,内容与后面正文文本一致。另外,由于SQL语句部分比较基础,基本上会一门数据库就都会,所以此处部分省略掉不做过多记录了。
相关文章
- 【阿里最新数据库面试题】MySQL主从一致性
- DM8(达梦8)数据库安装和使用
- 图数据库-Neo4j(一):安装、启动
- mybatis数据库数据分页问题
- sql 数据库中只靠一个数据,查询到所在表和列名
- macOS安装Mysql数据库
- 如何使用Zabbix的自动发现来监控mongo数据库
- NHibernate4使用Oracle.ManagedDataAccess.dll连接oracle及配置多个数据库连接
- mysql学习笔记之mysql数据库的安装
- [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置
- 达梦数据库冷备份还原的简单记录
- Linux 下面 oracle 数据库连接工具的安装还有特殊字符密码登录的设置
- Ubuntu-16.04.6 安装 oracle 12.2.0.1 数据库database软件
- Debain-7.11 安装 oracle 11.2.0.4 数据库database软件
- Debain-9.13 安装 oracle 11.2.0.4 数据库database软件
- Debain-10.4 安装 oracle 11.2.0.4 数据库database软件
- [数据库]MYSQL之InnoDB存储引擎 VS MYISAM存储引擎
- ARM架构使用yum源安装Postgresql数据库
- Spring5入门到实战------12、使用JdbcTemplate操作数据库(增删改查)。具体代码+讲解 【上篇】
- Oracle数据库的性能调整
- Linux下数据库的安装和使用
- linux下Postgresql-9.2安装及数据库的创建过程
- 客快物流大数据项目(五十二):根据数据库表及字段创建公共模块
- Linux下安装MongoDB 4.2数据库--使用网络yum方式
- 在FreeBSD中安装MySQL数据库
- django models数据库操作
- 11gR2RAC环境DBCA创建数据库报错ORA-15055 ORA-15001