Возможно ли это / как создать классы операторов в GCP postgresql?

#postgresql #google-cloud-sql

#postgresql #google-cloud-sql

Вопрос:

Для создания классов операторов в postgresql требуется атрибут суперпользователя для используемой вами роли — https://www.postgresql.org/docs/9.6/sql-createopclass.html.

Пользователь, который определяет класс operator, становится его владельцем. В настоящее время создающий пользователь должен быть суперпользователем. (Это ограничение введено, потому что ошибочное определение класса operator может запутать или даже привести к сбою сервера.)

Однако GCP не позволяет добавлять атрибут суперпользователя к роли — https://cloud.google.com/sql/docs/postgres/users.

Пользователь postgres является частью роли cloudsqlsuperuser и имеет следующие атрибуты (привилегии): CREATEROLE, CREATEDB и LOGIN. У него нет атрибутов СУПЕРПОЛЬЗОВАТЕЛЯ или РЕПЛИКАЦИИ.

Есть ли какой-либо способ создать классы операторов в GCP postgresql? Если да, то как?

Ответ №1:

Да, ограниченным способом, с использованием расширений PostgreSQL для Cloud SQL. Например, btree_gin или btree_gist . К сожалению, если этого нет в этом списке, то это невозможно сделать.

Если вам нужно запросить новое расширение, вы можете проголосовать за него, найдя его на трекере проблем (ищите Cloud SQL ) или создав новую проблему.