我已经使用Azure DevOps for Azure PostgreSQL数据库创建了管道。
管道的实际作用是什么?
az postgres db delete -g my_group -s database_here -n db_test-是
但是,由于错误,我无法执行此操作:
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数据库操作:
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方面正确处理此类情况?
答案 0 :(得分:0)
az postgres db show
是否显示数据库详细信息?请检查是否由于this行为而发生这种情况,尽管所引用的线程中的讨论是在SQL数据库中进行的。
如果问题仍然存在,请随时放弃您的反馈意见here,与我们的GitHub repo打开一个问题,供内部团队研究。
感谢您的反馈!