`
liyanboss
  • 浏览: 140281 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

postgresql的安装

阅读更多

postgresql是自由软件阵营中的一款很好的数据库软件,就把它作为我突入数据库领域的突破口吧
今天先装上看看
1. 到官方网站 www.postgresql.org下载安装文件,其中文官网为www.pgsqldb.org,有很多中文文档,很不错。
2. 下载解压后正常安装
       ./configure
       make
       make check         (需要用普通用户权限执行)
       make install
       默认安装路径为/usr/local/pgsql
3. 添加用户postgres为默认的超级用户
4. 利用系统命令,添加共享库目录。
        /sbin/ldconfig /usr/local/pgsql/lib
5. 设置环境变量,添加postgresql的执行目录/usr/local/pgsql/bin
6. 利用超级用户postgres初始化数据库
       initdb -D /usr/local/pgsql/data
       注:1. data目录需要已经存在,对于第一次安装,需要先创建data目录,并将owner设置为postgresql。
              2. 可设置环境变量PGDATA=/usr/local/pgsql/data来代替-D选项,为用户postgres设置就可以了
7. 此时,可以启动postgresql数据库了,要用用户postgres启动
       pg_ctl start -l LOGFILE  (其实就是完成了功能 postmaster -D /usr/local/pgsql/data > logfile 2>&1 &)
8. 使数据库随开机自运行
       cp 解压包中的
contrib/start-scripts/linux到/etc/init.d/postgresql
       使用命令chkconfig --add postgresql添加启动
9. 创建用户
       1. 超级用户postgres第一次登录时使用模板数据库template1
             psql -d template1
       2. 创建自己的默认数据库postgres
             create database postgres;
       3. 退出后登入自己的数据库,template1数据库永远不动
             \q
             psql
       4. 创建别的用户,赋于他创建数据库的权限
             CREATE USER kevinkw CREATEDB; (如果是createuser,则为超级用户权限
       5. 为普通用户创建数据库,也可由普通用户登入模板数据库自行创建
            
CREATE DATABASE kevinkw OWNER kevinkw;
10. 自此,postgresql数据库可正常使用。

分享到:
评论
2 楼 patrick212 2010-10-28  
长得太像我一张家口的兄弟了!!!
1 楼 liyanboss 2009-05-27  
如何使用免安装版本完全手动安装?

以 Windows XP SP2 默认环境进行手动安装为例,其他版本未经测试。自8.2版本起,PostgreSQL应广大普通用户的要求,允许以管理员帐号直接执行手动安装所有步骤,所以就更方便了。

执行下列步骤前,暂作以下假定:

    * PostgreSQL拟装在d:\postgresql
    * 数据库以后拟存放在d:\postgresql\data


首先下载 postgresql-8.3.0-2-binaries-no-installer.zip 最新版待用(下载地址:ftp://ftp.cn.postgresql.org/pub/postgresql/binary/v8.3.0/win32/ ),下列步骤达到手工安装好PostgreSQL,初始化数据库,将PostgreSQL注册为服务。

1、PostgreSQL.zip解压至d:\postgresql后,创建一个data目录;

2、新开一个cmd窗口,并切换目录: cd d:\postgresql\bin ;

3、initdb -D d:\postgresql\data -E UTF8 --locale=C

4、pg_ctl register -D d:\postgresql\data -Npgsql 即将postgres注册为服务,服务名为pgsql;


以下为可选步骤了:

5、net start pgsql即可启动postgresql,进行后续工作了;

6、createdb -E UTF8 testdb,创建测试数据库

7、psql testdb 进入交互方式,直接操作数据库;

另上述第3步及6步为避免以后可能发生的亚州大字符集的乱码问题,统一使用UTF8。


常见安装错误
PostgreSQL与/或其安装程序在启动时崩溃、不能正常启动或是启动后挂起

目前针对这一现象最主要的原因是防病毒软件和防火墙软件造成的。如果你的电脑上安装有防火墙软件,可以试着禁用它或是卸载它。如果你的电脑上安装有防病毒软件,你也必须禁止它对PostgreSQL用到目录的监控,如果这样还不能起作用,也许需要完全地从你的电脑中卸载它。

有一些关于nod32防病毒产品的特例情况,如果你使用这个产品,在其高级选项中,将“postmaster.exe”加入到它不处理程序列表中去,这样就可以解决这个问题。

也有一些关于Mcafee和Panda防病毒软件以及NetLimiter网络监控软件的特例情况报告,由于一些人能够使PostgreSQL与这些软件共同工作,因此对那些PostgreSQL与这些软件不能正常运行的情况没有特别的或是推荐的方案,问题表现出安装有一定的特殊性,有时需要卸载(或重安装)。

另外还有一个问题就是如果你安装了Cygwin,并且cygwin\bin目录在系统的搜索路径Path变量,在cygin目录下有一些与解释型语言(TCL、perl、python)相关的DLL文件可能含有BUG会导致安装程序或是安装好的PostgreSQL运行时挂起或崩溃,只要在运行安装程序前将cygwin\bin从系统路径中删除即可!


安装程序声称指定的帐号是管理员帐号,但(你认为)不是!

最大可能是你所指定的帐号是一个管理员帐号或是Power用户组帐号,但是你还未意识到这一点。安装程序会特别针对管理员组和Power用户组的成员进行检查。按照你原来的方法使用本地用户和工作组再操作一次 -- 打开管理员工作组,看一下有哪些成员。然后检查任何属于管理员级别的工作组(域中或本地组),同时也检查这些组的成员。PostgreSQL可以对嵌套的工作组设置进行深入的检查。


我收到一个类似 "the user has not been granted the requested logon type at this computer(用户没有被分配必需的登录权限)"的错误信息

首先确认所指定的PostgreSQL帐号有“作为服务程序登录”和“本地登录”的权限,“本地登录”的权限只是在安装时需要,安装完成后可以根据安全策略的需要删除此权限(权限的分配和删除可进入MMC程序的“本地安全策略”的子栏目,“本地登录”的权限是默认的,“作为服务程序登录”的权限正常情况下是由安装程序分配的)。

如果仍然存在此问题,打开“审核允许”权限(也在“本地安全策略”的子栏目中),同时也请通知我们,在这种情况下还需要什么权限。

注意,如果你的计算机是“域”中成员,你的安全策略设置也许是在域服务器上使用工作组安全策略来设定的。


在安装/运行initdb时,我收到一个权限错误信息

确认PostgreSQL的运行帐号有对安装的PostgreSQL目录有(合适的)权限。安装程序会设置安装目录的权限,但并不设置其父目录的权限。详见问题 2.5 可浏览所必须的权限信息。

相关推荐

Global site tag (gtag.js) - Google Analytics