Функции AWS RDS Postgres Crypto не работают даже с включенным расширением pgcrypto - PullRequest
1 голос
/ 26 мая 2019

У меня есть свежий экземпляр AWS RDS Postgres (v 11).Я установил расширение pgcrypto, и оно не позволяет делать это снова:

CREATE EXTENSION pgcrypto;
Error in query (7): ERROR: extension "pgcrypto" already exists

Но я не могу использовать функции расширения:

select gen_salt('bf');
Error in query (7): ERROR: function gen_salt(unknown) does not exist
LINE 1: select gen_salt('bf')
HINT: No function matches the given name and argument types. You might need to add explicit type casts.

Что яя делаю не так?

1 Ответ

1 голос
/ 26 мая 2019

Проблема заключалась в том, что расширение, вероятно, было добавлено, когда схема была активна.Спасибо @ Antti Haapala за ссылку на тот же вопрос: https://dba.stackexchange.com/questions/135093/in-rds-digest-function-is-undefined-after-creating-pgcrypto-extension.

Я сделал следующее, когда не выбрана схема:

DROP EXTENSION pgcrypto;
Query executed OK, 0 rows affected. (0.031 s)

CREATE EXTENSION pgcrypto;
Query executed OK, 0 rows affected. (0.046 s)

SELECT gen_salt('bf');
gen_salt
$2a$06$kyj11fcRtpwxrqgCfZEIaO

И все работает отличноТеперь.

...