热门标签 | 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在初始化时自动创建的测试数据库。


推荐阅读
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 软件测试行业深度解析:迈向高薪的必经之路
    本文深入探讨了软件测试行业的发展现状及未来趋势,旨在帮助有志于在该领域取得高薪的技术人员明确职业方向和发展路径。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • 本文介绍如何使用JavaScript中的for循环来创建一个九九乘法表,适合初学者学习循环结构的应用。 ... [详细]
  • 高级缩放示例.就像谷歌地图一样.它仅缩放图块,但不缩放整个图像.因此,缩放的瓷砖占据了恒定的记忆,并且不会为大型缩放图像调整大小的图像.对于简化的缩放示例lookhere.在Win ... [详细]
  • 汇编语言:编程世界的始祖,连C语言都敬畏三分!
    当C语言还在萌芽阶段时,它首次接触到了汇编语言,并对其简洁性感到震惊。尽管汇编语言的指令极其简单,但它却是所有现代编程语言的基础,其重要性不言而喻。 ... [详细]
  • HTML前端开发:UINavigationController与页面间数据传递详解
    本文详细介绍了如何在HTML前端开发中利用UINavigationController进行页面管理和数据传递,适合初学者和有一定基础的开发者学习。 ... [详细]
  • 本文将详细探讨PHP中C的作用,并对比其他编程语言如Java和C的特点及其适用场景。 ... [详细]
  • 近年来,区块链技术备受关注,其中比特币(Bitcoin)功不可没。尽管数字货币的概念早在上个世纪就被提出,但直到比特币的诞生,这一概念才真正落地生根。本文将详细探讨比特币、以太坊和超级账本(Hyperledger)的核心技术和应用场景。 ... [详细]
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社区 版权所有