PostgreSQL 快速入门
在Ubuntu系统中怎样安装和配置PostgreSQL服务器
介绍
PostgreSQL是一个强大的关系型数据库管理系统,它按照BSD许可[1]发行。PostgreSQL包含很多高级的特性,拥有良好的性能和很好的适用性。
PostgreSQL绑定了很多种编程语言,例如 C, C++, Python, Java, PHP, Ruby等 ,它可以操作很多东西,从简单的Web应用程序到拥有数百万条记录的庞大数据库。
安装
你可以使用命令行安装PostgreSQL,输入:
sudo apt-get install postgresql
pgAdmin III 是一个方便的PostgreSQL图形客户端,它很适合初学者,可以在终端下输入如下命令来安装:
sudo apt-get install pgadmin3
你还可以通过系统->系统管理->新立德包管理器来安装这些包。
服务器基本设置
启动
sudo /etc/init.d/postgresql start
sudo /etc/init.d/postgresql stop
设置密码
安装完毕,我们需要更改postgres用户的密码,否则我们就没法使用这个数据库服务器。以postgres这个系统用户的身份运行psql命令,在终端中输入如下:
sudo su postgres -c psql template1
这时候会出现新的提示符,输入下面两个命令,用新密码替换 <***password***>:
ALTER USER postgres WITH PASSWORD ' <***password***> ';
设置 postgres 用户的密码
sudo passwd postgres
而后输入自己的密码
创建数据库
创建第一个数据库,我们把它命名为"mydb",先输入:
su postgres
转入 postgres 用户.
用这样的方试会报错
sudo su postgres -c createdb mydb
转为 postgres 用户登陆后,执行
postgres -c createdb mydb
使用pgAdmin III图形界面客户端
要了解PostgreSQL能干些什么,你首先要学会使用一个图形界面的客户端,在终端中输入:
pgadmin3
你现在停留在pgAdmin III的主界面,点击 "添加数据库连接" 按钮(在左上方)。弹出一个新的对话框,输入地址127.0.0.1,服务器描述,默认数据库"mydb" 和你的密码。
==================================我是分割线====================================
为了能远程使用postgresql数据库,比如说我要在网络上另外一台Windows电脑上使用pgAdmin3来管理使用该Postgresql服务器,您就需要进行一些修改,这些修改主要包括两方面的修改:
一是修改Postgresql的两个配置文件,二是修改数 据库的一些用户权限;
1. 修改配置文件;
注:记得修改任何东西之前都需要备份一下;
1.1 postgresql.conf;
首先我们需要修改Postgresql的配置文件postgresql.conf,该文件在数据目录/etc/postgresql/8.2/main/下,终端下执行:
root@xiaop-laptop:/home/xiaop# vim /etc/postgresql/8.2/main/postgresql.conf
将其中的一句:
listen_address=’localhost’
前面的注释#去掉,并把’localhost’该为’*’;
1.2 pg_hba.conf;
然后我们再来修改Postgresql的配置文件pg_hba.conf,该文件在数据目录/etc/postgresql/8.2/main/下,终端下执行
root@xiaop-laptop:/home/xiaop# vim /etc/postgresql/8.2/main/pg_hba.conf
在文件后面加一句:
host all all 192.168.1.0/24 password
这句的意思是:同网络中192.168.1.*的机器可以以密码的形式使用所有的数据库。更具体的参数意义直接看该配置文件中的注释就可以了;
或者:
host all all 192.168.0.88/32 md5
这句的意思是:192.168.0.88这个IP可以通过网络远程访问服务器
这里一定要配置正确,否则无法在远程连接postgresql数据库。
1.3 重新启动postgresql服务器;
root@xiaop-laptop:/home/xiaop# /etc/init.d/postgresql-8.2 restart
2. 配置用户权限;
这里介绍一些数据库用户权限的简单配置,以下是在psql中使用:
2.1 创建一个用户;
xiaop=# CREATE USER test1 ;
CREATE ROLE
2.2 创建一个数据库data1,属主为test1;
xiaop=# CREATE DATABASE data1 owner test1;
CREATE DATABASE
2.3 创建一个数据表;
xiaop=# CREATE TABLE test11() ;
CREATE TABLE
2.4 修改数据表的属主;
xiaop=# ALTER TABLE test11 OWNER TO test1;
ALTER TABLE
现在您便可以在局域网内的其他电脑使用其他postgresql客户端工具,以用户名test1打开data1数据库了。
3. 关于本文;
本文大部分资料都是参照中文文档,目的是让兄弟们查找方便一些,详细的东西在中文文档都有,多谢各位弟兄们指点 :)
4. 更新日志;
5. 参考文档;
《PostgreSQL 8.1 中文文档》
6. 相关文档;
《PostgreSQL安装和简单使用》
《Postgresql备份和恢复------SQL转储篇》
《PostgreSQL数据库用户认证》
《PostgreSQL数据库的日常维护工作》
还有可能是电脑防火墙的问题