在 pgAdmin 中,如果我连接到主机并让它闲置几分钟,连接就会断开,我必须再次重新连接。在许多情况下,当我尝试重新连接时 pgAdmin 也会挂起,因此我必须强制关闭它并再次打开它。
这很烦人。有没有办法让 pgAdmin 中的连接保持活动状态?
我在 Mac OSX 上用 SQLite、MySQL 和 PostgreSQL 开发 Web 应用程序,然后将这些应用程序放在 Web 服务器上。在处理这些数据库时,我希望能够在本地查看终端时首当其冲 - 是否有任何可用的软件(免费或其他)可以在 Mac 的 GUI 中处理所有这三种数据库技术,实际上是体面和值得吗?
我在自己的家用电脑上使用 Windows 7。我已经安装了 PostgreSQL,现在我想创建一个数据库。
我尝试过,createdb mydatabase但收到此错误消息:
createdb: could not connect to database postgres: FATAL: role "Jonas" does
not exist
Run Code Online (Sandbox Code Playgroud)
我还尝试创建一个角色“Jonas”,createuser Jonas但我遇到了同样的错误,即使我在 PowerShell 中以管理员身份登录。
如何在我的 Windows 7 机器上创建 PostgreSQL 数据库?
我正在尝试安装 Posgtres 命令行客户端(通常是 Linux 上的 psql)。我已经通过 MacPorts(postgresql90 和 postgresql90-server)安装了 postgres,但仍然没有看到安装的客户端。
我搜索了 MacPorts,但找不到客户端的路径或单独的端口来独立安装它。
如何安装 psql 命令行客户端?
我只是犯了一个错误:我在 Mac OSX 10.6.7 上安装了 PostgreSQL,当我想连接到它时,我做了su postgres,然后它要求我输入密码,我确实sudo passwd postgres将密码更改为我知道的内容。
问题是,正如这里所解释的,这为 postgres 创建了一个 Unix 用户帐户,之后我的 Mac 上有两个用户:我和 postgres。
所以我删除了postgres帐户。现在我无法连接到 postgres 因为我不能su postgres。如何重新创建一个我可以安全使用的“锁定”用户帐户 postgres(sudo su postgres按照我以前应该做的那样做)?
编辑:添加了 Mac OS X 版本
Postgres 在进行全文搜索时使用的停用词(忽略词)列表是什么?有没有办法我可以找到这个(通过运行查询或其他东西)?
所以你知道我在找什么,这里是 MySQL 的列表。我猜 Postgres 是类似的http://dev.mysql.com/doc/refman/5.5/en/fulltext-stopwords.html
我在 vagrant 创建的虚拟机中有一个 postgresql 服务器。
我还通过 Vagrant 文件设置了从盒子内的 5432 到主机系统上的 15432 的端口转发。
通过连接时 psql
$ psql dbname username -h 127.0.0.1 -p 15432
psql: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
Run Code Online (Sandbox Code Playgroud)
服务器和客户端都运行 Ubuntu 12.04(postgresql-9.1,版本:9.1+129ubuntu1)
在虚拟机内部连接到端口 5432 工作正常。
自行转发的端口似乎并没有完全出错,因为当我尝试到另一个端口时,我得到“连接被拒绝”)
我刚刚在 Windows 7 上安装了 PostgreSQL 9.6。在安装过程中,我必须为默认用户“postgres”选择一个密码。
安装后运行 pgAdmin4,我输入了“postgres”的密码,它按预期保存。
但是在命令行中,默认用户似乎不是“postgres”,而是我的 Windows 会话用户名,我没有 PostgreSQL 密码(我的 Windows 密码在那里不起作用)。我可以使用 登录psql -U postgres,但是如何将默认用户更改为 postgres?
我刚刚安装了 PostgreSQL 10.4,并注意到与该版本一起打包的 pgAdmin 4 v3.0 界面使用了本地 Web 服务器和浏览器界面。默认情况下,该应用程序似乎使用操作系统(在我的情况下为 Windows 10)分配的临时端口(49152 到 65535)。但是,我在防火墙设置为阻止 HTTP 连接的环境中工作,这会阻止连接到 pgAdmin 网站。有没有办法修复端口号,而不是使用操作系统分配的临时端口?
我已经浏览了pgAdmin 4 v3.0 文档,但找不到有关此类配置的任何信息。作为一种变通方法,我知道我可以使用独立安装程序安装 pgAdmin 4 v2.1,但我讨厌如果我们使用这种方法我们将永远无法升级的想法。
开始编辑
我在 Web 浏览器(Windows Server 2016 上的 IE11)中遇到的错误是:
未经授权
服务器无法验证您是否有权访问所请求的 URL。您要么提供了错误的凭据(例如错误的密码),要么您的浏览器不了解如何提供所需的凭据。
当我搜索这个问题时,我在StackOverflow上发现了以下问题:pg4admin 401 Unauthorized Error
这个问题准确地描述了我的问题。但是,这些答案都没有解决我的问题。托盘应用程序似乎已成功绑定到正确的端口(netstat -a -n似乎是正确的),并且 pgAdmin 日志文件中没有任何可疑内容。我将这个问题保持开放,因为修复端口号似乎是一件合理的事情,同时我试图确定为什么 pgAdmin 不起作用。
有没有办法在 Linux 中关闭读取的页面缓存?更具体地说,我希望我的进程直接从磁盘读取。
我的问题的设置:我正在 Postgres 中尝试新的查询处理技术并测量它们的运行时间。为了准确比较不同方法的运行时间,我需要关闭从操作系统缓存的读取。
我已阅读以下方法,但它们都不适用于我的情况:
echo 1 > /proc/sys/vm/drop_caches:我需要在查询的每次迭代时调用它,这会弄乱我的最终测量时间。O_DIRECT在程序内使用:我无法控制 Postgres 如何读取文件-o sync。我在这里读到它将关闭写入缓冲,但我不确定它是否也会禁用从缓存的读取?hdparm -W 0 /dev/sda1:同样,这只会禁用写入缓存。