PostgreSQL 安装使用

PostgreSQL 是一个功能强大的开源对象关系数据库系统,它使用并扩展了SQL语言,并结合了许多功能来安全地存储和扩展最复杂的数据工作负载。PostgreSQL的起源可以追溯到1986年,作为伯克利加利福尼亚大学POSTGRES 项目的一部分,在核心平台上进行了超过30年的积极开发。

PostgreSQL以其经过验证的架构,可靠性,数据完整性,强大的功能集,可扩展性以及软件背后的开源社区的奉献精神赢得了很高的声誉,从而始终如一地提供性能卓越的创新解决方案。 PostgreSQL可在所有主要操作系统上运行,自2001年以来一直兼容ACID,并且具有强大的附加功能,如流行的PostGIS地理空间数据库扩展器。

MySQL 被商业化后,PostgreSQL 变的越来越流行。PostgreSQL已经成为许多人和组织的开源关系数据库,这并不奇怪。

PostgreSQL 安装

以 CentOS 7 为例, PostgreSQL 版本为 9.6,执行以下命令就能顺利安装好 PostgreSQL 数据库:

安装 RPM 的仓库:
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

安装客户端:
yum install postgresql96

安装服务端:
yum install postgresql96-server

初始化数据库并设置数据库随系统启动:
/usr/pgsql-9.6/bin/postgresql96-setup initdb
systemctl enable postgresql-9.6
systemctl start postgresql-9.6

在执行 initdb 命令后,对数据库进行初始化,生成 data 目录,默认路径为:

    /var/lib/pgsql/9.6/data

该目录下包括数据文件和配置文件,其中常用的配置文件有:

  • pg_hba.conf
  • pg_hba.conf

建议在修改配置文件前先备份一下,以免文件改坏了恢复。

PostgreSQL 的简单使用

PostgreSQL 服务启动后,就可以对数据库进行操作了。PostgreSQL 安装后会自动创建 postgres 用户,密码是随机生成的,所以需要修改一下。

修改密码

修改 Linux 的 postgres 用户密码:

删除密码
sudo  passwd -d postgres

设置密码
sudo -u postgres passwd

输入两次密码
Enter new UNIX password:
Retype new UNIX password:

passwd: password updated successfully

或者也可以切换到 root 帐号,直接重新设置 postgres 用户的密码:

su - root
passwd postgres

注意:这边提到的 postgres 用户是 Linux 系统的,不是数据库的用户。

修改数据库的 postgres 用户密码:

切换到 postgres 用户登陆:

su - postgres
psql

或者指定用户名登陆:

sudo -u postgres psql

登陆后修改密码:

ALTER USER postgres WITH PASSWORD 'postgres';

常用命令

输入 psql 登陆数据库后,就进入了命令行操作环境。psql 是PostgreSQL数据库提供的命令行终端程序,它允许我们交互地输入、编辑、执行SQL命令。使用psql进行数据库管理非常简单、轻量、高效,查看具体的指令可在 psql 环境下输入\?

表1:psql 命令

命令说明备注
\c切换数据库格式:\c[onnect] [数据库名|- [用户名称]]
\l查看数据库相当于 MySQL 的 show databases
\d [table]列出数据库中的表或表结构类似于 MySQL 的 desc table
\da列出聚合函数 
\df列出函数 
\di列出索引 
\do列出操作符 
\ds列出序列 
\dt列出非系统表 
\p打印当前查询缓冲区 
\r重置(清空)查询缓冲区 
\o将后面的查询结果输出到文件\o [ { filename | |command } ]
\q退出 psql 程序 
\?获得关于反斜杠 (“\”) 命令的帮助 

常用 SQL

数据库初始安装好后,默认有三个数据库:postgres、template0 和template1其中 template0 和template1 为数据库模板,创建时直接可以使用其克隆一个新数据库。

创建数据库

CREATE DATABASE user;

删除数据库

DROP DATABASE pg_user;

创建表

--主键
CREATE table t_user( 
 id INTEGER,
 name varchar(1000),
 PRIMARY KEY(id)
);


--自增
create table t_busy( 
id SERIAL PRIMARY KEY, 
chk_id TEXT, 
n INTEGER
);

--SERIAL代表自增,默认从1开始增加,每次自增1。

 

删除表

drop table t_role;

 

清空表

delete from t_user

TRUNCATE TABLE t_user

 

 

创建数据库也可以使用命令行方式创建:

    createdb pg_user;

    dropdb pg_user;

pgAdmin 管理工具使用

psql 工具是使用命令行来操作数据库的,相对来说不是很直观,对于喜欢图形画界面操作的同学来说,显得有点相形见绌了。pgAdmin 是 PostgreSQL 可视化管理的工具,能够在各种平台上运行,软件用C++编写,采用了优秀的 wxWidgets 跨平台工具包。

pgAdmin 安装配置

Windows 下直接下载可执行文件运行安装,基本都是点击下一步操作即可。安装完成后运行该工具,初始使用需要新增一个服务器连接,填写服务器信息:

添加数据库服务器的连接信息:

连接后,就进入了数据库的管理界面:

pgAdmin 连接数据库的常见问题

如果 PostgreSQL 是安装在 Linux 上,要确保 PostgreSQL 运行的端口在防火墙中开放。

could not connect to Server: Connection refused

解决方法: 版本 Versions 7.3.x 或者 7.4.x,在配置文件 postgresql.conf 中 增加 tcpip = true 配置; 版本 8.0.x+ 增加 listen_addresses=’*’ 配置。

no pg_hba.conf entry

解决方法: 在配置文件 pg_hba.conf 中 增加 IPV4 或 IPV6 地址,比如:

    host template1 postgres 192.168.0.0/24 md5

详细错误说明请看这里

 

 

转载于:https://my.oschina.net/electrician/blog/1802711

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值