vi /etc/yum.repos.d/CentOS-Base.repo
在[base]
和[updates]
区段添加:
exclude=postgresql*
配置完yum库之后卸载之前安装的Postgresql:
yum erase postgresql*
为了避免有遗留,可以多删除几遍,直到有如下提示:
已加载插件:fastestmirror, langpacks
参数 postgresql 没有匹配
不删除任何软件包
删除所有数据:
rm -rf /var/lib/pgsql
打开网页(下载yun源), 找到正确的RPM。
比如,为CentOS7 64位的系统,安装PostgreSQL 9.5:
打开(http://yum.postgresql.org/repopackages.php#pg95)后,找到CentOS 7 - x86_64
然后,执行如下命令:
yum localinstall https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm
安装contrib第三方包和分布式包,可以选择不安装:
yum -y install postgresql95-server postgresql95-contrib
/usr/pgsql-9.5/bin/postgresql95-setup initdb
service postgresql-9.5 start/stop/restart/reload
sudo chkconfig postgresql-9.5 on
yum erase postgresql95
yum安装官方资料说明:yum安装说明
修改linux系统用户postgres的密码,PostgreSQL 数据库默认会创建一个linux 系统用户postgres,通过passwd 命令可设置系统用户的密码。
直接在控制台输入以下命令:
su postgres
psql
ALTER USER postgres WITH PASSWORD 'postgresql';
\q
su root
这样就把postgres
的密码改为postgresql
了。
①、修改postgresql.conf
文件:
vi /var/lib/pgsql/9.5/data/postgresql.conf
将listen_addresses
前的#
去掉,并将 listen_addresses = 'localhost'
改成 listen_addresses = '*'
;
②、修改客户端认证配置文件pg_hba.conf,将需要远程访问数据库的IP地址或地址段加入该文件。
vi /var/lib/pgsql/9.5/data/pg_hba.conf
将IPv4区下的127.0.0.1/32
修改为0.0.0.0/0
; 将ident修改为md5
③、重启服务使设置生效
service postgresql-9.5 restart
#为public域开放tcp协议的5432端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent
#为public域添加http服务
firewall-cmd --zone=public --add-service=postgresql --permanent
#重启firewall服务
firewall-cmd --reload
连接数据库:
psql -h 127.0.0.1 -p 5432 -U postgres testdb
显示所有数据库:
\l
创建数据库:
createdb -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)指定多个表。
退出:
\q
这样就完成了PostgreSql的安装,使用方法除了可以参考以上的说明外还可以参考Wiki。