一、环境

VM虚拟机

NAME="Ubuntu"
VERSION="12.04.4 LTS, Precise Pangolin"

二、过程

 1.安装make

# apt-get install make
# make --version
GNU Make 3.81
Copyright (C) Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. This program built for i686-pc-linux-gnu

现在可以省略不装

2.获取源码

但是现在已经有现成的二进制安装包了,而且根据不同的系统给出了安装方法。http://www.postgresql.org/download/

源代码在File Browser上,或者直接从版本控制仓库获取,就是从git上获取。用源码安装的操作文档在这。http://www.postgresql.org/docs/current/static/installation.html

打开看一下ubuntu选项的页面说了些啥,http://www.postgresql.org/download/linux/ubuntu/。一堆英文大概意思就是说Ubuntu已经默认包含了PostgreSQL,现在可以用apt-get来安装,如果你Ubuntu上的pgsql版本不是你想要的,可以用PostgreSQL Apt 仓库来整合补丁,然后下面是基本操作步骤,更多Apt相关的信息资料见wiki,https://wiki.postgresql.org/wiki/Apt

wiki中说是PGDG这个小组在支持维护APT repository,他们致力于building PostgreSQL server packages as well as extensions and modules packages on several Debian/Ubuntu releases for all PostgreSQL versions supported。就是给不同的发行版发布PostgreSQL及其相关的包。下面是一段快速入门的安装步骤,就按着wiki来好了。

3.安装

添加源,更新源

# sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
# apt-get update
PS:这个变量可以获取版本代号
# echo $(lsb_release -cs)
precise
# cat /etc/apt/sources.list.d/pgdg.list
deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main

更新好源之后,可以搜索到各个版本的postgresql,大概看了下,8.2的也有,最新的是9.5

# apt-cache search postgresql-|grep 'object-relational'|less
postgresql-9.1 - object-relational SQL database, version 9.1 server
postgresql-8.4 - object-relational SQL database, version 8.4 server
postgresql-8.2 - object-relational SQL database, version 8.2 server
postgresql-8.3 - object-relational SQL database, version 8.3 server
postgresql-9.0 - object-relational SQL database, version 9.0 server
postgresql-9.2 - object-relational SQL database, version 9.2 server
postgresql-9.3 - object-relational SQL database, version 9.3 server
postgresql-9.4 - object-relational SQL database, version 9.4 server
postgresql-9.5 - object-relational SQL database, version 9.5 server

安装更新wget和证书

# sudo apt-get install wget ca-certificates
...省略...
正预备替换 ca-certificates 20111211 (使用 .../ca-certificates_20141019ubuntu0.12.04.1_all.deb) ...
正在解压缩将用于更替的包文件 ca-certificates ...
正预备替换 wget 1.13.4-2ubuntu1 (使用 .../wget_1.13.4-2ubuntu1.2_i386.deb) ...
正在解压缩将用于更替的包文件 wget ...
正在处理用于 man-db 的触发器...
正在处理用于 install-info 的触发器...
正在设置 ca-certificates (20141019ubuntu0.12.04.1) ...
Updating certificates in /etc/ssl/certs... 38 added, 17 removed; done.
Running hooks in /etc/ca-certificates/update.d....done.
正在设置 wget (1.13.4-2ubuntu1.2) ...
# wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
OK

安装PostgreSQL,暂时先装个9.2来练手

# sudo apt-get install postgresql-9.2
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会安装下列额外的软件包:
libpq5 pgdg-keyring postgresql-client-9.2 postgresql-client-common postgresql-common ssl-cert
建议安装的软件包:
oidentd ident-server locales-all postgresql-doc-9.2 openssl-blacklist
下列【新】软件包将被安装:
libpq5 pgdg-keyring postgresql-9.2 postgresql-client-9.2 postgresql-client-common postgresql-common ssl-cert
升级了 个软件包,新安装了 个软件包,要卸载 个软件包,有 个软件包未被升级。
需要下载 , kB 的软件包。
解压缩后会消耗掉 22.6 MB 的额外空间。
...
......省略下载,解压缩过程
...
正在设置 libpq5 (9.4.-.pgdg12.+) ...
正在设置 pgdg-keyring (2014.1) ...
Removing apt.postgresql.org key from trusted.gpg: OK
Importing apt.postgresql.org key: OK
正在设置 postgresql-client-common (.pgdg12.+) ...
正在设置 postgresql-client-9.2 (9.2.-.pgdg12.+) ...
update-alternatives: 使用 /usr/share/postgresql/9.2/man/man1/psql..gz 来提供 /usr/share/man/man1/psql..gz (psql..gz),于 自动模式 中。
正在设置 ssl-cert (1.0.28ubuntu0.) ...
正在设置 postgresql-common (.pgdg12.+) ...
Adding user postgres to group ssl-cert Creating config file /etc/postgresql-common/createcluster.conf with new version Creating config file /etc/logrotate.d/postgresql-common with new version
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
en_us
Removing obsolete dictionary files:
* No PostgreSQL clusters exist; see "man pg_createcluster"
正在设置 postgresql-9.2 (9.2.-.pgdg12.+) ...
Creating new cluster 9.2/main ...
config /etc/postgresql/9.2/main
data /var/lib/postgresql/9.2/main
locale zh_CN.UTF-
port
update-alternatives: 使用 /usr/share/postgresql/9.2/man/man1/postmaster..gz 来提供 /usr/share/man/man1/postmaster..gz (postmaster..gz),于 自动模式 中。
* Starting PostgreSQL 9.2 database server [ OK ]
正在处理用于 libc-bin 的触发器...
ldconfig deferred processing now taking place

三、登录准备

1.配置

PostgreSQL刚安装好后默认新建了postgres用户和postgres数据库角色(superuser),两者同名外并没有关系,在服务器端要借助psql工具来登录数据库,如果当前用户是root,则运行psql命令会默认使用root为登录名,但显然数据库中是没有root这个角色的,所以可以看出系统用户若是和数据库中存在的角色同名只是带来一些操作上的方便而已,如postgres。

登录方法一,用postgres用户登录

# su postgres         --root直接切换到postgres用户
$ psql             --psql默认以运行该命令的linux用户的名字为登录sql用的用户名,所以会以postgres这个角色登陆
psql (9.2.)
输入 "help" 来获取帮助信息. postgres=#          --登录后显示的提示符:角色名=[#(superuser)|$(user)] $ sudo -u postgres psql   --通过sudo,以postgres的身份去运行psql,后面原理同上

方法二,需要修改pg_hba.conf,而修改这个文件又需要root

$ psql -U postgres -d postgres -h 127.0.0.1 [-p 端口号,默认5432]

方法三,这个还有一种快捷的写法,省去-U 和-d 这样最方便

$ psql -h 127.0.0.1  postgres(库名) postgres(用户名)

方法四,通过环境变量设置默认的登录方式,在家目录的.bashrc中加入,然后重新登录或执行source .bashrc ,之后可省去psql参数直接登录了

export PGDATABASE=yun
export PGUSER=postgres
export PGHOST=127.0.0.1
#export PGPORT=5432
$ psql            
psql (9.2.13)
输入 "help" 来获取帮助信息.

登录后就给角色改个密码

postgres#\password postgres

2.远程

为了完成远程连接工具登录数据库要修改两个文件,postgresql.conf 和 pg_hba.conf

# find / -name postgresql.conf
/etc/postgresql/9.2/main/postgresql.conf
# cd /etc/postgresql/9.2/main/
# l
environment pg_ctl.conf pg_hba.conf pg_ident.conf postgresql.conf start.conf

postgresql.conf 监听所有IP,默认端口,开启日志收集,每天一个新日志,还有很多不懂的参数可以调。

listen_addresses = '*'          # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
port = # (change requires restart)
logging_collector = on # Enable capturing of stderr and csvlog
# into log files. Required to be on for
# csvlogs.
# (change requires restart)
log_directory = 'pg_log' # directory where log files are written,
# can be absolute or relative to PGDATA
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' # log file name pattern,
# can include strftime() escapes
log_truncate_on_rotation = off # If on, an existing log file with the
# same name as the new log file will be
# truncated rather than appended to.
# But such truncation only occurs on
# time-driven rotation, not on restarts
# or size-driven rotation. Default is
# off, meaning append to existing files
# in all cases.
log_rotation_age = 1d # Automatic rotation of logfiles will
# happen after that time. disables.
log_rotation_size =      # Automatic rotation of logfiles will
# happen after that much log output.
# disables.

pg_hba.conf 加入自己的地址,全部是0.0.0.0/0

# IPv4 local connections:
host all all 127.0.0.1/ md5 --服务器本地,要密码,若是 trust 就不用密码
host all      all    192.168.152.1/  md5 --允许远程的地址,要密码

重启postgresql服务,再用pgAdminIII设置一下地址,端口,用户名称,密码,就可以成功连接了

PostgreSQL-安装9.2的更多相关文章

  1. Linux下apache+phppgadmin+postgresql安装配置

    Linux下apache+phppgadmin+postgresql安装配置 操作系统:CentOS 安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstri ...

  2. CentOS7 PostgreSQL安装

    CentOS7 PostgreSQL安装 CentOS7 PostgreSQL安装 Install 安装 使用yum安装 yum install http://yum.postgresql.org/9 ...

  3. Ubuntu PostgreSQL安装和配置

    一.安装 1.安装 使用如下命令,会自动安装最新版,这里为9.5 sudo apt-get install postgresql 安装完成后,默认会: (1)创建名为"postgres&qu ...

  4. PostgreSQL安装详细步骤(windows)

    原文地址:http://blog.chinaunix.net/uid-354915-id-3498734.html PostgreSQL安装:一.windows下安装过程安装介质:postgresql ...

  5. CentOS7 PostgreSQL 安装

    PostgreSQL安装 安装使用yum安装 (找源 http://yum.postgresql.org/) yum install https://download.postgresql.org/p ...

  6. windows下postgresql安装失败解决方法:无法运行getlocales.exe

    今天要安装postgresql但是安装的时候出现错误 Unknown error while running C:\Users\jinjin\AppData\Local\Temp\postgresql ...

  7. PostgreSQL安装详细步骤windows

    PostgreSQL安装:一.windows下安装过程安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程非常简单,过程如下:1.开始安装: 2.选择程序安装目录 ...

  8. windows下postgreSQL安装与启动

    转:https://www.yiibai.com/postgresql/install-postgresql.html https://blog.csdn.net/irainreally/articl ...

  9. 【CentOS】PostgreSQL安装与设定

    本教程适合Centos6.7或者RedHat. PostgreSQL安装 1.Postgresql安装包确认 yum list postgresql* postgresql-server.x86_64 ...

  10. PostgreSQL安装和使用

    青岛OJ系统用的关系型数据库是PostgreSQL,为此对PostgreSQL大致了解下. 今天的主要话题围绕下面两个方面: PostgreSQL安装 PostgreSQL使用 一.PostgreSQ ...

随机推荐

  1. 2016暑假多校联合---Counting Intersections

    原题链接 Problem Description Given some segments which are paralleled to the coordinate axis. You need t ...

  2. Java在方法作用域内创建的内部类

    在方法作用域内创建的内部类,用来实现一个接口 /** * Created by xfyou on 2016/11/3. * Java内部类演示 */ public class Parcel3 { pu ...

  3. GJM : 数据结构 - 轻松看懂机器学习十大常用算法 [转载]

     转载请联系原文作者 需要获得授权,非法转载 原文作者将享受侵权诉讼 文/不会停的蜗牛(简书作者)原文链接:http://www.jianshu.com/p/55a67c12d3e9 通过本篇文章可以 ...

  4. 基本I/O模型与Epoll简介

    5种基本的I/O模型:1)阻塞I/O ;2)非阻塞I/O; 3)I/O复用(select和poll);4)信号驱动I/O(SIGIO);5)异步I/O(POSIX.1的aio_系列函数). 操作系统中 ...

  5. JPA persistence

    Play provides a set of very useful helpers to simplify the management of your JPA entities. Note tha ...

  6. 使用coding、daocloud和docker打造markdown纯静态博客

    说起独立博客的技术演变,从数据库到纯文本放git是一大进步,从HTML到markdown又是一大进步. 解析技术有没有进步呢?既然markdown是纯文本了,再用PHP/Python/Ruby去实时解 ...

  7. Elastic Image Slider 带缩略图功能的幻灯片

    今天我们要为您展示如何创建一个简单的弹性幻灯片,带有缩略图预览功能.Elastic Image Slider 这款幻灯片能够自动调整以适应到其父容器,我们可以通过幻灯片使用缩略图预览或幻灯片的自动播放 ...

  8. 【精心推荐】几款极好的 JavaScript 文件上传插件

    文件上传功能作为网页重要的组成部分,几乎无处不在,从简单的单个文件上传到复杂的批量上传.拖放上传,需要开发者花费大量的时间和精力去处理,以期实现好用的上传功能.这篇文章向大家推荐几款很棒的 JavaS ...

  9. Icon Font浅谈

    这周继续在弄hybird app 的 UI框架的重构,进行到了编写换肤功能的阶段,而在做换肤之前,我想应该先弄一套框架内置的图标. 而图标无非就是两种做法: 1.图片 使用图片很正常,但是有缺陷的. ...

  10. AdaBoost

    一直想写Adaboost来着,但迟迟未能动笔.其算法思想虽然简单"听取多人意见,最后综合决策",但一般书上对其算法的流程描述实在是过于晦涩.昨日11月1日下午,邹博在我组织的机器学 ...