我一直在使用Azure中的DevOps为天青PostgreSQL数据库中创建管道。
实际上管道做什么?
- 连接到PostgreSQL;
- 删除使用Azure的CLI从PostgreSQL数据库db_test;
AZ的Postgres数据库中删除-g my_group -s database_here -n db_test --yes
但是,我不能做到这一点,由于错误:
An unexpected error occured while processing the request.
于是,我试图删除使用PSQL数据库,但没有运气,由于数据库的现有连接。
从我的观点 - Azure的CLI必须处理这些问题,并删除数据库或通过正确的错误消息给我。 例如这将是巨大的,如果参数--force将实施。
我已删除使用下面的语法在bash脚本,数据库的所有连接:
psql "host=database_here port=5432 dbname=postgres user=postgres@database_here password=ReallyStrongPassword sslmode=require" -c "REVOKE CONNECT ON DATABASE db_test FROM PUBLIC; SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE pg_stat_activity.datname = 'db_test';"
并添加DROP DATABASE行动还到我的管道:
psql "host=database_here port=5432 dbname=postgres user=postgres@database_here password=ReallyStrongPassword sslmode=require" -c "DROP database db_test;"
但我没有删除从管道AZ CLI数据库去除步骤,它已失败,出现以下的输出:
Operation failed with status: 200. Details: Resource state Failed
我觉得这一步,AZ CLI应该返回类似:“数据库中不存在” 正如参考消息。
如何妥善处理在Azure侧这样的情况?