Вместо "id SERIAL NOT NULL UNIQUE" пишут "id SERIAL PRIMARY KEY" Вместо "user_id INT REFERENCES users (id) ON DELETE CASCADE NOT NULL" пишут "FOREIGN KEY (user_id) REFERENCES users ON DELETE CASCADE"
Для всех, кто только сморит и имеет проблемы с миграцией: Set-ExecutionPolicy RemoteSigned -Scope CurrentUser scoop install migrate migrate create -ext sql -dir ./schema -seq init
Когда он запускает контейнер и прописывает POSTGRES_PASSWORD - апострофы не нужны. Пароль по итогу так и записался с апострофами. 'qwerty' вместо qwerty Актуально для windows
Подключение к докер контейнеру On Windows CMD (not switching to bash): docker exec -it /bin/sh On Windows CMD (after switching to bash): docker exec -it //bin//sh or winpty docker exec -it //bin//sh On Git Bash: winpty docker exec -it //bin//sh
после migrate -path выходит: error: database driver: unknown driver 'postgres (forgotten import?) уже скачал все драйвера которые могут быть)) из за чего может быть?)
irm get.scoop.sh -outfile 'install.ps1' .\install.ps1 -RunAsAdmin [-OtherParameters ...] # I don't care about other parameters and want a one-line command iex "& {$(irm get.scoop.sh)} -RunAsAdmin" и потом: scoop install migrate
То есть обязательно ставить докер? У меня Mac, и Postgresql я давно установил через brew, использую его для других проектов, не под Golang. И команда migrate у меня не работает даже после установки пакета для go
migrate : Имя "migrate" не распознано как имя командлета, функции, файла сценария или выполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите попытку. строка:1 знак:1 + migrate create -ext sql -dir ./schema -seq init + ~~~~~~~ + CategoryInfo : ObjectNotFound: (migrate:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
Для тех у кого win10 и кому лень искать, вводить в терминал 1. irm get.scoop.sh | iex 2. scoop install migrate и потом то, что вводит автор: migrate create -ext sql -dir ./schema -seq init
Для новичков стоит отметить, что при таком способе запуска постгреса, данные в нем превратятся в тыкву после остановки контейнера. Если хочется, чтобы данные всегда были доступны, то нужно читать про перзистент вольюмы, флаг -v и docker compose.
@@Ivan-vb7ch До остановки контейнера всё и правда будет работать нормально, однако, так как мы указали при запуске контейнера флаг rm, то при остановке, контейнер с БД и всеми данными внутри неё, соответственно, будет удаляться. Речь тут скорее всего об этом
Нигде нормально не нашел, можно ограничить ресурсы отдельно на контейнер, но при запуске докера и без контейнеров и без изображений он уже съедает всю оперативку. Можно как-то ограничить это все? Команды находил только для отдельных контейнеров, а с файлом конфигурации не смог пока разобраться. Никто не знает?
@@MaksimZhashkevych просто ты учишь так себе. В udemy у тебя курс убитый. Там купили 830 чел а домашки в конце сдают только 4-8 чел. Это фиговый показатель. Не хотел писать но вот напросился
@@MaksimZhashkevych ещё там же отзывы прочитай на себя. Чуть прислушайся к отзывам. Пишут что учишь и начиная с 4 раздела ты притащил готовый проект который даже не показал как делать.
@@SalemAlemPro потому что это просто курс который я залил на юдеми после того как провел 3 потока в лайве, и с лайва у меня отзывы были ахуенные, студенты брали офферы на 2-3к на мидлов) курс не был записан специально для юдеми, по этому так ты на свой канал лучше посмотри чудик бля, еще мне что то рассказывать будешь)
@@MaksimZhashkevych токсик) по ходу с России? Мой канал вообще не для коммерции). Ты по ходу критику вообще не умеешь принимать. Так если ты кидаешь в удеми платный курс надо же его полноценно кидать а не кусками после лайва). Люди же плотят деньги на удеми
Сначала когда на команды получал ошибки, подумал что фигня твоё видео так как ты не разбирал такие варианты, но потом понял что так даже лучше так как я не буду просто тупо за тобой повторять, а сам буду разбираться во всем что не так и учиться на этом
Ребята всем привет!) у меня почему то не работает команда migrate ((( Выбивает ошибку в командной строке что команда не найдена. В чем может быть ошибка? Что-то не скачал или не настроена система на macOS? Спасибо за помощь)
после запуска команды migrate вылетает ошибка : error: pq: password authentication failed for user "postgres" не нашел решение этой проблемы, кто сталкивался с этим?
Я тоже просидел немало времени над этой ошибкой еще у меня миграция проходила не в докер-контейнер, а в postgres от компа не смог решить и решил начать сызнова. Все дропнул переписал в точности как указано заработал! Предполагаю: перепутал когда указывал порты docker run --name......-p 5436:5432 надо так, а я возможно написал 5432:5436. Либо помогли изменения в pg_hba.config(но не точно)
Если кому будет актуально, объясняю: Линукс по умолчанию предлагает поставить migrate не для golang, а для python. И очень многие, не обращая на это внимание, соглашаются, устанавливают и удивляются, почему не работает. Сам столкнулся с этой же проблемой. Как её решить? Удалить установленный пакет миграции для python и заменить его пакетом для golang. Как именно это можно сделать- гугл расскажет