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

Добрый день! Начинаю осваивать по-тихоньку Postgres в рамках импортозамещения в

компании) )) Сам SAPом занимаюсь, пока что, по инерции так сказать) Установил я posgresql себе на компьютер, попробовал селекты через их тестовую БД demo,потыкал в PGAdmin. Есть два вопроса:
1) Где лучше всего найти материал по работе с PGAdmin?
2) Где можно посмотреть, как настроить ландшафты разработка-> тест -> продуктив?

51 ответов

28 просмотров

1) psql вам в помощь. Лучше сразу учиться работать в ней. Это единственный "родной" клиент. Хотя PgAdmin и является стандартом ГУЙни де факто. 2) Понятие ландшафты - это ваша заморочка. Расшифровывайте.

Warstone
1) psql вам в помощь. Лучше сразу учиться работать...

"Хотя PgAdmin и является стандартом" - это откуда инфа? Все знакомые Dbeaver юзают

Dmitriy Sviridov
"Хотя PgAdmin и является стандартом" - это откуда ...

Ну а по факту для Пг стандартом дефакто является PgAdmin. Но вы вольны использовать что угодно, конечно.

Warstone
Ну а по факту для Пг стандартом дефакто является P...

Я имею в виду, где это указано? В документации?

Kirill-Matrenin Автор вопроса
Warstone
1) psql вам в помощь. Лучше сразу учиться работать...

Понял, спасибо. А у Postgres есть понятие впринципе, система разработки, система теста и т.д.? Допустим внесли какие то изменения в таблицу, добавили новую колонку в таблицу например. Дальше эти изменение переехали из разработки в тест, где в этой таблице хранится больше данных, которые относятся к этой таблице

Kirill Matrenin
Понял, спасибо. А у Postgres есть понятие впринцип...

Если я правильно понимаю нет. Есть просто несколько баз данных.

Kirill Matrenin
Понял, спасибо. А у Postgres есть понятие впринцип...

Это же миграции. Их обычно реализуют на уровне приложения, использующего базу данных. И тесты на базу тоже пишут в приложении, используя подходящий фреймворк.

Kirill-Matrenin Автор вопроса
Warstone
Если я правильно понимаю нет. Есть просто нескольк...

А изменения между одной Базы Данных и другой можно переносить? Допустим, вот изменения структуры данных в одной таблице мы переносим, а другие изменения( в другой таблице) пока что в разработке и мы их никуда не переносим

Kirill-Matrenin Автор вопроса
Альберт Степанцев
Это же миграции. Их обычно реализуют на уровне при...

вот я пытаюсь разобраться, что и как с этим едят так сказать)

Kirill-Matrenin Автор вопроса
Альберт Степанцев
Миграции ))

у вас тут свой мир, понимаю, не бейте больно😂 Могу глупости говорить, в вашем понимании

Kirill Matrenin
А изменения между одной Базы Данных и другой можно...

Мы (мы, всмысле текущий проект в моей фирме на котором я работаю) пользуем updates.sql, так как я не видел ни одного нормального мигратора данных, так чтобы он еще и в процесс выкатки новой версии встраивался нормально

Kirill Matrenin
у вас тут свой мир, понимаю, не бейте больно😂 Могу...

У нас БД - это просто БД, сервис хранения данных. Это не как "конфигурация" в 1С или что-то аналогичное в SAP. Отсюда и подходы.

Kirill Matrenin
А изменения между одной Базы Данных и другой можно...

Посмотрите такие библиотеки как Liquibase и Flyway.

Kirill-Matrenin Автор вопроса
Warstone
Мы (мы, всмысле текущий проект в моей фирме на кот...

Понял, хорошо, спасибо. А updates.sql это что? а то я гуглю, какой то шлак на выходе получаю

Kirill Matrenin
Понял, хорошо, спасибо. А updates.sql это что? а т...

Фаил с SQL командами, которые надо выполнять при обновлении )))

Kirill-Matrenin Автор вопроса
Sergey Bezrukov
Посмотрите такие библиотеки как Liquibase и Flyway...

Сергей, добрый день! Посдкажите пожалуйста, я правильно понимаю, что помимо Liquibase нужно сверху ещё иметь Spring boot?

Kirill Matrenin
Сергей, добрый день! Посдкажите пожалуйста, я прав...

его можно использовать даже без джава приложения

Kirill Matrenin
Сергей, добрый день! Посдкажите пожалуйста, я прав...

Вот тут посмотрите: https://docs.liquibase.com/install/home.html https://docs.liquibase.com/parameters/working-with-command-parameters.html

Kirill-Matrenin Автор вопроса
Sergey Bezrukov
Вот тут посмотрите: https://docs.liquibase.com/ins...

Да, я вот начал смотреть, но если много разрабов, это ведь не жизнеспособно( я могу ошибаться), чтобы каждый в командную строку, что то вводил.

Kirill Matrenin
Да, я вот начал смотреть, но если много разрабов, ...

разраб пишет только файл с миграцией который кладет в гит, дальше CI/CD раскатывает на прод

Kirill Matrenin
Да, я вот начал смотреть, но если много разрабов, ...

файлы ченджлогов хранятся в гите а дальше вводить надо только что-то вроде liquibase --change-log-file=dbchangelog.xml update

Kirill-Matrenin Автор вопроса
central hardware
разраб пишет только файл с миграцией который кладе...

А разраб имеет доступ к PGAdmin, это вообще нормальная практика там вести разработку? А change-log будет фиксировать сделанные там изменения?

Kirill Matrenin
А разраб имеет доступ к PGAdmin, это вообще нормал...

WTF??? для того чтобы залезть в базу не нужен графический интерфейс, хватит psql или чего угодно что умеет в протокол pg, что вы понимаете под разработкой в pg_admin мне страшно представить даже А change-log будет фиксировать сделанные там изменения? да да и еще раз да, и никак иначе

Warstone
Ну а по факту для Пг стандартом дефакто является P...

Как это я такой жЫр пропустил?! Стандартом де-факто является консоль psql.

Михаил Шурутов
Как это я такой жЫр пропустил?! Стандартом де-факт...

логично с учетом того что она входит в состав утилит поставляемых с pg

Ilya Anfimov
Только виндового комплекта от edb.

Справедливости ради, если планируется использование pgagent'а, то pgadmin - единственный клиент с интерфейсом настройки job'ов (правда, мы их у себя деплоим с помощью скриптов, заполняющих соответствующие таблички, так что можно и без этого интерфейса жить, хотя с ним удобнее). Плюс, именно в pgadmin'е впервые появилась поддержка pldebugger'а, хотя назвать pgadmin ideшкой язык не поворачивается. Сейчас поддержка отладки есть в ems SQL manager-е и datagrip (оба платные).

Radist
Справедливости ради, если планируется использовани...

появилась поддержка pldebugge ну хз, если по честному называть это поддеркжкой язык не поворачивается, технически работает, но сделано на от*****

Radist
Справедливости ради, если планируется использовани...

А если ещё и планируется использование pgadminа - то pgadmin оказывается абсолютно незаменимым!

central hardware
появилась поддержка pldebugge ну хз, если по чест...

А где сделано нормально? После у тех, кто разрабатывал под oracle в pl/sql developer-е, любая ide для postgresql (даже datagrip) вызывает тоску.

Radist
А где сделано нормально? После у тех, кто разрабат...

Я лет 7 мучался с дебаггерами разными -- пока не понял, что это абсолютно вредная хрень при разработке. (Притом понял это примерно в районе писание web-скриптов на perl, ни одного postgresа при этом не было).

Ilya Anfimov
Я лет 7 мучался с дебаггерами разными -- пока не п...

это вы в контексте баз данных или вообще про ЯП?

central hardware
это вы в контексте баз данных или вообще про ЯП?

Вообще. Основной БД у меня тогда были mysql/msql, второй -- gdbm/berkley db. Дебаггеров там не то что не было -- дажэ мысли, что к этому можно подойти с дебаггером не возникало.

Ilya Anfimov
Вообще. Основной БД у меня тогда были mysql/msql...

тогда это звучит максимально странно, но в любом случае это уже офтоп

Ilya Anfimov
Я лет 7 мучался с дебаггерами разными -- пока не п...

В нормальной среде (разработка веб-скриптов, зачастую, к таким не относится) отладчик - самый быстрый способ разобраться в том, что происходит и найти ошибку. В языках с наиболее празвитой поддержкой отладки это также возможность исправить проблему на месте, не прерывая отладочную сессию. Да, можно часть этих задач выполнить добавлением логирования, но это занятие весьма непродуктивно и требует кучи запусков кода до того, как выяснится, что не так. Если вы умеете исполнять код в голове, можно обойтись без отладки, но рано или поздно сложность кода может превысить ваши возможности, либо вы что-то упустите по невнимательности. Отладка же позволяет избежать этих проблем (исключая некоторые плохие примеры, когда отладка эмулируется отдельным интерпретатором, который может работать не так, как работает реальный код).

Radist
В нормальной среде (разработка веб-скриптов, зачас...

>отладчик - самый быстрый способ разобраться в том, что происходит и найти ошибку. Нет. Ужэ отладочная печать -- куда быстрее тупой дрочильни отладчика. Более правильное -- конечно -- unit тэсты с настраиваемыми журналами. >Да, можно часть этих задач выполнить Все. Все эти задачи (если у тебя есть исходники) можно выполнить отладочной печатью. >о и требует кучи запусков кода до того, как выяснится Это отладка дебаггером требует кучи запусков как раз. Журнал ты один раз добавил в несколько правильных мест, включил -- получил лог, из которого всё понятно. И не только сейчас, и не только тебе. Отладку надо перезапускать много раз, поскольку когда ты первый раз видишь проблему -- обычно всё ужэ сломано где-то на предыдущем этапе.

Ilya Anfimov
>отладчик - самый быстрый способ разобраться в том...

Отладку надо перезапускать много раз, поскольку когда ты первый раз видишь проблему -- обычно всё ужэ сломано где-то на предыдущем этапе. если все упало то это значит у вас самый легкий тип багов, а ведь есть и куда более сложные, которые вам ничего и никогда не положат

central hardware
Отладку надо перезапускать много раз, поскольку ко...

>л как вы будете получать состояние всех переменных При жэлании -- можно, только смысла в этом действии нет. >или взять возмоность выполнять произвольный код в контексте места остановки Не представляю -- зачем мне в месте остановки выполнять произвольный код. Точнее, там стоит, конечно, произвольный код, который записан в исходниках этого места в системе, которую я разрабатываю. Не понимаю -- чем мне поможэт там код, который я не захочу вставить в исходники.

Ilya Anfimov
>отладчик - самый быстрый способ разобраться в том...

Отладочная печать не позволит приостановить выполнение кода, подумать и быстро модифицировать какие-то локальные переменные так, чтобы исполнение пошло в ту ветку, которая вам нужна. Придётся останавливать выполнение(, компилировать) и запускать заново. Также, отладочная печать достаточно осложняет изучение состояния стека.

Radist
Отладочная печать не позволит приостановить выполн...

>Также, отладочная печать достаточно осложняет изучение состояния стека. Скорее упрощает.

Radist
Отладочная печать не позволит приостановить выполн...

я вообще не сказал бы что в базах данных основная нагрузка на ветвлениях, чтобы было куда гулять. там сплошные циклы через перемалывание множеств, дебаг чаще выглядит как "сдампить промежуточный стейт во временную таблицу и повтыкать что как на ней" - на многих элементах сразу, не на одном ветвлении.

Ilya Anfimov
>Также, отладочная печать достаточно осложняет изу...

Не все среды позволяют вывести стектрейс, это я не говорю о том, что отладочная печать не позволит в любой момент посмотреть состояние переменных на пару уровней выше по стеку. Точнее, да, можно, но ценой инструментовки кода с логгированием вообще всего и тогда вам потребуется другой инструмент (получится как бы неудобный аналог отладчика) для наглядного представления логов (изучение километра логов - непродуктивное занятие), либо вы будете по десятку раз перезапускать, добавляя в,х новое логирование в тех местах, где, как вам кажется, скрыта проблема.

Darafei Praliaskouski
я вообще не сказал бы что в базах данных основная ...

Ну я бы сказал, что именно в базах данных отладка не так часто нужна, но знаю примеры, когда она сильно ускоряла решение проблемы.

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

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

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
как быть с принтером? такой подход прокатит?
zamtmn
12
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Карта сайта