您的位置:首页 > 数据库

cdh PostgreSQL

2016-01-30 18:46 337 查看
centos用yum安装postgresql的路径为 /var/lib/pgsql/中。

1.安装postgresql9.0 yum 仓库

rpm -i http://yum.postgresql.org/9.2/redhat/rhel-6-x86_64/pgdg-redhat92-9.2-7.noarch.rpm

2.安装新版本的Postgresql

yum install postgresql92-server postgresql92-contrib

3.初始化数据库

/etc/init.d/postgresql-9.2 initdb

4.启动数据库

/etc/init.d/postgresql-9.2 start

注意:postgresql启动后就可以利用service postgresql-9.2 start/restart/stop来控制它了。

虽然打完service后,按p不提示postgresql-9.2,但是可以用手输。

5.把postgresql加入自启动列表

cd /etc/init.d

chkconfig –add postgresql9.2

6.查看一下自启动列表

chkconfig –list

在这里可以看到postgresql已经在其中了。

7.PostgreSQL 数据库默认会创建一个postgres的数据库用户作为数据库的管理员,默认密码为空,我们需要修改为指定的密码,这里设定为’postgres’

直接在控制台输入以下命令:

[code]# su - postgres
$ psql
#CREATE USER amon WITH PASSWORD 'fuzegame';
#CREATE DATABASE amon OWNER amon;
#GRANT ALL PRIVILEGES ON DATABASE amon to amon;
#\l 
显示数据库
# \c amon 
进入数据库
#\d 
查看所有表
#amon =# create table test (id integer, name text);
#amon =# insert into test values (1,'david');


至上,安装成功。

ps:1.可以通过查找pg_hba.conf,来定位postgresql的位置。

2.重启postgresql,可以用service postgresql restart

第一种方法,使用PostgreSQL控制台。

首先,新建一个Linux新用户,可以取你想要的名字,这里为dbuser。

sudo adduser dbuser

然后,切换到postgres用户。

sudo su - postgres

下一步,使用psql命令登录PostgreSQL控制台。

psql

这时相当于系统用户postgres以同名数据库用户的身份,登录数据库,这是不用输入密码的。如果一切正常,系统提示符会变为”postgres=#”,表示这时已经进入了数据库控制台。以下的命令都在控制台内完成。

第一件事是使用\password命令,为postgres用户设置一个密码。

\password postgres

第二件事是创建数据库用户dbuser(刚才创建的是Linux系统用户),并设置密码。

CREATE USER dbuser WITH PASSWORD ‘password’;

第三件事是创建用户数据库,这里为exampledb,并指定所有者为dbuser。

CREATE DATABASE exampledb OWNER dbuser;

第四件事是将exampledb数据库的所有权限都赋予dbuser,否则dbuser只能登录控制台,没有任何数据库操作权限。

GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;

最后,使用\q命令退出控制台(也可以直接按ctrl+D)。

\q

问题1:

org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.

解决办法:Edit /var/lib/pgsql/data/postgresql.conf file

Change

#listen_addresses = ‘localhost’

to

listen_addresses = ‘*’

问题2:

org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host “”, user “fkong”, database “fkong”, SSL off

解决办法:

Edit /var/lib/pgsql/data/pg_hba.conf file

Add below line under “# IPv4 local connections:”

“host all all /32 password”

问题3:

org.postgresql.util.PSQLException: FATAL: Ident authentication failed for user “fkong”

解决办法:

Edit /var/lib/pgsql/data/pg_hba.conf file

Change

“host all all /32 ident”

to

“host all all /32 password”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: