170 похожих чатов

Здравствуйте. По проекту надо прикрутить на laravel проект бд postgresql.

Я создал нужного пользователя, бд, выдал пользователю все права для данного бд. Ну тут когда я хочу делать 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). Помогите пожалуйста как можно данную проблему решить?

8 ответов

41 просмотр

https://stackoverflow.com/questions/75352342/permission-denied-for-schema-public-at-character-14

Ismayil-Nazarov Автор вопроса
Vitaly Larin
https://stackoverflow.com/questions/75352342/permi...

Спасибо. Но я уже эту статью читал и сделал так как там написано но это не помогает.

Ismayil Nazarov
Спасибо. Но я уже эту статью читал и сделал так ка...

значит не так .. потому что Вам явно пишет, что у Вас нет доступа к схеме public для выполнения операций.. почитайте в чем особенности postgres https://postgrespro.ru/docs/postgresql/14/ddl-schemas#DDL-SCHEMAS-PUBLIC

Ismayil-Nazarov Автор вопроса
Vitaly Larin
значит не так .. потому что Вам явно пишет, что у ...

Да я тоже надеелся что это поможет и удивился когда не помогло. Там указывают выполнять строку - GRANT CREATE ON SCHEMA public TO my_database_user; - ну это означает как я понимаю дать права для конкретного пользователя для схемы public. В данным случае я указал конечно же своего пользователя и это выполнял на SQL Shell (psql) и все прошло гладко было написано GRANT. Но в ларавеле повторяю миграции но ошибка остается.

Ismayil-Nazarov Автор вопроса
Vitaly Larin
значит не так .. потому что Вам явно пишет, что у ...

И по вашей ссылке документацию тоже читал. Но пока все не то.

проверьте своего пользователя, получил ли он нужные права SELECT * FROM information_schema.role_table_grants WHERE grantee = 'YOUR_USER'; или \dn+ YOUR_USER https://sysadminium.ru/privilegii_v_postgresql/#Psevdo_rol_public

Ismayil-Nazarov Автор вопроса
Vitaly Larin
проверьте своего пользователя, получил ли он нужны...

Выполнил команду и SQL shell выдавал 0. Я до выполнение этой команды решил проблему через pgadmin. Я там нашел своего пользователя нажал на правую кнопку и там выбрал properties и на открывающим окне на вкладке privileges включил Superuser? на 1. Конечно хотелось бы все таки через shell решать потому что через pgadmin как то не серьезно но после этого миграции в laravel пошли. И даже после этого команда который вы мне дали показывает 0 что очень странно.

Ismayil Nazarov
Выполнил команду и SQL shell выдавал 0. Я до выпол...

Вы там своего пользователя админом сделали .. ну то есть решили проблему через одно место

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта