最近接触了postgresql的安装,和大家分享一下。

一、简 介

PostgreSQL 是一种非常复杂的对象-关系型数据库管理系统(ORDBMS),也是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统。有些特性甚至连商业数据库都不具备。这个起源于伯克利(BSD)的数据库研究计划目前已经衍生成一项国际开发项目,并且有非常广泛的用户。

二、三种安装过程

A. RPM包安装

1. 检查PostgreSQL 是否已经安装

rpm -qa|grep postgres

若已经安装,则使用rpm -e 命令卸载。

2. 下载RPM包

3. 安装PostgreSQL,注意安装顺序

# rpm -ivh postgresql92-libs-9.2.4-1PGDG.rhel6.i686.rpm

# rpm -ivh postgresql92-9.2.4-1PGDG.rhel6.i686.rpm

# rpm -ivh postgresql92-server-9.2.4-1PGDG.rhel6.i686.rpm

# rpm -ivh postgresql92-contrib-9.2.4-1PGDG.rhel6.i686.rpm

4. 初始化PostgreSQL库

PostgreSQL 服务初次启动的时候会提示初始化。

# service postgresql-9.2 initdb

5. 启动服务

# service postgresql-9.2 start

6. 把PostgreSQL 服务加入到启动列表

# chkconfig postgresql-9.2on

# chkconfig --list|grep postgres

7. 修改PostgreSQL数据库用户postgres的密码(注意不是linux系统帐号)

PostgreSQL数据库默认会创建一个postgres的数据库用户作为数据库的管理员,默认密码为空,我们需要修改为指定的密码,这里设定为’postgres’。

# su - postgres

$ psql

# ALTERUSER postgres WITH PASSWORD ‘postgres‘;

# select*from pg_shadow ;

B. yum 安装

1. 将刚才安装的PostgreSQL 卸载

# /etc/init.d/postgresql-9.2 stop  //停止PostgreSQL服务

//查看已安装的包

# rpm -qa|grep postgres

//卸载

# rpm -e postgresql92-server-9.2.4-1PGDG.rhel6.i686

# rpm -e postgresql92-contrib-9.2.4-1PGDG.rhel6.i686

# rpm -e postgresql92-9.2.4-1PGDG.rhel6.i686

# rpm -e postgresql92-libs-9.2.4-1PGDG.rhel6.i686

2. yum 安装

如果是默认yum 安装的话,会安装较低版本的PostgreSQL 8.4,这不符合我们的要求。

我们使用PostgreSQL Yum Repository 来安装最新版本的PostgreSQL。

2.1 安装PostgreSQL yum repository

# rpm -i http://yum.postgresql.org/9.2/RedHat/rhel-6-x86_64/pgdg-redhat92-9.2-7.noarch.rpm

2.2 安装新版本PostgreSQL

# yum install postgresql92-server postgresql92-contrib

2.3 查看安装

3. 初始化并启动数据库

配置文件:/var/lib/pgsql/data/pg_hba.conf

4. 测试

其他步骤如A方式。

C. 源码包安装

1、下载Postgresql源代码

2、解压该文件

tar xjvf postgresql-9.0.3.tar.bz2

3、进入解压后的目录

cd postgresql-9.0.3/

4、查看INSTALL

INSTALL文件中Short Version部分解释了如何安装postgresql的命令,Requirements部分描述了安装postgresql所依赖的lib,比较长,先 configure试一下,如果出现error,那么需要检查是否满足了Requirements的要求。

Short Version

./configuregmakesugmake installadduser postgresmkdir /usr/local/pgsql/datachown postgres /usr/local/pgsql/datasu - postgres/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &/usr/local/pgsql/bin/createdb test/usr/local/pgsql/bin/psql test

5、执行INSTALL文件中Short Version的命令,开始编译安装postgrepsql数据库。

./configure   --prefix=/usr/local/pgsql --with-perl --with-python --with-libxml --with-libxslt

configure: error: readline library not found

If you have readline already installed, see config.log for details on the

failure. It is possible the compiler isnt looking in the proper directory.

yum install -y readline-devel

(sudo apt-get install libreadline5-dev && sudo apt-get install zlib1g-dev)

configure: error: library ‘xslt‘ is required for XSLT support

yum install libxslt libxslt-devel

configure: error: header file  is required for Python

yum install python python-devel

configure: error: could not determine flags for linking embedded Perl.

yum install perl-ExtUtils-Embed

安装readline包之后,重新configure,成功。

6、make

7、make install

8、添加用户postgres

useradd postgres

9、创建数据库文件存储文件夹

mkdir /usr/local/pgsql/data

#mkdir /data/pgsql

10、改变先前创建的data目录的文件夹的权限

chown postgres /usr/local/pgsql/data

#chown postgres  /data/pgsql

11、切换用户

su - postgres

12、绑定数据库文件存储目录

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

#export PATH=$PATH:/usr/local/pgsql/bin/

#/usr/local/pgsql/bin/initdb -D  /data/pgsql

13、启动数据库

/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1

[1] 18635

#/usr/local/pgsql/bin/postgres -D  /data/pgsql  >logfile 2>&1

[1] 18635

14、创建数据库test

/usr/local/pgsql/bin/createdb test

15、连接到test数据库

/usr/local/pgsql/bin/psql test

psql (9.0.3)

Type "help" for help.

test=#

16、创建表table1

test=# create table table1 (

test(# id integer

test(# );

CREATE TABLE

test=#

17、向table1表中插入一条记录

test=# insert into table1 values(1);

INSERT 0 1

18、查询刚刚插入的记录

test=# select * from table1;

id

----

1

三、客户端安装

因为对于我们来说postgre应用范围很小,单纯去学他的命令行,对于我们的时间管理不是太合适。

所以我们可以去下载一个客户端,进行一些简单的操作,推荐navicat官网去下载postgresql客户端;

----------------------------------------------------------------------------------------

linux postgresql默认安装目录,postgresql - 三种安装方式(示例代码)相关推荐

  1. linux命令echo的实现,Linux echo命令的使用及三种实现方式

    先给大家介绍下linux中echo命令的使用 echo是打印变量的值或者给定的字符串, 比如,输入echo hello或者echo "hello"都是在控制台打印出hello单词 ...

  2. linux内核 struct page结构的三种存放方式

    目录 page struct的三种存放方式 1) FLATMEM 2) SPARSEMEM 3) SPARSEMEM_VMEMMAP 随着硬件能力的提升,系统内存容量变得越来越大.尤其是在服务器上,过 ...

  3. 安装 Go的三种安装方式

    Go的三种安装方式 Go有多种安装方式,你可以选择自己喜欢的.这里我们介绍三种最常见的安装方式: Go源码安装:这是一种标准的软件安装方式.对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码 ...

  4. C# 三种打印方式含代码

    一:C#代码直接打印pdf文件(打印质保书pdf文件) 引用: 代码注释很详细了. private void btn_pdf_Click(object sender, RoutedEventArgs ...

  5. 线程的三种创建方式以及代码实现

    线程和进程的概念 一个进程可以有多个线程 程序:是指令和数据的有序集合(静态的) 进程:是执行程序的一次执行过程(动态的),是系统资源分配的单位.在操作系统中运行的程序就是进程. 通常在一个进程中可以 ...

  6. 三位数最大公约数c语言,C语言求最小公倍数和最大公约数三种算法(经典)(示例代码)...

    把以前写的一些经验总结汇个总,方便给未来的学弟学妹们做个参考! --------------------------永远爱你们的:Sakura 最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们 ...

  7. grub安装的 三种安装方式

    1. 引言 grub是什么?最常态的理解,grub是一个bootloader或者是一个bootmanager,通过grub可以引导种类丰富的系统,如linux.freebsd.windows等.但一旦 ...

  8. Centos 6.8安装open***.三种认证方式

    Centos X64 6.8下安装Open***,三种认证方式 环境说明: 主机名称:open***01 安装版本为open***-2.3.11-1.el6.x86_64 相关资源下载连接如下: 链接 ...

  9. FPGA之道(41)HDL的三种描述方式

    文章目录 前言 三种描述方式 结构化描述方式 数据流描述方式 行为级描述方式 前言 常编写Verilog代码的就会知道,我们对于某一功能的描述,可以通过门电路来描述,也可以直接描述其功能等,这就牵扯到 ...

  10. css三种引入方式与标签选择器

    目录 css三种引入方式 选择器 标签选择器: class选择器: id选择器: 后代选择器: 子代选择器: 组合选择器: 通配符选择器: css三种引入方式 1.行间样式:权重最高1000,在标签的 ...

最新文章

  1. Intel 6系列芯片组设计缺陷 全球出货暂停
  2. 提取稳定前景的两种方法
  3. mongodb默认的用户名密码_MongoDB 设置账号和密码
  4. Go使用swagger:方法说明+案例说明
  5. Spring AOP中的动态代理主要有两种方式,JDK动态代理和CGLIB动态代理:
  6. 如何关闭Struts2的webconsole.html
  7. Python安装与库导入
  8. Mac下配置PHP+Apache+phpMyAdmin+MySql远程链接
  9. HDU 1561 The more, The Better (树形dp)
  10. Oracle根底数据标准存储名目浅析(三)——日期标准(三)
  11. asp.net mvc5+Echarts3.0+AspNet.SignalR2.0 实时监控cpu占用率推送
  12. 狡兔死,良弓藏-每个王朝都一样
  13. 测试项目的makefile
  14. gitblit git SERVER window 安装配置 hook post-receive 自动部署
  15. 从头开始学做 canvas 动画引擎
  16. 传奇LEG引擎武器衣服发光特效计算方式【适用于新blue/gob/goh/886m2等引擎通用】
  17. 夏普SHARP-10-80cm红外测距传感器-GP2Y0A21YK0F-性能测试
  18. 史上最全金融产品架构分析一:银行理财产品
  19. 20种银河科幻风格ps字体样式
  20. 数据挖掘技术-主键合并数据准备数据

热门文章

  1. 云原生下日志方案的架构设计
  2. 阿里开发者招聘节 | 面试题08:NAS(Network Attached Storage)协议NFS和SMB相关问题
  3. 用最新NLP库Flair做文本分类 1
  4. IDC:移动云进入云运营服务市场前五!
  5. 上万条数据撕开微博热搜的真相!
  6. 强推!盘点阿里巴巴 15 款开发者工具 | 程序员硬核评测
  7. 重磅!英特尔终于挤出10nm芯片 六大技术战略,震动芯片届
  8. oracle list 分区详解,oracle的List分区及分区索引
  9. 台账软件测试自学,测试情况汇总.docx
  10. Nginx实现通过不同的url前缀访问不同的前后端项目