Azure PostgreSQL: невозможно удалить базу данных через интерфейс командной строки Azure - PullRequest
0 голосов
/ 07 октября 2019

Я создал конвейер, используя Azure DevOps для базы данных Azure PostgreSQL.

Что на самом деле делает конвейер?

  1. Подключение к PostgreSQL;
  2. Удаление базы данных db_test из PostgreSQL с помощью Azure CLI;

az postgres db delete -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действие в дополнение к моему конвейеру:

psql "host=database_here port=5432 dbname=postgres user=postgres@database_here password=ReallyStrongPassword sslmode=require" -c "DROP database db_test;"

Но я не удалил шаг удаления базы данных CLI AZ из конвейера, и он завершился неудачно со следующим выводом:

Operation failed with status: 200. Details: Resource state Failed

Я думаю об этомшаг, AZ CLI должен вернуть что-то вроде: «База данных не существует». просто информационное сообщение.

Как правильно обрабатывать такие ситуации на стороне Azure?

1 Ответ

0 голосов
/ 22 октября 2019

Показывает ли az postgres db show данные базы данных? Пожалуйста, проверьте, происходит ли это из-за этого поведения, хотя обсуждение в цитируемом потоке связано с базой данных SQL.

Если проблема не устранена, пожалуйста, не стесняйтесь оставлять вашиобратная связь здесь откройте вопрос с нашим репозиторием GitHub для нашей внутренней команды.

Спасибо за отзыв!

...