Я не могу подключиться к базе данных, используя этот код:
void connect_to_db(){
connection = PQconnectdb("user=username password=123 dbname=project_db");
printf("%s\n", PQerrorMessage(connection));
}
int main() {
connect_to_db();
PQfinish(connection);
return 0;
}
когда я запускаю программу, она печатает ошибку: FATAL: Peer authentication failed for user "username"
. Я создал базу данных и имя пользователя с помощью этих команд в оболочке psql:
CREATE DATABASE yourdbname;
CREATE USER youruser WITH ENCRYPTED PASSWORD 'yourpass';
GRANT ALL PRIVILEGES ON DATABASE yourdbname TO youruser;
это pg_hba.conf
файл:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
#host all all 127.0.0.1/32 ident
host all all 127.0.0.1/32 md5
# IPv6 local connections:
#host all all ::1/128 ident
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication all peer
#host replication all 127.0.0.1/32 ident
#host replication all ::1/128 ident
/etc/postgresql/9.1/main/pg_hba.conf*
- person Amir reza Riahi   schedule 26.06.2020pg_hba.conf
, а не образец. - person Jasen   schedule 26.06.2020pg_hba.conf
. не могли бы вы помочь мне найти проблему? - person Amir reza Riahi   schedule 26.06.2020