Ruby on rails 在Windows上通过Ubuntu上的Bash安装时,使用Postgres在Windows 10上安装PgAdmin
我想在Windows的Ubuntu上安装Rails 5/Postgres 还可以通过访问Postgres数据库 我很高兴在Windows上通过Ubuntu上的Bash安装我所有的rails依赖项,但我知道我无法从Bash运行任何标准GUI工具,我想知道是否可以在Linux子系统上安装rails和PostGres,然后使用Windows版本的PgAdmin查询我的数据库 我看过本教程,但他似乎将Postgres安装到windows而不是Linux子系统中 我想知道这是否是让所有这些工具协同工作的唯一方法Ruby on rails 在Windows上通过Ubuntu上的Bash安装时,使用Postgres在Windows 10上安装PgAdmin,ruby-on-rails,postgresql,windows-10,pgadmin,bash-on-windows,Ruby On Rails,Postgresql,Windows 10,Pgadmin,Bash On Windows,我想在Windows的Ubuntu上安装Rails 5/Postgres 还可以通过访问Postgres数据库 我很高兴在Windows上通过Ubuntu上的Bash安装我所有的rails依赖项,但我知道我无法从Bash运行任何标准GUI工具,我想知道是否可以在Linux子系统上安装rails和PostGres,然后使用Windows版本的PgAdmin查询我的数据库 我看过本教程,但他似乎将Postgres安装到windows而不是Linux子系统中 我想知道这是否是让所有这些工具协同工作的唯
基本上,我希望我的Windows安装的PgAdmin与我的Bash在WindowsPostgres DB上的Ubuntu上进行通信,Ubuntu有X服务器,您可以在那里运行PgAdmin III GUI(我从未尝试过IV,但非常确定它在linux上会更好)。不过,如果您想在Windows上的某个虚拟机上设置db并使用Windows客户端-是的-它会起作用。你需要在你的虚拟机和Windows主机之间建立一些网桥,就是这样——使用Ubuntu IP连接到Postgres。(您还需要允许在
pg_hba.conf
中进行连接,并将listen\u address
设置为*
,但对于外部连接,仍然需要这样做)以下是我从Windows pgAdmin连接WSL Ubuntu中安装的Postgres DB时所做的操作
sudo服务postgresql启动
保存密码?
由@kiatng提供的答案也帮助了我。但是,当我试图访问表中的数据时,我遇到了一个未连接的
套接字错误。通过另一次谷歌搜索,我发现我需要将localhost更改为127.0.0.1,然后才能访问数据。
把这个放在这里,以防万一对别人有帮助。我本来会回答kiatng的回答,但我还没有足够的“声誉”来回答 如果有人遇到我的问题,请发布帖子
在我的例子中,连接被拒绝了,我可以通过在postgresql.conf文件中将listen_addresses属性更改为“*”来解决问题
在ubuntu上查找conf文件
sudo -u postgres psql -c 'SHOW config_file'
找到文件后,您需要像这样更改侦听地址
listen_addresses = '*'
然后使用重新启动postgres
sudo service postgresql restart
在编辑文件之前,您可能需要更改文件的权限,请不要忘记在完成此更改后还原此更改。我刚刚了解到,bash for Windows与您的线程一起存在:)也许将令人头痛的问题保存为Windows上的Rails不是一个简单的设置(但仍能完美工作)。。。但是我很好奇地想看看Windows上Bash上的Rails会怎么样(我知道微软,一个额外的层仍然是一个额外的层)@David Cruwys你能理解这个吗?这会反过来吗,也就是说,如果postgres安装在Windows上,我们还能在WSL中访问它(而不是通过pgAdmin)吗,使用say R或Python?我确实从localhost
更改为127.0.0.1
,但现在出现另一个错误致命:用户“postgres”的密码身份验证失败
。为了在WSL中设置postgres,我遵循并相应地更改了密码。非常感谢!!我重复这些信息以帮助其他人:我的PgAdmin与数据库con wsl2的连接工作正常,但是选择表记录的查询速度非常慢(我没有收到请求的响应),我使用127.0.0.1而不是localhost创建了一个新的服务器连接,请求工作正常!实时的。谢谢!!我爱你haha@PrateekJha我也遇到了同样的问题,我尝试用这些命令更改密码,并尝试在PgAdmin中再次创建db,结果成功了@ChloeSun我通过在postgresql.conf文件中设置allow all connection解决了这个问题。这个答案允许我连接到数据库,但我仍然收到postgres用户的身份验证错误,这个答案为我修复了以下问题: