Я создал нужного пользователя, бд, выдал пользователю все права для данного бд. Ну тут когда я хочу делать php artisan migrate выскакивает такая ошибка: SQLSTATE[42501]: Insufficient privilege: 7 ОШИБКА: нет доступа к схеме public at character 14 (Connection: pgsql, SQL: create table "migrations" ("id" serial not null primary key, "migration" varchar(255) not null, "batch" integer not null). Помогите пожалуйста как можно данную проблему решить?
https://stackoverflow.com/questions/75352342/permission-denied-for-schema-public-at-character-14
Спасибо. Но я уже эту статью читал и сделал так как там написано но это не помогает.
значит не так .. потому что Вам явно пишет, что у Вас нет доступа к схеме public для выполнения операций.. почитайте в чем особенности postgres https://postgrespro.ru/docs/postgresql/14/ddl-schemas#DDL-SCHEMAS-PUBLIC
Да я тоже надеелся что это поможет и удивился когда не помогло. Там указывают выполнять строку - GRANT CREATE ON SCHEMA public TO my_database_user; - ну это означает как я понимаю дать права для конкретного пользователя для схемы public. В данным случае я указал конечно же своего пользователя и это выполнял на SQL Shell (psql) и все прошло гладко было написано GRANT. Но в ларавеле повторяю миграции но ошибка остается.
И по вашей ссылке документацию тоже читал. Но пока все не то.
проверьте своего пользователя, получил ли он нужные права SELECT * FROM information_schema.role_table_grants WHERE grantee = 'YOUR_USER'; или \dn+ YOUR_USER https://sysadminium.ru/privilegii_v_postgresql/#Psevdo_rol_public
Выполнил команду и SQL shell выдавал 0. Я до выполнение этой команды решил проблему через pgadmin. Я там нашел своего пользователя нажал на правую кнопку и там выбрал properties и на открывающим окне на вкладке privileges включил Superuser? на 1. Конечно хотелось бы все таки через shell решать потому что через pgadmin как то не серьезно но после этого миграции в laravel пошли. И даже после этого команда который вы мне дали показывает 0 что очень странно.
Вы там своего пользователя админом сделали .. ну то есть решили проблему через одно место
Обсуждают сегодня