gpt4 book ai didi

php - Doctrine2 PostgreSQL 架构限制

转载 作者:行者123 更新时间:2023-12-04 18:06:52 25 4
gpt4 key购买 nike

我有一个安装了 PostGIS 扩展的 PostgreSQL 数据库。它有 3 个其他模式(tiger、tiger_data、topology)和 public。我的表应该在公共(public)架构中,但现在我无法运行 doctrine:schema:update,因为这个错误:

[PDOException]
SQLSTATE[42501]: Insufficient privilege: 7 ERROR: permission denied for schema topology
LINE 1: SELECT min_value, increment_by FROM "topology"."topology_id_...

所以我不能从我的实体生成我的表(或者只是转储 DDL sql)。

我能否以某种方式限制该学说以仅分析公共(public)计划并跳过其他计划?

最佳答案

在 super 用户创建扩展后,您可以将所需模式的权限授予默认用户。

-- tables and views
GRANT SELECT ON ALL TABLES IN SCHEMA topology TO some_username;
ALTER DEFAULT PRIVILEGES
IN SCHEMA topology
GRANT SELECT
ON TABLES
TO some_username;

-- sequences
GRANT SELECT, USAGE ON ALL SEQUENCES IN SCHEMA topology TO some_username;
ALTER DEFAULT PRIVILEGES
IN SCHEMA topology
GRANT SELECT, USAGE
ON SEQUENCES
TO some_username;

-- usage
GRANT USAGE ON SCHEMA topology TO PUBLIC;

这是我的 Ansible 模板,用于准备与 PostGIS 一起使用的数据库:https://gist.github.com/leafnode/5b416efe87ed152b12bb24b1dc4f5f14如果您在共享环境中使用数据库,则可能会收紧某些权限。

关于php - Doctrine2 PostgreSQL 架构限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24407512/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com