Чтобы перевести базу данных в read-only, нужно задать флаг "default_transaction_read_only" в значение "true"
ALTER DATABASE dababase_name SET default_transaction_read_only = true;
Где "dababase_name" — имя необходимой базы данных
Возвращаем возможность записи в БД:
ALTER DATABASE dababase_name SET default_transaction_read_only = false;
Посмотреть текущее значение флага можно так:
SELECT name, setting FROM pg_settings WHERE name = 'default_transaction_read_only';