Answers:
首先获取给定pg_hba.conf的备份副本
sudo tar cvf /var/tmp/mybackup_pg_hba_conf.tar /var/lib/pgsql/data/pg_hba.conf
这样,如果您搞砸了,就可以准备较旧的版本。tar存档的一个不错的功能是保留权限和目录。因此,当pg_hba.conf被破坏时无法识别。您可以:
cd /
sudo tar xvf /var/tmp/mybackup_pg_hba_conf.tar
这将从先前创建的归档文件中还原备份pg_hba.conf。
至于实际插入的行:
sudo su -c 'echo "host all all 10.0.2.12 255.255.255.255 trust" >> /var/lib/pgsql/data/pg_hba.conf'
(注意:命令已编辑。感谢bortzmeyer!)
应该做。注意,这只是将行追加到pg_hba.conf中。如果需要更改它,则必须使用实际的编辑器。就像vi。它的学习曲线可能会有些陡峭,但是至少在您了解了基础知识之后,您在遇到的每个Unix环境中都应该非常安全。
现在我回到正轨,接下来应该尝试重新启动postgresql数据库。我相信在Centos机器上,这是通过以下方式完成的:
sudo service postgresql restart
或者您可以不重新启动就重新加载配置:
su - postgres
pg_ctl reload
现在您应该可以从10.0.2.12访问Centos机器的postrgresql数据库
不要忘记编辑postgresql.conf并更改/添加行
listen_addresses = '*'
默认情况下Postgresql在localhost上侦听