PostgreSQL环境变量与psql命令的替代作用

Posted on 2012-11-22 11:21  JasmineLiu  阅读(10219)  评论(4编辑  收藏  举报

本文主要讲在连接时的替代作用(win7环境下):

 

当默认值并不十分恰当时,我们可以通过设置环境变量来节省一些输入,比如将PGDATABASEPGHOSTPGPORT或者 PGUSER设置为恰当的值。(对于其他环境变量,详见Section 31.14。)

1 设置环境变量

 

2 在终端中输入D:\Program Files (x86)\HighGo\Database\1.3\bin>psql –help

即可看到现在user默认值更改为lhh。

直接输psql(不用-U指定用户),则默认的user就是lhh。

 

 

用一个 ~/.pgpass 文件来避免每次登陆都要输入密码的问题,这也很方便。请参阅Section 31.15 获取更多相关信息。

    pgdass.conf目录:C:\Users\Jasmine\AppData\Roaming\postgresql\pgpass.conf

    pgdass.conf 参数行格式:hostname:port:database:username:password

    设置完毕后,连接响应用户、数据库……时就不需要输入密码立刻:

     

 

 

指定连接参数的另一种方法是用一个conninfo字符串或URI,用来代替一个数据库名。这种机制使你对连接有非常广泛的控制权。

pg9.1及之前就有这种方法:  

用法: $ psql "service=myservice sslmode=require"  

例子:

[postgres@localhost bin]$ ./psql "host=127.0.0.1 port=5432 dbname=postgres user=postgres"

psql (9.2beta4)

password:

Type "help" for help.

pg9.2中新添加的方法:  

用法:$ psql postgresql://dbmaster:5433/mydb?sslmode=require

例子:

[postgres@localhost bin]$ ./psql postgresql://127.0.0.1:5432/postgres

psql (9.2beta4)

password:

Type "help" for help.

 

Copyright © 2024 JasmineLiu
Powered by .NET 9.0 on Kubernetes