队 我正在使用amazon redshift(8.0.2。)。连接redshift集群时,我们可以无需密码连接(这个设置我们可以在我的本地机器上做--pg_hba.conf条目)。但是 我已经设置了" md5"提示密码。
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
#host postgres postgres <my_ip> md5
现在我想连接redshift thro linux服务器。在我的shell脚本中,我正在连接redshift并进行我的活动。但我应该能够连接redhsift(即我可以将密码作为变量传递,并且在连接之后,我应该能够执行我的活动)。
你能指导我吗?
Thaks
答案 0 :(得分:1)
尝试使用下面的内容,它对我有用。
psql "host=yourhostname port=yourport_no dbname=your_DB_name user=your_user_id password=your_password" -F --no-align -c " Your_SQL_statement"
答案 1 :(得分:0)
如果我没有误解你,你想避免终端被要求输入你的密码。如果是这样,你可以使用环境变量&#34; PGPASSWORD&#34;为了给你的redshift密码。
然后你可以使用&#34; -w&#34; (在您的命令行中以小写形式,没有其他内容)以避免询问密码。
类似的东西:
export PGPASSWORD=your_password
psql -h your_hostname -d your_databae -U your_user -p your_port -w