在Centos上安装Postgre SQL
检查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=#
最新文章
- C#封装程序集自定义类方法注释提示
- C和指针 第三章 指针常量与常量指针
- MySQL for Visual Studio Version
- sql 里面 join in 的差别,join的用法
- 【液晶模块系列基础视频】1.3.iM_TFT30模块简介
- JavaWeb项目的classpath说明
- 表设计VIso
- Apache Kylin
- codevs 1281 Xn数列 (矩阵乘法)
- jQuery 效果函数(三)
- bzoj 4129 Haruna’s Breakfast 树上莫队
- 清晰讲解SQL语句中的内连接,通用于Mysql和Oracle,全是干货哦
- 英语口语练习系列-C24-杂技-问候语-乡愁
- 安装Chrome浏览器
- TCP三次握手建立关系
- Swift - 可选类型详解
- poj 2229 Sumsets(dp)
- [转]TortoiseSVN客户端重新设置用户名和密码
- 自己写的jQuery 左右选择框,大家多多指教!
- 木马APP的简单分析(Android Killer分析)