CentOS下yum安装PostgreSQL
导读
线上有项目用到pgsql,但是之前没玩过,百度了一篇文章安装和调试都没问题,可以正常使用,这里转载记录下。
一、安装。
安装PGDG RPM文件,打开网页(http://yum.postgresql.org), 找到需要安装的RPM。
比如,为CentOS 6 64位的系统,安装PostgreSQL 9.3:
打开http://yum.postgresql.org/repopackages.php#pg93后,找到CentOS 6 – x86_64
然后,执行如下命令:
yum localinstall http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm -y
安装PostgreSQL
先列出可用的安装包:
yum list postgres*
比如,要安装基础的PostgreSQL 9.3 server:
yum install postgresql93-server -y
也可根据自己的需求,安装其他的包。
二、配置
安装好后,数据库还需要初始化和配置。
PostgreSQL 数据文件夹(/var/lib/pgsql/9.3/data),包含了数据库所需的所有数据文件。
变量PGDATA,指的就是这个文件夹。
初始化
初始化数据库的第一个命令(仅需执行一次)是:
service postgresql-9.3 initdb
开机自启动
chkconfig postgresql-9.3 on
服务控制
service postgresql-9.3 start/stop/restart/reload
卸载
yum erase postgresql93*
参考:https://wiki.postgresql.org/wiki/YUM_Installation
三、其他配置
参考:http://www.cnblogs.com/mchina/archive/2012/06/06/2539003.html
9. 修改linux系统用户postgres的密码
PostgreSQL 数据库默认会创建一个linux 系统用户postgres,通过passwd 命令可设置系统用户的密码。
# passwd postgres
10. 修改PostgresSQL数据库配置实现远程访问
10.1 修改postgresql.conf 文件
# vi /var/lib/pgsql/9.3/data/postgresql.conf
将listen_addresses 前的#去掉,并将 listen_addresses = ‘localhost’ 改成 listen_addresses = ‘*’ 。这里建议只监听内网IP,不要开启远程IP监听。测试机就无所谓了。
10.2 修改客户端认证配置文件pg_hba.conf
将需要远程访问数据库的IP地址或地址段加入该文件。
# vi /var/lib/pgsql/9.3/data/pg_hba.conf
将IPv4区下的127.0.0.1/32修改为0.0.0.0/0; 将ident修改为md5 。这里补充下,远程开启有风险,需慎重。
11. 重启服务以使设置生效
# service postgresql-9.3 restart
简单使用
创建数据库:createdb -h 127.0.0.1 -p 5432 -U postgres testdb
连接数据库:psql -h 127.0.0.1 -p 5432 -U postgres testdb
删除数据库:dropdb -h 127.0.0.1 -p 5432 -U postgres testdb
说明:-h表示主机(Host),-p表示端口(Port),-U表示用户(User)
创建数据表:create table tbl(a int);
删除数据表:drop table tbl;
插入数据:insert into tbl(a) values(1);
查看数据:select * from tbl;
备份数据库:pg_dump -U postgres testdb > d:/testdb.dmp
恢复数据库:psql -U postgres testdb < d:/testdb.dmp
说明:这种方法,实际上是SQL的转储,可加参数(-t)指定多个表。