简介
PostgreSQL是以加州大学伯克利分校计算机系开发的
POSTGRES,版本 4.2为基础的对象关系型数据库管理系统(ORDBMS)。PostgreSQL支持大部分
SQL标准并且提供了许多其他现代特性:复杂查询、外键、触发器、视图、事务完整性、多版本并发控制。同样,PostgreSQL
可以用许多方法扩展,比如, 通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言。
PostgreSQL 9.1 于2011年09月13日发布,所以应该还是不错滴。
安装
1.使用 apt-get install
安装
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo apt-get install -y postgresql-9.1
postgresql-client-9.1 postgresql-contrib-9.1
2.PostgreSQL登录(使用psql客户端登录)
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo -u postgres psql
//其中,sudo -u postgres
是使用postgres 用户登录的意思
//PostgreSQL数据默认会创建一个postgres的数据库用户作为数据库的管理员,密码是随机的,所以这里
//设定为'postgres'
3.修改PostgreSQL登录密码:
postgres=#
ALTER USER
postgres WITH PASSWORD 'postgres';
//postgres=#为PostgreSQL下的命令提示符
4.退出PostgreSQL
psql客户端
postgres=#
\q
配置Ubuntu下的PostgreSQL用户密码
1.删除PostgreSQL用户密码
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo passwd -d postgres
[sudo] password for zhaofeng:
passwd: password expiry information changed.
//passwd -d
是清空指定用户密码的意思
2.设置PostgreSQL用户密码
PostgreSQL数据默认会创建一个linux用户postgres,通过上面的代码修改密码为’postgres’(这取决于
第二步中的密码,只要与其相同即可)。
现在,我们就可以在数据库服务器上用
postgres帐号通过psql或者pgAdmin等等客户端操作数据库了。
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo -u postgres
passwd
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd:已成功更新密码
修改PostgreSQL配置实现远程访问
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo vi
/etc/postgresql/9.1/main/postgresql.conf
1.监听任何地址访问,修改连接权限
#listen_addresses =
‘localhost’
改为
listen_addresses = ‘*’
2.启用密码验证
#password_encryption =
on
改为 password_encryption =
on
3.可访问的用户ip段
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo vi
/etc/postgresql/9.1/main/pg_hba.conf
# to allow your client visiting
postgresql
server
改为
host all all 0.0.0.0 0.0.0.0
md5
4.重启PostgreSQL数据库
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo
/etc/init.d/postgresql restart
管理PostgreSQL用户和数据库
1.登录postgre
SQL数据库
zhaofeng@zhaofeng-P61-S3-B3:~$
psql
-U postgres -h 127.0.0.1
2.创建新用户zhaofeng,但不给建数据库的权限
postgres=#
create user
“zhaofeng” with password ‘123456’ nocreatedb;
//注意用户名要用双引号,以区分大小写,密码不用
3.建立数据库,并指定所有者
postgres=#
create database
“testdb” with owner=”zhaofeng”;
4.在外部命令行的管理命令
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo -u postgres createuser -D -P test1
//-D该用户没有创建数据库的权利,-P提示输入密码,选择管理类型y/n
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo
-u postgres createdb -O test1 db1
//-O设定所有者为test1
安装postgresql数据库pgAdmin3客户端管理程序
zhaofeng@zhaofeng-P61-S3-B3:~$
sudo apt-get install -y
pgadmin3
pgadmin3登录,如果postgres帐户没有密码可能导致登录不成功