我刚刚在 Ubuntu 9.10 上安装了 postgres 8.4,它从未要求我创建超级用户。是否有默认的超级用户及其密码?如果没有,我如何创建一个新的?
我正在调查数据库连接无限期打开的问题,导致数据库服务器出现问题。我如何查看当前打开的 PostgreSQL 服务器连接,尤其是那些使用特定数据库的连接?理想情况下,我也想看看那里正在执行什么命令。基本上,我正在寻找与 MSSQL 中的“当前活动”视图等效的东西。
是否有一个班轮,授予SELECT权限给新用户的PostgreSQL?
将实现以下伪代码的东西:
GRANT SELECT ON TABLE * TO my_new_user;
Run Code Online (Sandbox Code Playgroud) SHOW CREATE TABLEPostgres 中是否有相当于 MySQL 的版本?这可能吗?如果不是,下一个最佳解决方案是什么?
我需要该语句,因为我使用它在远程服务器上(通过 WCF)创建表。
有谁知道 Postgres 是否有一种方法可以“漂亮地”显示查询结果,就像 MySQL 在命令行上用 \G 结束查询时所做的那样?例如,“select * from sometable\G”而不是“select * from sometable;”
非常感谢!
我试图将给定数据库的所有表的所有权限授予新的 postgres 用户(不是所有者)。似乎GRANT ALL PRIVILEGES ON DATABASE my_db TO new_user;没有这样做。成功运行上述命令后(作为 postgres 用户),我以 new_user 的身份得到以下信息:
$ psql -d my_db
my_db => SELECT * FROM a_table_in_my_db;
ERROR: permission denied for relation a_table_in_my_db
Run Code Online (Sandbox Code Playgroud)
两个问题:
1) 如果没有授予 my_db 上所有表的所有权限,那么上面的命令会做什么?
2)将所有表的所有权限授予用户的正确方法是什么?(包括将来创建的所有表)
我在一台机器上使用了 pg_dump 并将结果文件复制到另一台机器上,在那里我试图恢复它。我相信架构是一样的。但是,我得到:
pg_restore: [archiver] input file does not appear to be a valid archive
Run Code Online (Sandbox Code Playgroud)
我做了以下操作:
pg_dump -a -f db.txt dbname
Run Code Online (Sandbox Code Playgroud)
和:
pg_restore -a -d dbname db.txt
Run Code Online (Sandbox Code Playgroud)
可能有什么问题?
在虚拟机中运行的任何事情都会有性能损失的一定水平,但需要多少真正影响数据库系统的性能?
我发现这篇学术参考论文有一些有趣的基准测试,但它是仅使用 Xen 和 PostgreSQL 的有限测试。结论是,使用虚拟机“不会以很高的性能成本”(尽管您可能认为实际数据并非如此)。
在虚拟机中运行数据库有哪些技术、管理和其他缺陷?
请发布可以得到客观事实支持的答案,我对猜测或任何其他半宗教论点不感兴趣(极客的热情在很多方面都很好,但这对我们没有帮助)。
话虽如此,
- 在虚拟机中运行数据库时会出现什么问题?(请发参考资料)
- 这些问题重要吗?
- 它们仅在某些情况下才有意义吗?
- 有哪些解决方法?
为了开发一个基于 postgresql 的 web 应用程序,我需要在我的 centos 上安装 libpq。
我可以在 ubuntu 上通过“apt-get install libpq-dev”安装它,但我不能通过“yum install libpq”在centos上安装它。
谁能告诉我怎么安装,谢谢!
PostgreSQL 用户默认在 unix 套接字上进行对等身份验证,其中 unix 用户必须与 PostgreSQL 用户相同。所以人们经常使用su或sudo成为postgres超级用户。
我经常看到人们使用以下结构:
sudo su - postgres
Run Code Online (Sandbox Code Playgroud)
而不是
sudo -u postgres -i
Run Code Online (Sandbox Code Playgroud)
我想知道为什么。同样,我见过:
sudo su - postgres -c psql
Run Code Online (Sandbox Code Playgroud)
代替
sudo -u postgres psql
Run Code Online (Sandbox Code Playgroud)
如果没有领导sudo的su版本可能会做出一些感觉,如果你是一个老平台没有sudo。但是为什么要在比史前时代更短的 UNIX 或 Linux 上使用sudo su?
postgresql ×10
sql ×3
mysql ×2
permissions ×2
centos ×1
database ×1
oracle ×1
shell ×1
sql-server ×1
su ×1
sudo ×1
yum ×1