技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> MySQL --> Ubuntu下Postgresql-8.4安装及配置

Ubuntu下Postgresql-8.4安装及配置

浏览:3341次  出处信息

第一步:在Ubuntu下安装Postgresql

sudo apt-get install postgresql-8.4 postgresql-client-8.4 postgresql-contrib-8.4
以上指令安装服务端和命令行客户端psql。

/usr/lib/postgresql/8.4/              存放postgresql相关的二进制文件
/usr/lib/postgresql/8.4/bin/        可执行文件
/usr/lib/postgresql/8.4/lib/         共享库文件
/etc/postgres/8.4/main/              存放postgresql配置文文件
/var/lib/postgresql/                    postgres用户的主文件夹

第二步:修改PostgreSQL数据库的默认用户postgres的密码
PostgreSQL数据默认会创建一个postgres的帐号用户作为数据库的管理员,密码是随机的,所以:
首先,我们需要重置“postgres”用户的密码

命令行如下:
sudo -u postgres psql(或者sudo su postgres -c psql)―>运行psql,psql是一个标准的postgressql客户端
postgres=# ALTER USER postgres WITH PASSWORD ‘postgres’;―>修改postgres的密码为postgres,不要忘记添加分号(回车后分号之前的sql语句才会立即执行)
postgres=# \q―>退出

修改了数据库中的密码之后,我们还需要修改linux下的用户“postgres”的密码:设定成与数据库中postgres帐号相同的密码,即postgres。
sudo passwd -d postgres―――>删除密码
sudo -u postgres passwd(或者 sudo su postgres -c passwd)―->创建密码
然后输入跟之前一样的密码。

现在,我们就可以在数据库服务器上用 postgres帐号通过psql或者pgAdmin等等客户端操作数据库了(暂时还不能远程访问)。

第三步:修改PostgresSQL数据库配置实现远程访问
首先,我们需要编辑postgresql.conf
sudo gedit /etc/postgresql/8.4/main/postgresql.conf
现在,我们需要修改“连接和权 限”两行。
改变行:#listen_addresses = ‘localhost’ 修改为:listen_addresses = ‘*’
改变行:#password_encryption = on 修改为:password_encryption = on
保存并关闭gedit。

最后一步,我们必须设置谁才可以操作数据服务器,这一切都是在pg_hba.conf中完成的。
sudo gedit /etc/postgresql/8.4/main/pg_hba.conf
把以下内容添加到 pg_hba.conf底部:
# to allow your client visiting postgresql server
host all all 0.0.0.0 0.0.0.0 md5

解释一下最后一行:
host表示允许的类型是主机;
第一个all是允许的数据库名字;
第二个all是允许的用户;
第一个0.0.0.0是允许访问的ip address;
第二个0.0.0.0是允许访问的subnet mask;
最后的md5表示密码的加密方式,如果将md5改成trust则可以让指定范围的主机数据库的时候不需要提供密码。
关于ip address和subnet mask,你也可以修改为你的机器IP地址(如10.13.19.53)和子网掩码(如 255.255.255.255),这样就只有你自己的主机可以远程访问数据库了。 如果要使用一个IP地址范围,只需要把子网掩码设置成合适的值,如果子网掩码设置成0.0.0.0,则所有主机均可以访问数据库(IP可以任意设定),如果将md5改成trust则可以让指定范围的主机访问指定的数据库的时候不需要提供密码。

重启服务器,以上的配置就生效了:sudo /etc/init.d/postgresql-8.4 restart

第四步:创建用户和数据库
使用命令行创建用户和数据库
sudo -u postgres createuser -D -P mynewuser―->-D该用户没有创建数据库的权利,-P提示输入密码,后面的选项都可以省略,命令执行的时候会提示用户选择yes或者no
sudo -u postgres createdb -O mynewuser mydatabase―>-O设定所有者为mynewuser
或者使用psql创建用户和数据库
首先利用psql登录postgresql服务器:sudo -u postgres psql[ -U postgres -h 127.0.0.1]―->运行psql,后面[]中的内容可选,用于登录服务器,默认会登录本机;
然后在psql程序中创建用户和数据库:用户名和数据库名称加上引号后才区分大小写,否则会自动转换成小写:
create user “mynewuser” with password ‘mynewuser nocreatedb;
create database “mydatabase” with owner=mynewuser;

第五步:如何安装和使用pgAdmin3客户端操作postgresql数据库

首先安装图形客户端pgAdmin3,安装命令行:sudo apt-get install pgadmin3
然后运行客户端并连接数据库,直接上图:

建议继续学习:

  1. 配置Nginx+uwsgi更方便地部署python应用    (阅读:105399)
  2. Linux 下 PHP 5.2.x 连接 SQL Server 数据库 FreeTDS 配置笔记    (阅读:10101)
  3. nginx的配置文件    (阅读:8821)
  4. Emacs安装配置    (阅读:7304)
  5. 如何查看Linux 硬件配置信息    (阅读:5863)
  6. Centos yum 安装nginx+PHP-FPM+eAccelerator+mysql    (阅读:5609)
  7. Apache2中俩种设置PHP的异同    (阅读:5292)
  8. Linux(Ubuntu 10.04)上安装配置apache+php+mysql+phpmyadmin    (阅读:5002)
  9. 在FreeNAS/BSD搭建基于Nginx+FastCGI+MySQL+PHP的WebServer    (阅读:4752)
  10. 也谈PostgreSQL的同步配置(Slony)    (阅读:4606)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1