【centos】配置postgresql数据库

参考资料

linux下postgresql的源,可在此找到各种软件源

PostgreSql 学习笔记一 CentOS下安装使用 及常用命令

Centos7安装PostgreSQL9.5

安装

下面是转载

1、配置YUM库

vi /etc/yum.repos.d/CentOS-Base.repo


在[base] 和[updates] 区段添加:

exclude=postgresql*

配置完yum库之后卸载之前安装的Postgresql:

yum erase postgresql*


为了避免有遗留,可以多删除几遍,直到有如下提示:

已加载插件:fastestmirror,langpacks
参数 postgresql 没有匹配
不删除任何软件包
删除所有数据:

rm -rf /var/lib/pgsql

打开网页,查找合适的源

注意,我用的是

url为:

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

安装PGDG RPM文件

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

安装contrib第三方包和分布式包,可以选择不安装:

yum -y install postgresql96-server postgresql96-contrib

安装如下:

完成

注意,当前安装路径

/usr/pgsql-9.6/
初始化数据库
/usr/pgsql-9.6/bin/postgresql96-setup initdb

Postgresql服务控制:

service postgresql-9.6 start/stop/restart/reload

开机自启动

sudo chkconfig postgresql-9.6 on

配置pg_hba.conf文件

注意,文件

/var/lib/pgsql/9.6/data/pg_hba.conf
sudo vi /var/lib/pgsql/9.6/data/pg_hba.conf

以下转载

靠近最下方的


host    all all 127.0.0.1/32    ident
host    all all ::1/128 ident
把ident 改为 md5


host    all all 127.0.0.1/32    md5
host    all all ::1/128 md5

接下来可以使用postgre sql了。

postgresql9.6的相关服务命令

-- 启动 sudo systemctl start postgresql-9.6
-- 停止 sudo systemctl stop postgresql-9.6
-- 重启 sudo systemctl restart postgresql-9.6

请重启postgresql

使用

初次安装后,生成一个名为postgres的数据库一个名为postgres的数据库用户。这里需要注意的是,同时还生成一个名为postgres的操作系统用户。可以使用postgres登陆试下:

1sudo -i -u postgres
2、
psql
退出时使用命令:

postgres=# \q
上面只是第一步退出,
会进入到:
-base-版.本$
你需要输入exit命令才退到最外面。

给postgresq账号添加密码

1sudo su - postgres
2、
psql
3、
\password postgres 给postgress设置密码

然后你会看到这些只要输入及确认密码即可。

一些命令

添加用户

1.创建操作系统用户

先到操作系统
sudo adduser dbuser   
sudo su - postgres
psql
\password postgres 给postgress设置密码
2.创建数据库用户

CREATE USER dbuser WITH PASSWORD 'password';
3.创建数据库,与用户关联

CREATE DATABASE exampledb OWNER dbuser;
4.设置所有权

GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
登陆:

psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
上面命令的参数含义如下:-U指定用户,-d指定数据库,-h指定服务器,-p指定端口。
输入上面命令以后,系统会提示输入dbuser用户的密码。输入正确,就可以登录控制台了。
查看登陆的信息

postgres=# \conninfo
认端口号是5432,程序位置/var/run/postgresql

一些命令

创建用户
create user markgeng;
删除用户
drop user markgeng;
查看系统中的已有的用户
select * from pg_user;

psql

查看数据库
\l
切换数据库
\c 数据库名称
- 查看所有表
\d

设置远程访问

打开相关配置文件

vi  /var/lib/pgsql/9.6/data/postgresql.conf

将该文件中的listen_addresses项值设定为“*”

即:

listen_addresses=  '*'

打开第二个配置文件

sudo vi /var/lib/pgsql/9.6/data/pg_hba.conf

在该配置文件的host all all 127.0.0.1/32 md5行下添加以下配置,或者直接将这一行修改为以下配置

host all all 0.0.0.0/0 md5

如果不希望允许所有IP远程访问,则可以将上述配置项中的0.0.0.0设定为特定的IP值。

保存,重启一下:

systemctl restart postgresql-9.6

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native