热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Windows系统安装配置PostgreSQL数据库图文教程

它提供了多版本并行控制,支持几乎所有SQL构件(包括子查询,事务和用户定义类型和函数),并且可以获得非常广阔范围的(开发)语言绑定(包括C,C++,Java,perl,tcl,和python)。本文介绍的是其在windows系统下的安装过程。一般说来,一个现代的与U
它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户定义类型和函数), 并且可以获得非常广阔范围的(开发)语言绑定 (包括 C,C++,Java,perl,tcl,和 python)。本文介绍的是其在windows系统下的安装过程。

一般说来,一个现代的与 Unix 兼容的平台应该就能运行 PostgreSQL。而如果在windows系统下安装,你需要 Cygwin 和cygipc 包。另外,如果要制作服务器端编程语言 PL/Perl,则还需要完整的Perl安装,包括 libperl 库和头文件。

在磁盘支持方面,需要65MB左右用于存放安装过程中的源码和大约15 MB的空间用于存放安装目录;一个空数据库大概需要25MB;然后在使用过程中大概需要在一个平面文本文件里存放同等数据量数据五倍的空间存储数据,如果你要运行回归测试,还临时需要额外的90MB空间。

第一步:从网上下载基于windows的Cygwin安装程序,双击打开。

第二步:选择安装类型。由于我们已将安装程序下载到了本地硬盘,故选择第三项,然后单击“下一步”。
    第三步:选择安装路径。一般按其默认即可。
    第四步:选择下载文件包在本机存放路径。请根据实际选择。
    接着会提示选择连接类型、下载站点、选择安装包(需要确定加上:cygrunsrv (category Admin) 、postgresql (category Database)),之后便开始下载包并安装cygwin了。

第一步:将cygserver 安装成NT服务并启动

  a.运行脚本:$ /usr/bin/cygserver-config
    b.在win2003中设置环境变量:CYGWIN=server
    c.重启win2003

  第二步:在win2003的DOS状态下,按下图所示新建用户帐户及密码
 



  第三步:在系统所在分区新建一文件夹

  例如:D:\cygwin\home\postgres

  第四步:更新文件: /etc/passwd

  使用命令:mkpasswd -l -u postgres >> /etc/passwd

  解释:    向/etc/passwd文件中加入用户postgres的信息

  第五步:新建存放数据的目录并设置postgres为该目录的所有者

    mkdir /usr/share/postgresql/data
    chown postgres /usr/share/postgresql
    chown postgres /usr/share/postgresql/data
第六步:配置用户权限

  在运行框内输入“secpol.msc”打开“本地安全设置”窗口,依次点击“本地策略”-“用户权限分配”,在右边窗口里找到“作为服务登录”,双击打开。
 


  在出现的窗口里单击“添加用户或组”添加一个名为“postgres”的用户。
 

    第七步:初始化数据区域

  注销原来的用户,改用postgres进入win2003后运行如下命令:
    initdb Cd /var/postgresql/data

  注意:PostgreSQL安装程序只能在NTFS分区中完成数据库的初始化工作,而PostgreSQL服务器程序自身和一些工具程序可以安装在任何分区中。如果为FAT分区格式,可以正常安装PostgreSQL,但不要进行数据库的初始化工作,只能待在安装完成后,在FAT分区上手动执行initdb.exe程序来进行,但安全性和可靠性就不能保证了,要想建立表空间也会失败。

  第八步:将postmaster(PostgreSQL的服务器)安装成NT服务并启动 

    使用命令:  cygrunsrv CI postmaster Cp /usr/bin/postmaster Ca “-d
/usr/share/postgresql/data CI” Cy cygserver Cs int Cu postgres -o

    命令解释:
 -I postmaster:新建一个名为postmaster的服务。
 -p /usr/bin/postmaster:应用程序路径为/usr/bin/postmaster。
 -a"-D /usr/share/postgresql/data -i":
postmaster 将目录 /usr/share/postgresql/data 做为数据目录,必须设置“-i”(TCP/IP 连接) 和“-D”参数。
 -y cygserver:指明postmaster依赖于cygserver
 -s int:发送信号 INT when terminated is run by the user (-u) postgres
 -o :在系统退出时停止服务

    注:更详细的参数说明可以使用命令:“cygrunsrv -h”以及“postmaster Chelp”
之后Cygrunsrv 将会让你输入两次密码。

  OK,经过以上配置后,即可使用命令“psql Cu postgres template1”登录postgresql数据库了。

  注:“template1”是Postgresql在初始化时自动创建的测试数据库。


推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 离线环境下的Python及其第三方库安装指南
    在项目开发中,有时会遇到电脑只能连接内网或完全无法联网的情况。本文将详细介绍如何在这种环境下安装Python及其所需的第三方库,确保开发工作的顺利进行。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • 本文将深入探讨PHP编程语言的基本概念,并解释PHP概念股的含义。通过详细解析,帮助读者理解PHP在Web开发和股票市场中的重要性。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
author-avatar
月下小野
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有