快捷搜索:   nginx

Ubuntu PostgreSQL的一般安装

最近使用PostgreSQL的时候很多,于是学习了一些方法,分亨出来:

在Ubuntu下安装软件是一种享受,安装PostgreSQL也不例外:

$sudo apt-get install postgresql

这样就安装好了PostgreSQL 8.3了,该安装将自动创建一个缺省的数据库集群(pgsqldb.org中的译法)“main”,且生成一个数据库超级postgres。

接下来就是要对数据库用户及权限进行设置了,首先要得到超级用户postgres的一个Shell,在这里可以通过下面的方式得到:

$sudo -u postgres sh

在这个Shell中创建一个同你用户相同的数据库用户,在这里我使用firehare,因为这也是我登录Ubuntu的用户名

$createuser -A -D -P firehare

然后为该用户创建一个数据库,在这里我以mydb为例

$createdb -O firehare mydb

注意以上操作都是在用户postgres的Shell中完成的,然后退出该用户Shell环境,进入自己用户的Shell中。

$exit

当然您也可以使用命令的简写方式:

sudo -u postgres createuser -A -D -P fireharesudo -u postgres createdb -O firehare mydb

现在做用firehare用户,你可以通过下面的命令连接到你的mydb数据库中了

$psql mydb

退出用/q

管理

您可以使用图形化软件 pgadmin3 来管理您的 PostgreSQL 数据库,可以使用以下命令来安装该软件:

$sudo apt-get install pgadmin3

安装完该软件之后,您可以点击“应用程序>系统工具>pgAdmin III”菜单来运行该程序。



配置Postgresql


现在我们需要重置“postgres”用户的密码。


sudo su postgres -c psql template1
template1=# ALTER USER postgres WITH PASSWORD ‘jaypei’;
template1=# \q

这样就修改了数据库中的密码,现在我们也需要在unix用户“postgres”这么作。

sudo passwd -d postgres
sudo su postgres -c passwd

然后输入跟之前一样的密码。

现在,我们就可以在数据库服务器上使用psql或者pgAdmin操作数据库了。

但是若想在pgAdmin中能够更好的记录日志和监视的华,在启动pgAdmin前需要建立PostgreSQL admin pack。打开命令行。

首先,我们需要编辑postgresql.conf:

sudo gedit /etc/postgresql/8.3/main/postgresql.conf

现在,我们需要修改“连接和权限”两行。

改变行:
#listen_addresses = ‘localhost’
修改为:
listen_addresses = ‘*’
和行:
#password_encryption = on
修改为:
password_encryption = on

保存并关闭gedit。


最后一步,我们必须设置谁才可以操作数据服务器,这一切都是在pg_hba.conf中完成的。

sudo gedit /etc/postgresql/8.3/main/pg_hba.conf

把以下内容复制到pg_hba.conf底部:

# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database
# super user can access the database using some other method.
# Noninteractive
# access to all databases is required during automatic maintenance
# (autovacuum, daily cronjob, replication, and similar tasks).
#
# Database administrative login by UNIX sockets
local all postgres ident sameuser
# TYPE DATABASE USER CIDR-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
# IPv6 local connections:
host all all ::1/128 md5
# Connections for all PCs on the subnet
#
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
host all all [ip address] [subnet mask] md5

在最后一行中,添加你的子网掩码(如255.255.255.0)和机器IP地址(如138.250.192.115). 如果要使用一个IP地址范围,只需要把最后一个数字用0替换,那么所有这个网段的IP都可以使用了。

重启服务器即可。

sudo /etc/init.d/postgresql-8.3 restart

现在可以在Ubuntu下使用PostgreSQL了。

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论