上一篇文章我们已经成功在rehel上安装了postgrel数据库。
关于window环境下的安装,可以直接下载install文件,进行双击安装,或者通过编译源码的方式安装。
本篇文章将介绍postgresql数据的基本配置,以及客户端与服务器端的连接。
先看服务器端
当我们通过 pg_start 命令启动服务器后,就可以在本机进行访问了
访问指令为
psql -h 127.0.0.1 -U postgres -p 5432
其中
-h 代表host 默认为本机。
-p 为端口号 默认为5432。
-U 代表访问数据库的用户名。
关于-U有一点需要注意,postgres用户为postgresql数据库内置的超级用户,而当我们在postgres系统用户下使用psql命令登录而不使用-U命令的话,会默认以当前系统用户名登录。在上一篇中新建的postgresql系统用户并不是为了登录方便而是出于安全性考虑。
登录服务器后可以通过\du,查看数据库用户。内置默认postgres用户。
postgres=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
新建角色
CREATE ROLE name LOGIN;
CREATE USER name;
以上两条命令其实是等价的,都是新建一个角色然后赋予登录权限。新建后即可通过-U使用该角色登录。
创建数据库(标准sql语言,数据库创建完毕后可以通过\c进入和切换数据库)
create database Smoondb;
\c Smoondb;
创建表(标准sql语言,这里不再贴出)
1 | wang | 数学 | 99 |
2 | wang | 语文 | 80 |
3 | wang | 物理 | 99 |
4 | wang | 化学 | 98 |
5 | wang | 英语 | 79 |
6 | liu | 数学 | 89 |
7 | liu | 语文 | 99 |
8 | liu | 物理 | 89 |
9 | liu | 化学 | 79 |
10 | zan | 数学 | 89 |
11 | zan | 语文 | 91 |
12 | zan | 物理 | 92 |
13 | zan | 化学 | 93 |
14 | zan | 英语 | 94 |
15 | liu | 英语 | 79 |
至此,服务器端基本配置完毕,并且建立了测试表。若要实现客户端与服务器端的连接,则需要修改两处配置文件。
一个是$PGDATA(数据库初始化目录)目录下 pg_hba.conf 文件(该文件主要功能为客户端认证配置)
在此文件中找到以下代码,并在后面追加第三行的代码XXX.XXX.XXX.XXX为客户端的host
其中第一个all代表数据库,第二个all代表用户。
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all XXX.XXX.XXX.XXX trust
另一个文件为$PGDATA(数据库初始化目录)目录下 postgresql.conf(该文件为postgresql的配置文件)
找到以下代码将 listen_addresses 的值由localhost改为*
# - Connection Settings -
listen_addresses = ' *' # what IP address(es) to listen on;
修改以上两处之后,通过 pg_ctl restart 重启服务器,在客户端安装好postgresql后即可通过控制台连接服务器,以下为windows客户端测试连接rehel服务器端