Setting up a new PostgreSQL instance

Not using Docker , this is a standard VPS.
I am setting up a new PostgreSQL instance to replace a working MySQL instance on the same server.

Debian 12.2
PostgreSQL 15.3

I have used psql to create a ttrss database and user with -

CREATE DATABASE ttrss;
CREATE USER ttrss WITH ENCRYPTED PASSWORD 'xxxxxxxxxxx';
GRANT ALL PRIVILEGES ON DATABASE ttrss TO ttrss;

The config.php file contains the bare minimum -

putenv('TTRSS_DB_HOST=127.0.0.1');
putenv('TTRSS_DB_USER=ttrss');
putenv('TTRSS_DB_NAME=ttrss');
putenv('TTRSS_DB_PASS=xxxxxxxxxxxxx');
putenv('TTRSS_SELF_URL_PATH=https://domain.tld');

However , when I run -

/usr/bin/php ./update.php --update-schema

I am seeing this error -

PHP Fatal error:  Uncaught PDOException: SQLSTATE[42501]: Insufficient privilege: 7 ERROR:  permission denied for schema public at character 28 in /var/www/domain.tld/classes/db/migrations.php:69
Stack trace:
#0 /var/www/domain.tld/classes/db/migrations.php(69): PDO->query()
#1 /var/www/domain.tld/classes/db/migrations.php(62): Db_Migrations->create_migrations_table()
#2 /var/www/domain.tld/classes/db/migrations.php(155): Db_Migrations->get_version()
#3 /var/www/domain.tld/classes/config.php(426): Db_Migrations->is_migration_needed()
#4 /var/www/domain.tld/classes/config.php(615): Config::is_migration_needed()
#5 /var/www/domain.tld/update.php(21): Config::sanity_check()
#6 {main}
  thrown in /var/www/domain.tld/classes/db/migrations.php on line 69

Any help would be appreciated.
Thanks.
Mark.

this has absolutely nothing to do with tt-rss.

→ google

Thanks Andrew , I got it sorted now.