0

嗨,伙计们,我正在尝试将部署命令应用于托管在 azure 上的数据库。不过,我收到以下错误:

sqitch deploy db:pg://cmurcia%40dataplatform:*****@dataplatform.postgres.database.azure.com:5432/dataplatform_metadata_service
Adding registry tables to db:pg://cmurcia%40dataplatform:@dataplatform.postgres.database.azure.com:5432/dataplatform_metadata_service
psql:/usr/share/perl5/App/Sqitch/Engine/pg.sql:4: ERROR:  permission denied for database dataplatform_metadata_service
"/usr/bin/psql" unexpectedly returned exit value 3
I tested with psql and I can both log in and modify tables in the database that is accessed with the mentioned URI (db:pg://cmurcia%40dataplatform:*****@dataplatform.postgres.database.azure.com:5432/dataplatform_metadata_service).

我也试过

sqitch deploy -t postgresql://cmurcia%40dataplatform:Welcome0518%21@dataplatform.postgres.database.azure.com:5432/dataplatform_metadata_service
Adding registry tables to db:postgresql://cmurcia%40dataplatform:@dataplatform.postgres.database.azure.com:5432/dataplatform_metadata_service
psql:/usr/share/perl5/App/Sqitch/Engine/pg.sql:4: ERROR:  permission denied for database dataplatform_metadata_service
"/usr/bin/psql" unexpectedly returned exit value 

3

我想问一下你是否有任何关于如何解决这个问题的提示。谢谢!

仅供参考,我正在使用托管在 azure 上的 ubuntu linux VM 来运行我安装 sqitch 的命令,sqitch 在本地工作。

4

1 回答 1

0

Sqitch 连接到数据库时所做的第一件事是创建注册表(如果它尚不存在)。通常这是一个名为sqtich. 查看Postgres 注册表脚本。确保您有权创建架构。如果您不这样做,请让其他人创建它并授予您在其中创建对象以及您的项目架构的权限。

于 2020-06-26T18:43:22.423 回答