检查PostgreSQL 是否已经安装

rpm -qa | grep postgres    检查PostgreSQL 是否已经安装
rpm -qal | grep postgres   检查PostgreSQL 安装位置

返回信息

[root@dn07 ~]# rpm -qa | grep postgres
postgresql-libs--.el7.x86_64
[root@dn07 ~]# rpm -qal | grep postgres
/usr/share/doc/postgresql-libs-
/usr/share/doc/postgresql-libs-/COPYRIGHT
/usr/lib/firewalld/services/postgresql.xml
/usr/lib64/security/pam_postgresok.so
/usr/share/doc/pam-/txts/README.pam_postgresok
/usr/share/.gz
/etc/selinux/targeted/active/modules//postgresql
/etc/selinux/targeted/active/modules//postgresql/cil
/etc/selinux/targeted/active/modules//postgresql/hll
/etc/selinux/targeted/active/modules//postgresql/lang_ext

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

[root@dn07 ~]# rpm -e postgresql-libs--.el7.x86_64
     error: Failed dependencies:
        libpq.so.()(64bit) is needed by (installed) python-psycopg2--.el7.x86_64
[root@dn07 ~]# rpm -e python-psycopg2--.el7.x86_64
[root@dn07 ~]# rpm -e postgresql-libs--.el7.x86_64

可以使用rpm -qa | grep postgres再次查看是否还有Postgres安装文件,没有卸载完成

使用yum 出现 Loaded plugins: fastestmirror

解决方法:https://www.cnblogs.com/lzcys8868/p/8184681.html

bash: wget: command not found的两种解决方法

解决方法:https://www.cnblogs.com/areyouready/p/8909665.html

Install the repository RPM:

yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Install the client packages:

yum install postgresql96

Optionally install the server packages:

yum install postgresql96-server

可以使用rpm -qal|grep postgres这个命令查看安装文件的位置,注意默认的postgresql配置文件的位置和名称(带有版本号)

[root@dn08 ~]# rpm -qal|grep postgres
/usr/share/doc/postgresql96-
/usr/share/doc/postgresql96-/COPYRIGHT
/usr/share/doc/postgresql96-/KNOWN_BUGS
……
/usr/pgsql-9.6/share/postgres.description
/usr/pgsql-9.6/share/postgres.shdescription
/usr/pgsql-9.6/share/postgresql.conf.sample
/var/run/postgresql

切换postgres用户执行初始化数据库操作

新增postgres用户组:

groupadd postgres

新增postgres用户并且设置这个用户属于上面创建的postgres用户组:

useradd -g postgres postgres

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

passwd postgres  --修改postgres用户密码

Postgresql不能以root身份初始化,要以postgres用户的身份运行:

su postgres  切换用户

初始化数据库:

/usr/pgsql-9.6/bin/postgresql96-setup initdb -E UNICODE -D /mnt/pgsql/data --初始化数据库

错误!!!

依然转换为root用户初始化并启动数据库:

su root
/usr/pgsql-9.6/bin/postgresql96-setup initdb
systemctl start postgresql-9.6

进入数据库存放位置,查询初始化数据库成功之后的目录内容:

cd /var/lib/pgsql/9.6/data
ll

返回目录信息:

drwx------  postgres postgres     3月   : base
drwx------  postgres postgres   3月   : global
drwx------  postgres postgres      3月   : log
drwx------  postgres postgres     3月   : pg_clog
drwx------  postgres postgres      3月   : pg_commit_ts
drwx------  postgres postgres      3月   : pg_dynshmem
-rw-------  postgres postgres   3月   : pg_hba.conf
-rw-------  postgres postgres   3月   : pg_ident.conf
drwx------  postgres postgres     3月   : pg_log
drwx------  postgres postgres     3月   : pg_logical
drwx------  postgres postgres     3月   : pg_multixact
drwx------  postgres postgres     3月   : pg_notify
drwx------  postgres postgres      3月   : pg_replslot
drwx------  postgres postgres      3月   : pg_serial
drwx------  postgres postgres      3月   : pg_snapshots
drwx------  postgres postgres      3月   : pg_stat
drwx------  postgres postgres     3月   : pg_stat_tmp
drwx------  postgres postgres     3月   : pg_subtrans
drwx------  postgres postgres      3月   : pg_tblspc
drwx------  postgres postgres      3月   : pg_twophase
-rw-------  postgres postgres      3月   : PG_VERSION
drwx------  postgres postgres     3月   : pg_xlog
-rw-------  postgres postgres     3月   : postgresql.auto.conf
-rw-------  postgres postgres  3月   : postgresql.conf
-rw-------  postgres postgres     3月   : postmaster.opts
-rw-------  postgres postgres     3月   : postmaster.pid

编辑postgresql.conf文件,修改数据库默认接收的监听地址与端口参数:

cat postgresql.conf | grep -n listen_addresses  查找listen_addresses在postgresql.conf文件中的位置并显示行号
vi postgresql.conf 编辑postgresql.conf文件

去掉59行的注释,将listen_addresses = 'localhost' 改成 listen_addresses = '*',下图是修改后listen_addresses的值:

接下来继续修改pg_hba.conf文件,告诉数据库服务器它将允许什么样的客户端连接到自己:

vi pg_hba.conf --修改postgresql服务连接文件

在末尾增加一行,表示允许任何一个客户端使用正确的用户名和密码访问自己:

host    all             all                            trust

查看postgresql是否运行:

ps -ef | grep postgres  查看postgres的进程信息

开始连接postgresql数据库:

psql -U postgres //连接pgsql server

psql: 致命错误:  对用户"postgres"的对等认证失败

继续修改pg_hba.conf文件,将认证方式统一修改为trust(关于认证方式的说明见:http://www.cnblogs.com/EasonJim/p/9057867.html),并执行命令重启postgresql

/usr/pgsql-9.6/bin/pg_ctl restart -D /var/lib/pgsql/9.6/data

其中postgresql的执行文件目录为/usr/pgsql-9.6/bin,目录下包含以下程序:

-rwxr-xr-x  root root    2月   : clusterdb
-rwxr-xr-x  root root    2月   : createdb
-rwxr-xr-x  root root    2月   : createlang
-rwxr-xr-x  root root    2月   : createuser
-rwxr-xr-x  root root    2月   : dropdb
-rwxr-xr-x  root root    2月   : droplang
-rwxr-xr-x  root root    2月   : dropuser
-rwxr-xr-x  root root   2月   : initdb
-rwxr-xr-x  root root    2月   : pg_archivecleanup
-rwxr-xr-x  root root    2月   : pg_basebackup
-rwxr-xr-x  root root   2月   : pgbench
-rwxr-xr-x  root root    2月   : pg_config
-rwxr-xr-x  root root    2月   : pg_controldata
-rwxr-xr-x  root root    2月   : pg_ctl
-rwxr-xr-x  root root   2月   : pg_dump
-rwxr-xr-x  root root    2月   : pg_dumpall
-rwxr-xr-x  root root    2月   : pg_isready
-rwxr-xr-x  root root    2月   : pg_receivexlog
-rwxr-xr-x  root root    2月   : pg_resetxlog
-rwxr-xr-x  root root   2月   : pg_restore
-rwxr-xr-x  root root    2月   : pg_rewind
-rwxr-xr-x  root root    2月   : pg_test_fsync
-rwxr-xr-x  root root    2月   : pg_test_timing
-rwxr-xr-x  root root   2月   : pg_upgrade
-rwxr-xr-x  root root    2月   : pg_xlogdump
-rwxr-xr-x  root root  2月   : postgres
-rwxr-xr-x  root root     2月   : postgresql96-check-db-dir
-rwxr-xr-x  root root     2月   : postgresql96-setup
lrwxrwxrwx  root root        3月   : postmaster -> postgres
-rwxr-xr-x  root root   2月   : psql
-rwxr-xr-x  root root    2月   : reindexdb
-rwxr-xr-x  root root    2月   : vacuumdb

其中postgresql的数据文件目录为/var/lib/pgsql/9.6/data,目录下包含以下内容:

drwx------  postgres postgres     3月   : base
drwx------  postgres postgres   3月   : global
drwx------  postgres postgres      3月   : log
drwx------  postgres postgres     3月   : pg_clog
drwx------  postgres postgres      3月   : pg_commit_ts
drwx------  postgres postgres      3月   : pg_dynshmem
-rw-------  postgres postgres   3月   : pg_hba.conf
-rw-------  postgres postgres   3月   : pg_ident.conf
drwx------  postgres postgres     3月   : pg_log
drwx------  postgres postgres     3月   : pg_logical
drwx------  postgres postgres     3月   : pg_multixact
drwx------  postgres postgres     3月   : pg_notify
drwx------  postgres postgres      3月   : pg_replslot
drwx------  postgres postgres      3月   : pg_serial
drwx------  postgres postgres      3月   : pg_snapshots
drwx------  postgres postgres      3月   : pg_stat
drwx------  postgres postgres     3月   : pg_stat_tmp
drwx------  postgres postgres     3月   : pg_subtrans
drwx------  postgres postgres      3月   : pg_tblspc
drwx------  postgres postgres      3月   : pg_twophase
-rw-------  postgres postgres      3月   : PG_VERSION
drwx------  postgres postgres     3月   : pg_xlog
-rw-------  postgres postgres     3月   : postgresql.auto.conf
-rw-------  postgres postgres  3月   : postgresql.conf
-rw-------  postgres postgres     3月   : postmaster.opts
-rw-------  postgres postgres     3月   : postmaster.pid

再次登录:

psql -U postgres

登录成功,出现以下界面:

[root@dn08 ~]# psql -U postgres
psql ()
输入 "help" 来获取帮助信息.

postgres=#

在Centos上安装Postgre SQL的更多相关文章

  1. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  2. 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置

    简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...

  3. 在CentOS上安装rabbitmq-server

    ***在 CentOS 6.4上安装python*** 注意啊,自己手动安装python2.7.5,不要动系统上面其他的版本 1,先安装GCC,用如下命令yum install gcc gcc-c++ ...

  4. CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH

    CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH 因为是centos linux,默认可以采用yum方 ...

  5. 如何在centos上安装epel源

    一.EPEL是什么? EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包) 是Fedora小组维护的一个软件仓库项目,为RHEL/Cent ...

  6. 在Centos上安装RabbitMQ流程(转)

    在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...

  7. 在CentOS上安装ZooKeeper集群

    一共准备3个CentOS虚拟机 172.16.9.194 172.16.9.195 172.16.9.196 上传zookeeper-3.3.6.tar.gz到服务器并解压,3台服务器的目录结构如下 ...

  8. CentOS上安装Node.js

    CentOS上安装Node.js [日期:2014-07-21] 来源:Linux社区  作者:maskdfe [字体:大 中 小]     CentOS上安装Node.js(想在Linux上学习No ...

  9. Linux系统入门学习:在CentOS上安装phpMyAdmin

    问题:我正在CentOS上运行一个MySQL/MariaDB服务,并且我想要通过网络接口来用phpMyAdmin来管理数据库.在CentOS上安装phpMyAdmin的最佳方法是什么? phpMyAd ...

随机推荐

  1. c# 泛型demo

    private void Fn_Post<T>(T dto, string api) { HttpClient client = new HttpClient(); client.Base ...

  2. aarch64环境下,搭建并配置服务器tomcat:

    aarch64环境下,搭建并配置服务器tomcat: 环境说明及下载相关文件: 1. ARM环境:aarch64开发板 2.JDK安装包: jdk-8u231-linux-arm64-vfp-hflt ...

  3. 流式计算(三)-Flink Stream 篇一

    原创文章,谢绝任何形式转载,否则追究法律责任! ​流的世界,有点乱,群雄逐鹿,流实在太多,看完这个马上又冒出一个,也不知哪个才是真正的牛,据说Flink是位重量级选手,能流计算,还能批处理, 和其他伙 ...

  4. JS高级---实例对象和构造函数之间的关系

    实例对象和构造函数之间的关系:   1. 实例对象是通过构造函数来创建的---创建的过程叫实例化   2. 如何判断对象是不是这个数据类型?    1) 通过构造器的方式 实例对象.构造器==构造函数 ...

  5. JAVA基础学习(4)之循环控制

    4循环控制 4.1 for循环 4.1.1 for循环 固定次数for循环 先执行一次do-while循环 其他while循环 Scanner in = new Scanner(System.in); ...

  6. 存储引擎,MySQL中的数据类型及约束

    存储引擎,MySQL中的数据类型及约束 一.存储引擎 1.不同的数据应该有不同的处理机制 2.mysql存储引擎 ​ Innodb:默认的存储引擎,查询速度叫myisam慢,但是更安全 ​ 支持事务, ...

  7. 2 数据结构的性能分析 timeit

    # python数据结构的性能分析 https://www.cnblogs.com/bobo-zhang/p/10521769.html from timeit import Timer #计算运行平 ...

  8. utf-8无bom格式编码

    BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符,它的编码是FEFF.而FFFE在U ...

  9. mongodb 用户指引

    维护人:陈权 一.mongodb install on linuxcurl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6 ...

  10. 【工具类】Java中判断字符串是否为数字的五种方法

    1 //方法一:用JAVA自带的函数 2 public static boolean isNumeric(String str){ 3 for (int i = str.length();--i> ...