如何在CentOS 7/6.5/6.4 下安装PostgreSQL 9.3 与 phpPgAd

PostgreSQL是一个强大开源的对象关系类型数据库系统,它能运行于几乎所有主要的操作系统,包括Linux、Unix(AIX、BSD、HP-UX、SGI IRIX、Mac OS、Solaris、Tru64)、Windows OS。在这篇教程里,我们将学习如何在CentOS7/6.5/6.4 server 中建立PostgreSQL。 

1.安装PostgreSQL 

首先根据你的服务器架构添加PostgreSQL库:

对CentOS 6.x 32bit:

    rpm -Uvh RedHat/rhel-6-i386/pgdg-centos93-9.3- 1.noarch.rpm

对CentOS 6.x 64bit:

    rpm -Uvh

对CentOS 7 64bit:

    rpm -Uvh

对于其它的发行版,可查看以下链接并建立库:

 

使用以下命令来更新库:

      yum update 

使用以下命令来安装PostgreSQL:

yum install postgresql93-server postgresql93-contrib 

使用以下命令来初始化PostgreSQL数据库:

在CentOS 6.x 系统中:

service postgresql-9.3 initdb

在CentOS 7系统中:

/usr/pgsql-9.3/bin/postgresql93-setup initdb 

然后启动PostgreSQL服务并使之开机自启:

在CentOS 6.x 系统中:

service postgresql-9.3 start

      chkconfig postgresql-9.3 on 

在CentOS 7系统中:

systemctl enable postgresql-9.3

    systemctl start postgresql-9.3 

2.调整Iptables/Firewall

接下来调整防火墙出站规则:

在CentOS 6.x系统中:

    vi /etc/sysconfig/iptables 

并添加以下行

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 

退出并保存文件。重启iptables服务:

 service iptables restart 

在CentOS系统中:

    firewall-cmd --permanent –add-port=5432/tcp

    firewall-cmd --permanent –add-port=80/tcp

    firewall-cmd --reload 

3.访问PostgreSQL常用的命令提示符

默认情况下数据库名和用户名都是postgres。切换至用户以执行相关操作:

    su – postgres

输入以下命令登陆:

    psql

会有以下样例输出:

    psql (9.3.5)

Type "help" for help.

Postgres=# 

可通过输入\q退出postgresql返回命令终端: 

4.设置用户密码

登陆至postgres命令提示符界面

su – postgres 

psql 

然后使用命令设置密码

postgres=# \password postgres

Enter new password:

Enter it again:

postgres=# \q

输入命令以建立PostgreSQL系统管理工具

postgres=# CREATE EXTENSION adminpack;

CREATE EXTENSION 

5.创建用户和数据库

例如:用户名:senthil    密码:centos  数据库名:mydb

转到postgres用户

su – postgres

创建用户senthil

$ createuser senthil

创建数据库

$ createdb mydb 

现在登陆至psql提示符界面,为用户senthil设置密码及授权对数据库mydb的访问:

$ psql 

psql (9.3.5)

Type "help" for help. 

postgres=# alter user senthil with encrypted password 'centos';

ALTER ROLE 

postgres=# grant all privileges on database mydb to senthil;

GRANT

postgres=# 

6.删除用户和数据库

首先转到postgres界面

su – postgres

输入命令

$ dropdb <database-name>

删除用户名可输入

$ dropuser <user-name> 

7.配置PostgreSQL-MD5认证

MD5认证需要客户端提供一个MD5-encrypted 密码以便身份验证。你需要编辑 /var/lib/pgsql/9.3/data/pg_hba.conf文件:

vi /var/lib/pgsql/9.3/data/pg_hba.conf

添加或修改的行如下:

[...]

# TYPE  DATABASE          USER    ADDRESS              METHOD

# "local" is for Unix domain socket connections only

local        all      all                     md5

# IPv4 local connections:

host        all      all    127.0.0.1/32      md5

host        all      all    192.168.1.0/24    md5

# IPv6 local connections:

host        all      all    ::1/128          md5

[...]

重启postgresql服务以应用更改

在CentOS 6.x系统中

service postgresql-9.3 restart 

在CentOS 7系统中

systemctl restart postgresql-9.3 

8.配置PostgreSQL-Configure TCP/IP

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/0a4afab6784d07359a47986ae4b555b7.html