PostgreSQL学习(1) - 起步

第一章:起步(First Step)

参考:《PostgreSQL 9 Administration Cookbook,Second Edition》

目录

一、连接服务器

二、网络/远程客户端连接

三、使用图形化界面管理工具

四、使用psql工具

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

一. 连接服务器

1. 会话与连接池

在我们操作数据前,我们需要数据库服务器给我们开启一个会话(session)

会话(Session): 连接-执行许多请求-断开连接;连接上去后,开销是比较小的,但是当你重复的连接/断开连接时,开销将变得越发明显。
连接池(Connection pools): 当你想要再次连接数据库时,连接池可以让之前连接的会话快速的为你提供服务

2. 数据库连接的条件

安装postgres上后,我们可在上面创建多个数据库; 那对于连接来说,我们就需要明确我们要连接的是哪个数据库。所以,你需要确定以下参数:

  •     主机地址:Host or host address
  •     端口号:Port
  •     数据库名字:Database name
  •     用户:User
  •     密码:Password (or other means of authentication, if any)

连接的条件:

  •     主机上有服务器在运行,并监听指定端口
  •     服务器上,那个用户及数据要存在
  •     主机要允许你的客户端的练接
  •     要通过服务器的授权(如密码或者其他的方法)

从postgres 9.2版本开始,可以使用可以URL的形式,提供连接参数:

    psql postgresql://myuser:mypasswd@myhost:5432/mydb

    #我自己的例子(在终端输入,前提是超级用户已经创建列该用户/数据库/密码):

    psql postgresql://u_bootcamp:p4ssw0rd@localhost:5432/bootcamp

3. 数据库集簇:

一个数据库服务器通常又被称为"数据库集簇"(database cluster),因为一个服务器允许你创建一个或多个服务库。

4. 用户、登录角色和角色

一个数据用户(user)用来identify一个连接;通常,一个用户能够建立的连接没有限制(如何限制?);目前新的版本,用户(users)指的是登录角色(login roles);一个登录角色指的是一个已被授予连接权限的角色(role)

5. 查看连接状态(psql)

当你已经通过psql连接,可以通过以下命令,查看连接状态:

    postgres=# SELECT current_database();
    postgres=# SELECT current_user;
    postgres=# SELECT inet_server_addr(), inet_server_port();
    postgres=# SELECT version();
    postgres=# \conninfo

二、网络/远程用户连接

出于安全性的考量,初始状态,远程连接通常是不被允许的,那如何开启呢?

在/etc/postgresql/9.5/main下面有两个文件,需要配置:

#文件:postgresql.conf

listen_addresses = '*'     #允许数据库服务器监听来自任何主机的连接请求

#文件:pg_hba.conf文件(没看懂)

参考:https://blog.csdn.net/ll136078/article/details/12747403

三、使用图形化界面管理工具

四、使用psql工具

1. 连接数据库

psql –h hostname –p 5432 –d dbname –U username

psql postgresql://myuser:mypasswd@myhost:5432/mydb

2. 如果SQL语句命令较多,可以将命令在.sql文件中,执行以下命令:

psql user –f examples.sql

3. 交互模式中的命令

$ psql                           --进入交互模式

postgres=# \h SELECT             --获取SELECT的帮助信息

postgres=# \q                    --退出交互模式

4. 注释

单行注释:  --this is a comment

多行注释:  /*  this is mutiline comment */

5. 在psql中可执行两种命令:

SQL语句:针对数据库的,以“;”结束

元命令:针对psql的,如退出psql的命令:\q

6. 更改密码:

postgres=#  \password username

postgres=#  ALTER USER postgres PASSWORD ' md53175bce1d3201d16594cebf9d7eb3f9d';

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值