postgresql安装配置

postgresql安装配置

一,什么是postgresql

PostgreSQL是以加州大学伯克利分校计算机系开发的 POSTGRES 版本 4.2 为基础的对象关系型数据库管理系统(ORDBMS),简称pgsql,它支持大部分 SQL 标准并且提供了许多其他现代特性:复杂查询 外键 触发器 视图 事务完整性 多版本并发控制 同样,PostgreSQL 可以用许多方法扩展,比如, 通过增加新的:数据类型 函数 操作符 聚集函数 索引方法 过程语言 并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL, 不管是私用,商用,还是学术研究使用。


二,安装postgresql

查看复制打印?
  1. [root@rudder ~]# yum search postgresql     //先找一下,server版会有多个,决定选择装哪个  
  2.   
  3. [root@rudder ~]# yum install postgresql postgresql-server  

三,配置postgresql

1,初始化数据库

a),错误用法

查看复制打印?
  1. [root@rudder data]# service postgresql initdb      //不管我用root用户,还是postgres都不行  
  2. Usage: /etc/init.d/postgresql {start|stop|status|restart|condrestart|condstop|reload|force-reload}  

我在找资料的时候,发现有很多页面都用上面这样的用法,我就觉得很奇怪,service命令,还能这么用。一试果然不行。会不会是pgsql版本不同造成,service postgresql initdb不能用呢?

查看复制打印?
  1. [root@rudder ~]# postgres --version   //我的版本  
  2. postgres (PostgreSQL) 8.1.23  

b),正确做法

查看复制打印?
  1. [root@rudder data]# mkdir -p /var/lib/pgsql/data      //创建pgsql的数据库目录  
  2. [root@rudder pgsql]# cd /var/lib/pgsql  
  3. [root@rudder pgsql]# chown postgres.postgres data     //改变目录的所属用户用组  
  4. [root@rudder pgsql]# su  postgres                     //切换到postgres,不然初始化不了  
  5. bash-3.2$ initdb -E UTF-8 -D /var/lib/pgsql/data --locale=en_US.UTF-8 -U postgres -W   //初始化数据库  
  6. The files belonging to this database system will be owned by user "postgres".  
  7. This user must also own the server process.  
  8.   
  9. The database cluster will be initialized with locale en_US.UTF-8.  
  10.   
  11. fixing permissions on existing directory /var/lib/pgsql/data ... ok  
  12. creating directory /var/lib/pgsql/data/global ... ok  
  13. creating directory /var/lib/pgsql/data/pg_xlog ... ok  
  14. creating directory /var/lib/pgsql/data/pg_xlog/archive_status ... ok  
  15. creating directory /var/lib/pgsql/data/pg_clog ... ok  
  16. creating directory /var/lib/pgsql/data/pg_subtrans ... ok  
  17. creating directory /var/lib/pgsql/data/pg_twophase ... ok  
  18. creating directory /var/lib/pgsql/data/pg_multixact/members ... ok  
  19. creating directory /var/lib/pgsql/data/pg_multixact/offsets ... ok  
  20. creating directory /var/lib/pgsql/data/base ... ok  
  21. creating directory /var/lib/pgsql/data/base/1 ... ok  
  22. creating directory /var/lib/pgsql/data/pg_tblspc ... ok  
  23. selecting default max_connections ... 100  
  24. selecting default shared_buffers ... 1000  
  25. creating configuration files ... ok  
  26. creating template1 database in /var/lib/pgsql/data/base/1 ... ok  
  27. initializing pg_authid ... ok  
  28. Enter new superuser password:     //超级管理员密码  
  29. Enter it again:                   //确认密码  
  30. initdb: removing contents of data directory "/var/lib/pgsql/data"  

这样就初始化就好了。

2,修改/var/lib/pgsql/data/postgresql.conf

查看复制打印?
  1. listen_addresses = '*'     //监听所有ip的连接,默认是本机  
  2. port = 5432             //这个不开也行,默认就是5432端口  

pgsql是我没有找到web版的管理工具,所以开发时肯定要用pgadmin远程连接的。所以权限是要放大,listen_addresses = '*' 全部放开,当然也可以,设置局域网的IP段。

3,修改/var/lib/pgsql/data/pg_hba.conf

查看复制打印?
  1. # TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD  
  2. "local" is for Unix domain socket connections only  
  3.  local   all         all                               trust  
  4. # IPv4 local connections:  
  5.  host    all         all         127.0.0.1/32          md5  
  6.  host    all         all         0.0.0.0/0             md5   //这一行我加的,所有IP和用户,密码对都可以连接  
  7. # IPv6 local connections:  
  8.  host    all         all         ::1/128               md5  

三,启动并查看

查看复制打印?
  1. [root@rudder data]# /etc/init.d/postgresql start   //启动  
  2. Initializing database: [  OK  ]  
  3. Starting postgresql service: [  OK  ]  
  4.   
  5. [root@rudder data]# netstat -tpnl |grep 5432       //查看  
  6. tcp        0      0 127.0.0.1:5432              0.0.0.0:*                   LISTEN      27806/postmaster  

四,用postgres用户登录,并改密码

查看复制打印?
  1. [root@rudder data]# su postgres  //切换用户  
  2. bash-3.2$ psql -U postgres    //连接pgsql server  
  3. Welcome to psql 8.1.23, the PostgreSQL interactive terminal.  
  4.   
  5. Type:  \copyright for distribution terms  
  6.        \h for help with SQL commands  
  7.        \? for help with psql commands  
  8.        \g or terminate with semicolon to execute query  
  9.        \q to quit  
  10.   
  11. postgres=# Alter USER postgres WITH PASSWORD '***密码**';  //添加密码  
  12. ALTER ROLE        //出现这个才算成功,第一次操作没成功,pgadmin连不上  
  13. postgres-# \q     //退出  

五,pgadmin客户端工具连接pgsql server

1,下载地址:http://www.postgresql.org/ftp/pgadmin3/release/v1.16.1/win32/

2,安装就不说了,傻瓜似操作,看一下连接图和连接成功图

pgadmin 连接框

pgadmin 连接框

pgadmin连接成功了

pgadmin连接成功了

posted on 2013-07-13 21:42 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/ruiy/p/postgresql.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/462313.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[转]Messenger:使用消息的跨进程通信

本文转自:http://xwangly.iteye.com/blog/1109424 Messenger:信使 官方文档解释:它引用了一个Handler对象,以便others能够向它发送消息(使用mMessenger.send(Message msg)方法)。该类允许跨进程间基于Message的通信(即两个进程间可以通过Mess…

python 编程模型

数据模型(译) image.png1 对象(object)、类型(type)和值(value) python中所有的数据都是通过对象(object)或者对象之间的关系来表示 每个对象(obj…

R中统计假设检验总结(一)

先PS一个:考虑到这次的题目本身的特点 尝试下把说明性内容都直接作为备注写在语句中 另外用于说明的部分例子参考了我的教授Guy Yollin在Financial Data Analysis and Modeling with R这门课课件上的例子 部分参考了相关package的帮助文档中的例子 下面正题- 戌 >…

改造MUC实现Openfire群

我的Openfire群实现思路: 1、群和群成员,要保存到表中。 2、拉取群列表和群成员列表,均从DB中查询返回。 3、抛弃老外的“进房间,要发Presence ”。只要此人一上线,就模似一个Presence进行joinRoom,进入他的…

如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通信

http://blog.csdn.net/whuancai/article/details/11994341 如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通信 原文出自:http://blog.csdn.net/monkey_d_meng/article/details/5894910 尊重作者:MONKEY_D_MENG 最近一段时间,由…

14 Scroll 滚动搜索

Scroll的用法:第一次搜的时候,要指定 快照保留时间1min,分页的大小:2条/页;对于第一次搜索,ES会返回一个这个scroll的id;下次再搜的时候,就带着这个scrollid去搜就行了,不…

VS2008中使用JSONCPP方法小结

http://sourceforge.net/projects/jsoncpp/?sourcetyp_redirect C要使用JSON来解析数据,一般采用jsoncpp. 下载jsoncpp后,按ReadMe文档的说法是要先安装的,但是安装比较麻烦。然而事实上,我们并不需要安装,就可以直接…

如何在Windows下编译OpenSSL

OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用。对于一般的开发人员而言,在 http://slproweb.com/products/Win32Op…

《团队名称》第八次团队作业:Alpha冲刺day5

项目内容这个作业属于哪个课程2016计算机科学与工程学院软件工程(西北师范大学)这个作业的要求在哪里实验十二 团队作业8—软件测试与ALPHA冲刺团队名称快活帮作业学习目标 (1)掌握软件测试基础技术。 (2)学习迭代式增量软件开发过…

(转)C# 把我所积累的类库全部分享给博友(附件已经上传)

http://files.cnblogs.com/LsGW/Common.zip转载于:https://www.cnblogs.com/meetrice/archive/2012/01/02/2310428.html

前端的小图标获取

搜索iconfont,里面有很多图标,鼠标移到想要的图标上,然后点击一个类似购物车的图标,然后添加到项目,下载到本地,有一个使用指南的html,然后参照上面的改就好。 把下载好的.css和.eot文件拖到css…

$JavaScript(3)

41、渐进增强和优雅降级 渐进增强 :针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。 优雅降级 :一开始就构建完整的功能,然后再针对低版本浏…

转:Yupoo(又拍网)的系统架构

Yupoo!(又拍网) 是目前国内最大的图片服务提供商,整个网站构建于大量的开源软件之上。以下为其使用到的开源软件信息: 操作系统:CentOS、MacOSX、Ubuntu 服务器:Apache、Nginx、Squid 数据库:…

浏览器搜索功能的使用

浏览器搜索功能的使用 直接在地址栏中搜索你需要的内容 用浏览器的搜索栏进行搜索 用双引号 " " 进行搜索 转载于:https://www.cnblogs.com/GaoNa/p/11061066.html

有趣的反直觉的“三门问题”

————— 第二天 ————— ———————————— 如何进行分析呢?我们不妨回到问题的起点,也就是参与者即将进行初次选择,主持人还没有打开一扇空门的时候。 从上图可以看出,我们总共面临着6种不同的子局面。这些子局面的…

转使用Moq让单元测试变得更简单

【ASP.Net MVC3 】使用Moq让单元测试变得更简单 前几天调查完了unity。现在给我的任务是让我调查Moq。 以下是自己找了资料,总结并实践的内容。如果有表述和理解错误的地方。恳请指正。 什么是Moq? Moq(英语发音是Mock-you 或者只是mock&…

Web Service实现分布式服务的基本原理

简单的说, 就是客户端根据WSDL 生成 SOAP 的请求消息, 通过 HTTP 传输方式(也可以是其它传输方式, 如 FTP 或STMP 等,目前 HTTP 传输方式已经成为 J2EE Web Service 的标准)传给对方, 服务方实现…

使用docker部署mysql主从复制集群

一、环境搭建 虚拟机环境:centos7 IP:192.168.37.134 用户名:root 密码:123 启动3个容器,一个是master,端口是3307,另外两个是slaver,端口是3308和3309 docker pull mysql:5.7docker run -p …

特殊的质数肋骨

特殊的质数肋骨 时间限制: 0 Sec 内存限制: 128 MB题目描述 农民约翰的母牛总是生产出最好的肋骨。你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们。 农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组成一个质…

学滑冰

为什么80%的码农都做不了架构师?>>> http://www.cnr.cn/wcm/zhuanti/harb/bxyd/t20041230_163420.html 学滑冰(一) 到冰场上穿冰刀奔驰豪情一番,真是今人激情万千,你会滑冰吗?如果你还不会滑冰…