pgAdmin 4 始终在浏览器中打开,而不是作为独立的桌面应用程序

Posted

技术标签:

【中文标题】pgAdmin 4 始终在浏览器中打开,而不是作为独立的桌面应用程序【英文标题】:pgAdmin 4 always open in browser not as a standalone desktop application 【发布时间】:2018-10-30 07:57:33 【问题描述】:

安装了 PSQL10,但是当 pgAdmin 从开始运行时,总是在浏览器中打开。没有作为桌面应用程序运行的选项

【问题讨论】:

我刚刚将 PGAdmin 4 更新到了 3.0 版,是的,它确实在我的浏览器中打开,这是完全不同的。它似乎只在我的默认浏览器 Chrome 中打开。我有点担心我无法访问查询工具,但在调整了被阻止的弹出窗口后,它似乎一切正常。 我有一种same problem with pgadmin4 on Ubuntu 浏览器标签关闭后如何访问pgadmin? 【参考方案1】:

我也遇到了同样的问题。

下载 PgAdmin III - 它是独立的查询编辑器official link v1.22.2/win32

【讨论】:

请不要只发布一些工具或库作为答案。至少在答案本身中展示how it solves the problem。【参考方案2】:

我在 MacBook(运行 Mojave)上使用的解决方案基于 @Andrej 的回答和相关的 cmets。它并不完美,但可以满足我的大部分需求。

首先,安装 pgAdmin。我使用自制软件:

$ brew cask install pgadmin4

应用程序菜单启动pgAdmin。

这会在顶部菜单栏中为您提供一个看起来像大象的图标。在那里,选择 Configure... 并更改 浏览器命令

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --app %URL%

选中Fixed Port Number复选框并选择任意一个 端口(我用20000),然后点击OK

接下来,使用 New pgAdmin 4 window 从大象菜单中打开一个新的浏览器窗口。您可能需要输入密码来保护您的数据库凭据。

窗口打开后,转到窗口右侧的 Chrome 的 3 点菜单,然后选择 更多工具 > 创建快捷方式。确保选中复选框以使用单独的窗口。

Chrome 将创建一个快捷方式,在单独的窗口中弹出 pgAdmin,并带有自己的图标,您可以将此窗口固定到 Dock。如果您忘记将快捷方式固定到 Dock,您可以通过 chrome://apps/ 再次找到它。

不幸的是,这个快捷方式不会自动启动 pgAdmin 并且不会 继承您在使用大象菜单中的 New pgAdmin 4 窗口 时获得的安全上下文。因此,在重新启动或退出 Chrome 后,您会收到如下错误:

未经授权 服务器无法验证您是否有权访问请求的 URL。您要么提供了错误的凭据(例如密码错误),要么您的浏览器不知道如何提供所需的凭据。

解决方法是从 Applications 菜单启动 pgAdmin,然后使用 New pgAdmin 4 window 打开一个新窗口。之后,您可以使用 ⌘-R 刷新您的独立窗口,然后您可以关闭其他浏览器窗口。

这有点烦人,但它至少为我提供了一个单独的图标和窗口,这是我最关心的。

【讨论】:

谢谢。我错过了用“”包围命令。【参考方案3】:

正如@Andrej 提到的,配置 pgAdmin 4 的 pgAdmin 4 浏览器命令选项可以让您更好地控制它的打开方式,并且一些浏览器允许命令行参数可以将配置文件、数据和停靠图标分开。一些例子:

Chrome 有一个--profile-directory 选项,它将在 Chrome 中使用特定的“人”或个人资料。如果您希望 Chrome 在您的 Dock 中只显示一次,并通过单击配置文件图标或更改 Dock 中的配置文件/人员来切换 Chrome 中的配置文件/人员,那么您可以使用它。

Chrome 也有一个--user-data-dir 选项,它允许更多的数据分离,也许界面的复杂性更低,并允许 Chrome 在 Dock 中作为不同的实例打开。如果您使用它,它也将是一个单独的配置文件,但只是在不同的数据目录中。

对于任何一个,为 pgAdmin 配置文件使用不同的皮肤/主题可能是一个好主意。像Simple Red Theme 这样可能不同的东西可能是一个不错的选择。

对于 macOS 和 Chrome,您可能会使用类似 https://apple.stackexchange.com/a/258760 中提到的浏览器命令:

open -na "Google Chrome" --args --user-data-dir="/Users/yourusername/somedirname" %URL%

如果您真的希望 pgAdmin 在 Dock 中运行更类似于常规桌面应用程序,而不是必须使用,您可以搜索 desktop webapp wrapper app 并尝试其中之一(例如 Applicationize、Fluid 等)。

【讨论】:

【参考方案4】:

使用新的 chrome 版本,可以将 pgAdmin 4 作为“本机”桌面应用程序运行。在 pgAdmin v4 网络服务器运行时,右键单击 Windows 系统托盘中的图标并选择 Configure...Browser Command 输入中添加以下内容:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app=%URL%

请注意,如果您在其他位置安装了 Google Chrome,则需要相应地更新上面的 chrome.exe 快捷方式。

现在,当您启动 pgAdmin 4 时,它有自己的窗口,您可以将其固定到任务栏/选项卡等等。和以前一样。

【讨论】:

这将保证应用程序在单独的 Chrome 窗口中运行,这很有帮助。它甚至在窗口的任务栏中提供了一个 pgadmin 图标。但我不会将它与原生桌面应用程序(有或没有引号)进行比较。 (仍然认为有用。) 喜欢这个解决方案按预期工作,现在我不必在我的 30 个标签中搜索:P 在 Linux 下也很好用! /usr/bin/google-chrome --app=%URL% OS X: "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --app %URL% @RxT 似乎 Firefox 开发人员不将此视为优先事项,并且不喜欢它而不是出于安全考虑(因为 localhost 不使用 https),如果我正确检查了最后几个 cmets: Bugzilla Bug 1283670【参考方案5】:

是的,这似乎是 pgAdmin 的新方向,他们有他们的理由,这在他们的文档中都有说明。以下是文档的链接以获取更多信息:https://www.postgresql.org/about/news/1846/

【讨论】:

我可以理解原因,但最好是可配置的,也许选择一个浏览器。 我想这是一个可以向@CharlieClark 项目的维护者提出的问题 @CharlieClark 您可以选择浏览器,只需在系统托盘中右键单击pgAdmin,然后按配置。然后,在 Runtime 下,您可以键入浏览器命令。 感谢您的提示,但“浏览器命令”有点含糊。我确信我最终能够解决这个问题,但在 MacOS 上open %URL% 当然,只会在默认浏览器中给我另一个选项卡。 Firefox %URL% 等其他尝试似乎不起作用。 我能够让它在 MicrosoftEdge 中启动,但是,Edge 遇到与 FF 相同的查询工具错误。启动 Edge 的代码(注意:有 no 引号 !important ) [ powershell start shell:AppsFolder\Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge ]【参考方案6】:

发布说明说它现在利用浏览器来修复 QtWebKit/QtWebEngine 中的错误:

桌面运行时现在作为系统托盘应用程序运行,并利用系统上的浏览器显示 pgAdmin。这解决了由 QtWebKit/QtWebEngine 引起的许多错误和问题。

https://www.postgresql.org/about/news/1846/

【讨论】:

以上是关于pgAdmin 4 始终在浏览器中打开,而不是作为独立的桌面应用程序的主要内容,如果未能解决你的问题,请参考以下文章

始终打开 puppeteer 浏览器作为全局实例与为每个请求使用新的浏览器实例

如何使 XML 文件始终在文本编辑器而不是 XML 编辑器中打开?

pgAdmin 4 在查询执行后不显示结果(postgreSQL)

最新版的Chrome 69.0 设置始终开启flash而不是先询问

从 pgAdmin4 导出的 csv 文件中保留索引列

如何使拖放始终在Flex 4 Spark List中复制(永不删除)?