Страница 1 из 1

роль в бд для подключения к php

Добавлено: 31 май 2017, 16:01
bbbttt
Я несколько месяцев назад работал с openserver и создавал роль входа p55 в PostgreSQL. Теперь возобновил работу и распаковал установщик на ноутбук и почему-то при соединении с базой через php у меня выдаёт что роль входа не определена. Сейчас я эту роль не использую. Варианты: "что же тебе мешает сделать эту роль и пользоваться без проблем" отпадают, потому что меня волнует функционал программного пакета.

Re: роль в бд для подключения к php

Добавлено: 31 май 2017, 16:24
bbbttt
PostgreSQL привязывает имя пользователя моей операционной системы что ли? НЕ может этого быть

Re: роль в бд для подключения к php

Добавлено: 01 июн 2017, 01:04
GeekHacker
Честно говоря, мало что понял. Вы не можете создать роль, или что?
Сразу в PostgreSQL есть только один пользователь: postgres без пароля.
В то же время, если вы работаете с PostgreSQL, например, из консоли, то БД будет пытаться выполнять действия от имени пользователя, под которым вы работаете в системе. Разумеется, если вы явно не указываете пользователя.
Т.е. предположим, что вы работаете в системе под пользователем admin.
Вы открываете консоль и пытаетесь, например, создать нового пользователя утилитой createuser.
createuser ...
Операция попытается выполниться от имени пользователя admin. Естественно, в PostgreSQL такого юзера нету и вы получите ошибку.
Вариант первый: явно указывать пользователя
createuser -U postgres ...
Вариант второй: создать пользователя admin и наделить его нужными правами.
Аналогичная ситуация и относительно остальных аспектов работы с PostgreSQL.

Re: роль в бд для подключения к php

Добавлено: 01 июн 2017, 06:16
bbbttt
Я делаю пользователя в самой СУБД. Когда-то давно создавал пользователя (роль входа) p55. Потом долго не пользовался и вот возобновил работу, поставил опенсервер на ноутбук и прописываю в php файле проверку подключения к базе данных. При запуске php файла мне выдаётся ошибка: "Warning: pg_connect(): Unable to connect to PostgreSQL server: FATAL: role "p55" does not exist in". Но эту роль я даже не создавал, а использую начального пользователя postgres.

Re: роль в бд для подключения к php

Добавлено: 01 июн 2017, 13:49
bbbttt
нашёл в чём проблема, это он ссылается на имя пользователя компьютера. А давно так? Ведь не было, по крайней мере не видел никогда ещё такого.