博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux下Postgresql-9.2安装及数据库的创建过程
阅读量:6151 次
发布时间:2019-06-21

本文共 2132 字,大约阅读时间需要 7 分钟。

公司写部署手册需要,现总结一些linux下postgresql的安装及数据库创建的详细步骤吧!

1.1.1  软件安装

  1.设置用户组和用户级别

    Postgresql不能以root身份运行,要以其他的身份运行,所以必须建立对应的用户和组。

(1)新增postgresql用户组:groupadd postgresql

(2)新增postgres用户属于postgresql用户组:useradd -g postgresql postgres

(3)修改postgres用户密码:passwd postgres(这里设置密码为postgres)

  2.安装postgresql软件

(1)为 postgresql-9.2.4-1--x64.run赋予可执行权限:

(2)安装postgresql:./postgresql-9.2.4-1--x64.run,一路Enter键,保持默认配置即可。默认安装路径/opt/PostgreSQL

(3)配置环境变量:执行vi /etc/profile修改全局环境变量文件,在profile文件里面添加下面三句话,

export LD_LIBRARY_PATH=/opt/PostgreSQL/9.2/lib;$LD_LIBRARY_PATH

export PATH=/opt/PostgreSQL/9.2/bin:$PATH

export PGDATA=/opt/PostgreSQL/9.2/data

执行成功后,立即生效可用source /etc/profile。

 3.初始化

   (1)切换至postgres账户:su postgres

   (2)修改系统编码为GBK:vi/etc/sysconfig/i18n

     

   (3) 初始化数据库initdb -D /opt/PostgreSQL/9.2/data

   (4) 启动postgres服务: postmaster -i -D /opt/PostgreSQL/9.2/data & (后台挂起)

   pg_ctl start -l /opt/postgresql/log/pg_server.log (关闭ssh窗口则关闭服务)

   (5)停止postgresql服务: pg_ctl stop

   (6)修改数据库用户postgres密码:psql template1

   (7)查看端口被占用:netstat -lnpt | grep 5432    或者 ps -ef | grep postgresql

        结束进程:kill -9 pid

   (8)主机端口是否联通:window下用telnet,linux下用nc -v host port 

 

1.1.2 数据库创建及脚本导入

  如果该服务器对外开通了5432端口的访问权限,则可通过pgAdmin III客户端执行以下操作,否则只能通过SSH客户端执行命令来实现数据库创建及脚本导入。

  1. 创建数据库:createdb lsgfss

  2.数据脚本导入: psql -d lsgfss -U postgres -f /opt/PostgreSQL/9.2/data/lsgfss.sql

  3.启动前端访问工具:psql lsgfss

  补充:linux下postgresql数据库中的一些命令:   

   template1=# \l 查看系统中现存的数据库  

   template1=# \q 退出客户端程序psql  
   template1=# \c 从一个数据库中转到另一个数据库中,如template1=# \c sales 从template1转到sales  
   template1=# \dt 查看表  
   template1=# \d 查看表结构  
   template1=# \di 查看索引  

  4.pgAdmin III客户端访问linux下该数据库的话,还需要为该客户端分配数据库访问权限, 修改pg_hba.conf 文件,该文件都是放在$PG_DATA目录下,也就是一般的...../data目录下。

 添加如下一句话,然后重启。

 host   all      all      10.123.0.0   255.255.0.0    trust   

 

注释:  Linux下,postgresql.conf   pg_hba.conf   都是放在$PG_DATA目录下,也就是一般的...../data目录下   

    
  访问的控制是修改pg_hba.conf文件,如果加入的是下面行:   
  host   all     all       192.168.0.0       255.255.255.0     md5   
  这时,你从那个网段上访问任何数据库时,就要密码,密码在传的过程中是加密码的,   
  如果加下面一行:   
  host   all    all       192.168.0.0        255.255.255.0     password   
  这时,你从那个网段上访问任何数据库时,就要密码,密码在传的过程中是没加密码的,   
  如果加下面一行:   
  host   all    all       192.168.0.0        255.255.255.0     trust   
  这时,你从那个网段上访问任何数据库时,就不要密码,   、

  如果出现这种:

   host all all 127.0.0.1/32 md5 

   其中32是子网掩码的网段;md5是密码验证方法

你可能感兴趣的文章
网卡驱动程序之框架(一)
查看>>
css斜线
查看>>
Windows phone 8 学习笔记(3) 通信
查看>>
Revit API找到风管穿过的墙(当前文档和链接文档)
查看>>
Scroll Depth – 衡量页面滚动的 Google 分析插件
查看>>
Windows 8.1 应用再出发 - 视图状态的更新
查看>>
自己制作交叉编译工具链
查看>>
Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
查看>>
[物理学与PDEs]第3章习题1 只有一个非零分量的磁场
查看>>
深入浅出NodeJS——数据通信,NET模块运行机制
查看>>
onInterceptTouchEvent和onTouchEvent调用时序
查看>>
android防止内存溢出浅析
查看>>
4.3.3版本之引擎bug
查看>>
SQL Server表分区详解
查看>>
使用FMDB最新v2.3版本教程
查看>>
SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器
查看>>
STM32启动过程--启动文件--分析
查看>>
垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
查看>>
淘宝的几个架构图
查看>>
Android扩展 - 拍照篇(Camera)
查看>>