Linux下安装PostgreSQL

[日期:2016-12-25] 来源:Linux社区  作者:xiaojian [字体: ]
 

在Linux下安装PostgreSQL有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装。各个版本的Linux都内置了PostgreSQL,所以可直接通过命令行安装便可。本文用的是CentOS 6.5。

安装Postgresql

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

# 安装postgresql服务器
yum install postgresql-server
#依赖包是否安装
Y/N  Y

#第三方贡献包
yum install postgresql-contrib
#依赖包是否安装
Y/N  Y

安装成功后,数据库状态

[root@localhost Hadoop]# service postgresql status
postmaster is stopped

尝试启动数据库,但报错,需要先初始化数据目录

[root@localhost hadoop]# service postgresql start
/var/lib/pgsql/data is missing.Use "service postgresql initdb" to initialize the cluster first.
[root@localhost hadoop]# service postgresql initdb
Initializing database:                                                [OK]

启动数据库

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

通过service命令启动Postgresql,需要注意的是,默认在安装时会创建postgres用户并安装到此用户下。而Postgresql 的默认数据库也是用此用户命名的。

[root@localhost hadoop]# service postgresql start
Starting postgresql service:                              [  OK  ]
[root@localhost hadoop]# su - postgres
-bash-4.1$ psql
psql (8.4.20)
Type "help" for help.

postgres=# \l
                                  List of databases
  Name    |  Owner  | Encoding |  Collation  |    Ctype    |  Access privileges 
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8    | en_US.UTF-8 | en_US.UTF-8 |
 template0 | postgres | UTF8    | en_US.UTF-8 | en_US.UTF-8 | =c/postgres
                                                            : postgres=CTc/postgres
 template1 | postgres | UTF8    | en_US.UTF-8 | en_US.UTF-8 | =c/postgres
                                                            : postgres=CTc/postgres
(3 rows)

postgres=#

Postgresql 的Psql 就等于Oracle的Sqlplus一样 ,直接用命令Psql登录等于用操作系统验证登录,不需要输入用户名和密码。

基本参数设置

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

在Centos下,默认的数据目录在 /var/lib/pgsql/data 下 ,配置的参数文件就在此目录下。

-bash-4.1$ ls -l
total 80
drwx------ 5 postgres postgres  4096 Nov 16 07:43 base
drwx------ 2 postgres postgres  4096 Nov 17 23:51 global
drwx------ 2 postgres postgres  4096 Nov 16 07:43 pg_clog
-rw------- 1 postgres postgres  3533 Nov 17 22:05 pg_hba.conf
-rw------- 1 postgres postgres  1631 Nov 16 07:43 pg_ident.conf
drwx------ 2 postgres postgres  4096 Nov 18 00:00 pg_log
drwx------ 4 postgres postgres  4096 Nov 16 07:43 pg_multixact
drwx------ 2 postgres postgres  4096 Nov 18 00:00 pg_stat_tmp
drwx------ 2 postgres postgres  4096 Nov 16 07:43 pg_subtrans
drwx------ 2 postgres postgres  4096 Nov 16 07:43 pg_tblspc
drwx------ 2 postgres postgres  4096 Nov 16 07:43 pg_twophase
-rw------- 1 postgres postgres    4 Nov 16 07:43 PG_VERSION
drwx------ 3 postgres postgres  4096 Nov 16 07:43 pg_xlog
-rw------- 1 postgres postgres 16877 Nov 17 21:54 postgresql.conf
-rw------- 1 postgres postgres    57 Nov 17 23:51 postmaster.opts
-rw------- 1 postgres postgres    45 Nov 17 23:51 postmaster.pid

配置远程登录数据库

1. 修改 postgresql.conf 文件,配置PostgreSQL数据库服务器的相应的参数

listen_addresses = '*'      # PostgreSQL安装完成后,默认是只接受来在本机localhost的连接请求,此处将数据库服务器的监听模式修改为监听所有主机发出的连接请求
port = 5432      #  默认端口,修改后要重启数据库

2. 修改 pg_hba.conf 文件,配置对数据库的访问权限

在最后一行加上配置,表示允许网段192.168.191.0上的所有主机使用所有合法的数据库用户名访问数据库,

24是子网掩码,表示允许IP范围在 192.168.191.0--192.168.191.255 的计算机访问。

3. 测试远程登录

首先修改默认数据库用户登录密码

-bash-4.1$ psql
psql (8.4.20)
Type "help" for help.

postgres=# \password

按提示修改密码。

然后再从另一台局域网机器上登录

psql -U postgres -d postgres -h 192.168.191.5 -p 5432      -- 成功

其中 –u 指定用户,-d 指定数据库名 ,-h 指定host,-p 端口号,按提示输入密码。

另外,可视化客户端推荐用DBeaver。

Linux下安装PostgreSQL 转载linux社区的更多相关文章

  1. (转)Linux下安装rar fou linux

    在Linux下安装rar fou linux rar for linux 软件下载地址:http://www.rarsoft.com/download.htm 到目前为止最新的版本为4.10 beta ...

  2. linux下安装nodejs及linux下解压tar.xz文件

    1.下载nodejs的安装包  2.解压该文件 在linux下,大部分情况下不能直接解压tar.xz的文件. 需要用xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然 ...

  3. linux下安装postgresql

    环境:Linux localhost.localdomain 2.6.32-431 GNU/Linux x86_64 Postgresql版本:postgresql.9.5.3 添加开启自启设置:ht ...

  4. linux 下安装PostgreSql 并配置远程访问

    1.官网下载PostgreSql 安装包 (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads) 我下载的是 9. ...

  5. postgreSQL学习(一):在Linux下安装postgreSQL

    1. 安装源: $ sudo yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgd ...

  6. Linux下安装 Posgresql 并设置基本参数

    在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...

  7. linux下安装mysql问题总结(一)mysqld_safe mysqld from pid file /usr/local/mysql/data/mysql.pid ended

    linux下安装mysql数据库 linux版本:CentOS release 6.8 (Final) mysql版本:mysql-5.7.16-linux-glibc2.5-x86_64.tar.g ...

  8. 【转载】Linux下安装LoadRunner LoadGenerator

    原文地址:[转载]Linux下安装LoadRunner LoadGenerator作者:邱建忠tester LR的负载机安装在linux的理由: 1.windows xp,双核+4G内存,基本上每个v ...

  9. (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

    Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...

随机推荐

  1. 如何在MQ中实现支持任意延迟的消息?

    什么是定时消息和延迟消息? 定时消息:Producer 将消息发送到 MQ 服务端,但并不期望这条消息立马投递,而是推迟到在当前时间点之后的某一个时间投递到 Consumer 进行消费,该消息即定时消 ...

  2. userdel 命令详解

    userdel  作用: 删除指定用户,以及用户相关的文件. 如不加选项,则仅删除用户账号,而不删除相关文件 选项: -f:强制删除用户,即时用户当前已登录 -r:删除用户的同时删除与用户相关的所有文 ...

  3. Anti-pattern/反模式

      常见的与"直觉"相背离的anti-pattern产生的实际原因是没有深入.全面地考虑问题,即只关注到自己关心的方面,忽略了其他重要的.起相反作用的因素. 所以这个"直 ...

  4. (通用)深度学习环境搭建:tensorflow安装教程及常见错误解决

    区别于其他入门教程的"手把手式",本文更强调"因"而非"果".我之所以加上"通用"字样,是因为在你了解了这个开发环境之后 ...

  5. Io 异常: The Network Adapter could not establish the connection

    新接触一个项目,导入源码,在本地启动的时候后台报了一个错误: Could not discover the dialect to use. java.sql.SQLException: Io 异常: ...

  6. MySQL 的调节和优化的提示

    MySQL 服务器硬件和操作系统调节: 1. 拥有足够的物理内存来把整个InnoDB文件加载到内存中——在内存中访问文件时的速度要比在硬盘中访问时快的多.2. 不惜一切代价避免使用Swap交换分区 – ...

  7. Paho -物联网 MQTT C Cient的实现和详解

    概述   在文章Paho - MQTT C Cient的实现中,我介绍了如何使用Paho开源项目创建MQTTClient_pulish客户端.但只是简单的介绍了使用方法,而且客户端的结果与之前介绍的并 ...

  8. jquery中attr和prop的区别分析

    这篇文章主要介绍了jquery中attr和prop的区别分析的相关资料,需要的朋友可以参考下 在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别 ...

  9. .Net WinForm 控件键盘消息处理剖析

    在WinForm控件上我们可以看到很多关于键盘消息处理的方法,比如OnKeyDown, OnKeyPress, ProcessCmdKey, ProcessDialogKey,IsInputKey等等 ...

  10. Python中将函数作为另一个函数的参数传入并调用

    在Python中,函数本身也是对象,所以可以将函数作为参数传入另一函数并进行调用 在旧版本中,可以使用apply(function, *args, **kwargs)进行调用,但是在新版本中已经移除, ...