Chinaunix
标题:
psql执行的时候不输入密码的设定
[打印本页]
作者:
getfuture
时间:
2010-10-29 13:18
标题:
psql执行的时候不输入密码的设定
对于很多的*.sql文件,用于创建数据库表。如果一个一个的运行,肯定会浪费时间。这样我做了批处理文件(Bat文件),来一次操作多个*.sql,但是,这个时候遇到一个问题,因为我的批处理是这样写的:
@echo off
for %%c in (*.sql) do psql -d ucom -U ucom_user -f %%c
pause
这样,psql每运行一个*.sql文件的时候都要你输入一次密码,真是烦透了。如何才能不输入密码,让这些文件一次被处理掉哪?到网上查了一下,还真有办法。
Windwos环境下,创建%APPDATA%\postgresql\pgpass.conf这样一个文件,文件中的内容设定为:
hostname:port:database:username:password 其中hostname是主机地址,port是数据库端口,后面的三个参数分别是数据库名,登陆用户和登陆密码。比如我的文件是这样设定的localhost:5432:ucom:ucom_user:ucom_user。这样再去执行上面的批处理,一次就OK了,再不用反复输入密码了。其中,变量%AppData%是一个对Application Data路径的简记形式,一般情况下可能是: C:\Documents and Settings\[User Name]\Application Data目录。
出处:
http://blog.csdn.net/v_fei/archive/2007/11/19/1893562.aspx
作者:
renxiao2003
时间:
2010-11-05 09:26
学习了。我原来在LINUX下做备份也遇到要输入密码的问题。害得我没办法最后学习expert脚本来做的。
作者:
tanfeng3
时间:
2010-11-16 13:53
关于.pgpass文件不用终端输入密码的问题,PG官网文档里讲得很详细
作者:
renxiao2003
时间:
2010-11-16 14:21
回复
3#
tanfeng3
还是文档看得少啊。
作者:
yaohong0225
时间:
2014-09-05 17:08
回复
3#
tanfeng3
还能记得,在官网的哪里吗?我找了好久,没有找到啊!
作者:
tanfeng3
时间:
2014-09-09 10:03
yaohong0225 发表于 2014-09-05 17:08
回复 3# tanfeng3
还能记得,在官网的哪里吗?我找了好久,没有找到啊!
之前写了点资料,如下:
几种客户端连接 PostgreSQL 不输入密码的方法
http://francs3.blog.163.com/blog/static/405767272011725112431290/
手册中关于 .pgpass 的说明
http://www.postgresql.org/docs/current/static/libpq-pgpass.html
作者:
yaohong0225
时间:
2014-09-10 16:15
回复
6#
tanfeng3
谢谢你,你的日志中写的非常的详细,非常好的文章,谢谢!
作者:
asdf2110
时间:
2014-09-19 08:50
把这个备份用户 ucom_user 设为 trust 可以吗?
回复
1#
getfuture
作者:
xiaotengyi
时间:
2015-05-15 18:53
也可以通过配置pg_service.conf来免登陆吧
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2