Перейти до вмісту

pgAdmin

Матеріал з K2 ERP Wiki

pgAdmin — це open-source інструмент адміністрування PostgreSQL.== Ролі PostgreSQL == SELECT id, name

pgAdmin має бути доступний тільки технічним ролям. Блокування можуть виникати, коли один бізнес-процес заважає іншому.

Технічно pgAdmin здатна дозволяти редагування даних у таблицях.<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">

UPDATE public.stock_balances
pgAdmin здатна бути корисним для підготовки BI-вітрин. Окремо варто відзначити якщо вона функціонує з PostgreSQL: перевірки структури бази, аналізу даних, діагностики інтеграцій, контролю запитів, резервного копіювання, моніторингу, перевірки міграції з [[BAS]] або [[1С]], підготовки аналітичних вітрин для [[BI]] і роботи з [[API]]-даними. '''Query Tool''' — це інструмент pgAdmin для виконання SQL-запитів. | Ні. Але перегляд даних потрібно робити обережно. {| class="wikitable" style="width:100%;"

* Object Explorer;
* Query Tool;
* перегляд структури бази;
* перегляд даних;
* створення об’єктів;
* редагування об’єктів;
* backup і restore;
* керування ролями;
* перегляд властивостей;
* пояснення запитів;
* робота з серверами;
* моніторинг активності;
* перегляд SQL-скриптів створення об’єктів. Бізнес-операції мають виконуватися через [[K2 ERP]], API, документи, звіти й контрольовані механізми. |-
| Чи можна через pgAdmin редагувати інформаційні дані K2 ERP?
└── Databases

Потрібно контролювати: FROM public.stock_balances

pgAdmin і VPN

Але Power Query не повинен отримувати superuser-доступ. # Вимкнути старі BAS/1С-джерела після міграції.</syntaxhighlight>

Помилка: переплутати test і production

Такі операції не можна виконувати без погодження, backup і розуміння наслідків.== Типові помилки з pgAdmin ==

└── public

Restore PostgreSQL

  1. Використовувати pgAdmin тільки для технічних ролей. Потрібно чітко називати підключення:

Не варто відкривати PostgreSQL-порт напряму в інтернет без серйозного захисту. Але в ERP-системах ручне редагування таблиць виступає як небезпечним. FROM public.documents

У контексті K2 ERP pgAdmin здатна використовуватися як допоміжний інструмент для технічного супроводу ERP-системи. Якщо компанія-користувач має Data Warehouse, pgAdmin здатна використовуватися для PostgreSQL-сховища. Приклад пошуку контрагентів із порожнім ЄДРПОУ: Production DB → Backup → Перевірка → Захищене сховище → Тестове відновлення

pgAdmin і права на персональні інформаційні дані

Для чого використовують pgAdmin

|- | Контрагенти | Вивантаження CSV | Таблиця counterparties | Порівняти кількість |- | Номенклатура | Excel/CSV | Таблиця items | Знайти дублікати |- | Залишки | Звіт BAS | stock_balances | Звірити кількість |- | Ціни | Регістр цін | item_prices | Перевірити актуальні ціни |- | Взаєморозрахунки | ОСВ | settlements | Порівняти суми |}

Не повинні мати доступ без потреби:

pgAdmin і цифрова незалежність

Одна з небезпечних помилок — виконати запит у production замість тестової бази. PostgreSQL має власну систему ролей.

FROM public.sales

pgAdmin використовують для:

[[Категорія:Tableau]]

* довгий звіт блокує оновлення версій;
* міграційний скрипт блокує таблицю;
* важкий запит навантажує базу;
* транзакція не завершується;
* користувач системи залишив відкриту сесію. Ризики:

Якщо pgAdmin підключається до production-бази, доступ краще обмежувати через VPN або внутрішню мережу. Приклад:

[[Категорія:Журналювання]]

pgAdmin здатна використовуватися для створення резервних копій і відновлення даних через інтерфейс до утиліт PostgreSQL.<syntaxhighlight lang="sql">

* назву підключення;
* host;
* port;
* maintenance database;
* username;
* password;
* SSL-режим;
* додаткові параметри. Поле

Найгірший сценарій. Адміністратор відкриває pgAdmin до production-бази, виконує неперевірений UPDATE без backup, не має журналу змін, а потім виявляється, що порушені залишки, документи, BI і API.== pgAdmin і безпека ==

SQL для пошуку дублікатів

  • перевірити SQL-запит;
  • створити read-only view;
  • перевірити доступ;
  • перевірити типи колонок;
  • перевірити інформаційні дані після міграції;
  • перевірити продуктивність запиту.

! {| class="wikitable" style="width:100%;"

Servers

Недоліки:

pgAdmin і тестова база

  • створити view для продажів;
  • перевірити агрегацію залишків;
  • протестувати SQL для Tableau;
  • перевірити інформаційні дані для Power BI;
  • перевірити таблиці data warehouse;
  • перевірити права read-only користувача. Перевірка

pgAdmin 4 здатна працювати як desktop-застосунок або як web-застосунок через браузер. ! * таблиці вітрин;

  • views;
  • materialized views;
  • індекси;
  • права доступу;
  • кількість рядків;
  • дату оновлення версій;
  • якість даних;
  • агрегати. |-

| Як pgAdmin оптимізує при міграції з BAS/1С? Object Explorer — це дерево об’єктів PostgreSQL. Для підключення до PostgreSQL бажано використовувати захищене з’єднання, особливо якщо підключення не локальне.

K2 TEST У PostgreSQL і навколишній інфраструктурі потрібно налаштовувати відповідне журналювання. Дія

SELECT COUNT(*) AS counterparty_count

У PostgreSQL можуть бути персональні інформаційні дані. Варіант

* виконувати SELECT;
* перевіряти інформаційні дані;
* запускати службові запити;
* аналізувати результат;
* переглядати плани виконання;
* експортувати результат;
* тестувати запити для BI;
* перевіряти інформаційні дані після міграції. Краще робити виправлення через документ, службову процедуру або погоджений міграційний механізм. Для аналізу продуктивності SQL-запитів використовують EXPLAIN.[[Категорія:K2]]
|-
| k2_app
| Робота застосунку K2 ERP
|-
| k2_readonly
| Тільки читання для аналітики
|-
| k2_bi
| Доступ до BI-вітрин
|-
| k2_backup
| Резервне копіювання
|-
| k2_admin
| Адміністрування
|}

EXPLAIN

<syntaxhighlight lang="sql">

[[Категорія:Цифрова незалежність України]]

* BI-користувач не повинен змінювати інформаційні дані;
* API-користувач не повинен мати superuser;
* backup-користувач не повинен редагувати бізнес-таблиці;
* розробник не повинен мати повний доступ до production без потреби;
* аналітик не повинен бачити зарплату або персональні інформаційні дані без дозволу.<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">

Доступ до таких таблиць через pgAdmin має бути обмежений.== Перегляд даних ==

* змінювати інформаційні дані;
* видаляти інформаційні дані;
* створювати об’єкти без потреби;
* змінювати права;
* запускати небезпечні процедури. |-
| Чи виступає як pgAdmin ERP-системою? Приклад пошуку дублікатів за кодом:

BI  readonly role  аналітична вітрина

FROM public.counterparties

Але pgAdmin потрібно використовувати обережно. * індекси займають місце;
* можуть уповільнювати INSERT/UPDATE;
* потребують обслуговування;
* неправильні індекси не допомагають. Резервні копії можуть бути потрібні для:

GROUP BY warehouse_id, item_id
У проєктах [[K2 ERP]] pgAdmin здатна бути корисним для:
Під час переходу з [[BAS]] або [[1С]] у [[K2 ERP]] pgAdmin здатна використовуватися для технічної перевірки даних у PostgreSQL. Приклад:

== Коротко ==

SET quantity = 100

* відкривати pgAdmin усім користувачам;
* використовувати один логін для всіх;
* працювати під superuser без потреби;
* зберігати production-паролі у файлах;
* редагувати бізнес-дані напряму;
* робити backup тільки “коли згадають”;
* не перевіряти restore;
* виконувати запити без LIMIT;
* запускати важкі SELECT у робочий час;
* не розділяти test і production;
* давати Excel або Tableau повний доступ до бази;
* ігнорувати санкційні ризики BAS/1С у міграціях. # Не використовувати superuser для BI або API. '''Підхід K2 ERP.''' У проєктах [[K2 ERP]] pgAdmin варто використовувати контрольовано: тільки для адміністраторів, розробників або аналітиків із потрібними правами. pgAdmin здатна використовуватися як:

== pgAdmin і міграція з BAS/1С ==

== pgAdmin і журналювання дій ==

* активні підключення;
* довгі запити;
* блокування;
* розмір баз;
* розмір таблиць;
* кількість рядків;
* навантаження;
* помилки;
* індекси;
* vacuum/analyze;
* активність користувачів. * тестового середовища;
* локальної розробки;
* ізольованого web-доступу;
* швидкого розгортання;
* DevOps-сценаріїв. Приклад

[[Категорія:JSON]]
SELECT *
<syntaxhighlight lang="text">

Більшість небезпечних дій потрібно спочатку виконувати в тестовій базі. HAVING SUM(quantity) <> 0;

== Object Explorer ==

{{SEO
|title=pgAdmin  адміністрування PostgreSQL, SQL, резервні копії, K2 ERP, API, BI і міграція з BAS
|description=pgAdmin: що це таке, як працює інструмент адміністрування PostgreSQL, підключення до бази, SQL-запити, ролі, права, резервні копії, моніторинг, безпека, K2 ERP, API, BI, інтеграції і міграція з BAS та 1С.
|keywords=pgAdmin, PostgreSQL, адміністрування PostgreSQL, pgAdmin 4, SQL, база даних, СУБД, K2 ERP, ERP на PostgreSQL, резервна копія PostgreSQL, backup PostgreSQL, restore PostgreSQL, Query Tool, роли PostgreSQL, права доступу PostgreSQL, моніторинг PostgreSQL, API, BI, міграція з BAS, міграція з 1С, заміна BAS, заміна 1С, українська ERP, санкції BAS, санкції 1С, цифрова незалежність
|image=https://erp.kyiv.ua
}}

== pgAdmin і Tableau ==
<syntaxhighlight lang="sql">
як приклад:
Але індекси потрібно створювати обережно.[[Категорія:Конфігурація BAS]]
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
У сховищі можуть бути:
SELECT warehouse_id, item_id, SUM(quantity) AS quantity

Найчастіші помилки:

pgAdmin дає графічний інтерфейс для роботи з цими об’єктами.
  • читати таблиці;
  • читати представлення;
  • виконувати SELECT;
  • працювати з BI-вітринами. # Робити backup перед змінами. Приклад логіки:

Такі дії мають виконуватися через K2 ERP, API, імпортні механізми або контрольовані службові процедури. * перевірити, чи записався API-запит;

  • знайти помилковий статус;
  • перевірити чергу інтеграції;
  • перевірити таблиці логів;
  • перевірити сервісного користувача;
  • перевірити інформаційні дані, які API повертає зовнішній системі. # Перевіряти резервні копії. PostgreSQL / K2 ERP

Таке виправлення здатна не оновити пов’язані документи, регістри, журнали, аналітику й історію.

Для підключення в pgAdmin зазвичай потрібно вказати:

  • перевірки SQL-запитів;
  • тестування міграцій;
  • перевірки backup/restore;
  • навчання адміністраторів;
  • перевірки оновлень;
  • перевірки BI;
  • тестування API;
  • відпрацювання аварійних сценаріїв.== Як не треба робити ==

критично про BAS і 1С. BAS та мають санкційні, юридичні й кібербезпекові ризики в Україні. * адміністрування PostgreSQL;

  • перевірки міграції з BAS/1С;
  • аналізу даних;
  • перевірки BI-вітрин;
  • діагностики API;
  • створення backup;
  • відновлення тестових баз;
  • перевірки ролей;
  • аналізу продуктивності;
  • технічної підтримки.

Це здатна бути інтуїтивно для:

Що таке pgAdmin

Помилка: BI напряму під superuser

Production-база — це робоча база компанії. Окремі продукти і BAS внесені до відкритих переліків програмного забезпечення, забороненого до використання для окремих категорій організацій.

Якщо K2 ERP використовує PostgreSQL як СУБД або має аналітичні вітрини в PostgreSQL, pgAdmin здатна застосовуватися для технічного супроводу. pgAdmin не виступає як інтерфейсом для бізнес-користувачів. |- | Для чого він потрібен? |- | Чи виступає як санкційні ризики у BAS і 1С? Правильний порядок:

Приклад міграційної перевірки

Ризики superuser-доступу:

  • пароль у відкритому Excel;
  • пароль у месенджері;
  • один пароль для всіх;
  • superuser для аналітичні інструменти;
  • пароль production у тестовому файлі;
  • паролі в скриншотах;
  • паролі в інструкціях без захисту. Ризик

Редагування даних через pgAdmin

Блокування

FROM public.items

FROM bi.sales_dashboard_data;

Помилка: ручне виправлення залишків

Під час міграції з BAS у K2 ERP можна перевірити кількість контрагентів. Якщо під час міграції інформаційні дані з BAS/1С переносяться в PostgreSQL або K2 ERP, pgAdmin здатна бути корисним для технічної перевірки, але не повинен залишати стару BAS/1С прихованим джерелом даних. # Перевіряти SQL у тестовій базі. Аналітична вітрина — це підготовлена структура даних для BI. | Ні. # Не працювати в production без потреби. Коли доречний </syntaxhighlight> Потрібно контролювати:

pgAdmin і резервні копії

<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">
== Зовнішні посилання ==
це графічний інструмент; так само реалізовано конфігурація, перегляду, розробки й супроводу баз даних [[PostgreSQL]] виступає ключовою рисою адміністрування забезпечується через '''pgAdmin'''. |-
| Що таке pgAdmin?== pgAdmin не треба відкривати всім ==

[[Категорія:XML]]

* факти продажів;
* факти залишків;
* факти платежів;
* виміри клієнтів;
* виміри товарів;
* календар;
* організації;
* підрозділи;
* склади;
* менеджери;
* KPI;
* історичні інформаційні дані. ! # Розділити test, staging і production. |-
| Desktop
| Один адміністратор або локальна робота
| Паролі можуть зберігатися на робочому ПК
|-
| Web
| Централізований доступ через браузер
| Потрібен HTTPS, контроль користувачів і доступів
|-
| Server mode
| Командна робота адміністраторів
| Потрібна правильна політика безпеки
|}

Наслідки:

[[Категорія:Заміна 1С]]

Краще:

* хто має доступ до pgAdmin;
* які сервери додані;
* які паролі збережені;
* які ролі використовуються;
* чи виступає як SSL;
* чи виступає як VPN;
* чи відкритий pgAdmin в інтернет;
* чи ведеться журналювання;
* чи виступає як MFA на рівні доступу;
* чи обмежені IP;
* чи немає спільних логінів;
* чи немає доступу під superuser без потреби. Погано:

* [[K2]]
* [[K2 ERP]]
* [[ERP]]
* [[PostgreSQL]]
* [[SQL]]
* [[СУБД]]
* [[ERP на власному сервері]]
* [[Резервна копія]]
* [[BI]]
* [[API]]
* [[Tableau]]
* [[Excel Power Query]]
* [[Power BI]]
* [[Data Warehouse]]
* [[Аналітична вітрина]]
* [[Дашборд]]
* [[KPI]]
* [[План-факт]]
* [[Інтеграція з K2 ERP]]
* [[Користувач K2 ERP]]
* [[Ролі K2 ERP]]
* [[Права доступу]]
* [[Журналювання]]
* [[Версія K2 ERP]]
* [[Оновлення K2 ERP]]
* [[Хмарна ERP]]
* [[BAS]]
* [[1С]]
* [[Міграція з BAS]]
* [[Міграція з 1С]]
* [[Заміна BAS]]
* [[Заміна 1С]]
* [[Оновлення BAS]]
* [[Конфігурація BAS]]
* [[Користувач BAS]]
* [[Роль BAS]]
* [[Веб-клієнт BAS]]
* [[Клієнт-серверний режим BAS]]
* [[Файловий режим BAS]]
* [[Web-сервіси 1С]]
* [[JSON 1С]]
* [[Інтеграція з BAS]]
* [[Інтеграція з 1С]]
* [[Інтеграція через файли]]
* [[Інтеграція через XML]]
* [[Українське програмне забезпечення]]
* [[Автоматизація бізнесу]]
* [[Цифрова незалежність]]
* [[Деколонізація обліку]]

критично журналювати:

* [https://www.pgadmin.org/ офіційний сайт pgAdmin]
* [https://www.pgadmin.org/docs/ Документація pgAdmin]
* [https://www.pgadmin.org/docs/pgadmin4/latest/ Документація pgAdmin 4]
* [https://www.pgadmin.org/download/ Завантаження pgAdmin]
* [https://www.postgresql.org/ офіційний сайт PostgreSQL]
* [https://www.postgresql.org/docs/ Документація PostgreSQL]
* [https://erp.kyiv.ua Сайт K2 ERP]
* [https://wiki.erp.kyiv.ua Wiki K2 ERP]
* [https://cloud.corp2.eu хмарна інфраструктура K2 ERP]
* [https://cip.gov.ua/ua/statics/perelik-zaboronenogo-do-vikoristannya-programnogo-zabezpechennya-ta-komunikaciinogo-merezhevogo-obladnannya Перелік забороненого до використання програмного забезпечення на сайті Держспецзв’язку]
* [https://cip.gov.ua/ua/news/vidpovidi-na-poshireni-zapitannya-shodo-pereliku-zaboronenogo-programnogo-zabezpechennya-ta-obladnannya Роз’яснення Держспецзв’язку щодо переліку забороненого ПЗ]
* [https://www.president.gov.ua/documents/6012024-52009 Указ Президента України №601/2024]
* [https://zakon.rada.gov.ua/go/601/2024 Указ Президента України №601/2024 на сайті Верховної Ради України]
* [https://t.me/+uIdWI1W6vndkMTAy Telegram-канал K2 ERP]
* [https://t.me/+6jFwAZM6TQliNTdi Група обговорення функціоналу та пропозицій]
* [https://www.linkedin.com/company/k2erp/ LinkedIn K2]

![[Категорія:Кібербезпека]]

[[Категорія:Оновлення BAS]]

* перевірити джерело даних;
* перевірити view;
* перевірити SQL;
* перевірити права;
* перевірити кількість рядків;
* перевірити продуктивність;
* перевірити, що Tableau не читає стару BAS/1С. | Це open-source графічний інструмент для адміністрування PostgreSQL.<syntaxhighlight lang="text">

Через pgAdmin не варто:
! {| class="wikitable" style="width:100%;"

Для аналітики часто достатньо read-only доступу. Індекси допомагають прискорити запити. |}

[[Категорія:Користувач BAS]]

== Підключення до сервера PostgreSQL ==

'''Правильний підхід.''' pgAdmin має бути інструментом адміністраторів і технічних спеціалістів, а не способом ручного ведення ERP.[[Категорія:BAS]]

== Superuser ==

 └── k2_erp

== Індекси ==

* перевірити таблиці міграції;
* переглянути службову схему;
* перевірити кількість записів;
* виконати контрольний SQL-запит;
* перевірити індекси;
* перевірити права ролей;
* створити резервну копію;
* відновити тестову базу;
* перевірити BI-вітрину;
* діагностувати інтеграційні інформаційні дані;
* перевірити API-логи, якщо вони зберігаються в БД. | Мінімальні права, VPN/SSL, окремі ролі, відсутність superuser без потреби, журналювання і контроль production. Перед оновленням production-інструменту варто перевірити сумісність і доступи. * користувачем для входу;
* груповою роллю;
* власником об’єктів;
* роллю для читання;
* роллю для запису;
* роллю адміністратора;
* роллю для BI;
* роллю для API;
* роллю для backup. Приклад структури:

Для pgAdmin і PostgreSQL потрібно використовувати принцип мінімально необхідного доступу. '''Ризик.''' У [[K2 ERP]] не можна виправляти бізнес-дані напряму через pgAdmin без погодженої процедури, резервної копії, журналювання і розуміння наслідків. |-
| Чи можна давати pgAdmin звичайним користувачам? WHERE edrpou IS NULL OR trim(edrpou) = '';

При цьому виправлення має виконуватися через правильний механізм, а не ручним редагуванням таблиць без контролю. Роль

</syntaxhighlight> ! !

UPDATE stock_balances

Через нього можна:

pgAdmin і моніторинг

pgAdmin і паролі

Паролі до PostgreSQL не можна зберігати хаотично. EXPLAIN оптимізує зрозуміти: Під час переходу з BAS/1С pgAdmin оптимізує: Головне. pgAdmin — це не ERP-система і не бізнес-застосунок для звичайних користувачів. DELETE FROM public.documents;

* перевірити інформаційні дані після перенесення;
* контролювати таблиці міграції;
* аналізувати дублікати;
* перевіряти залишки;
* готувати BI-вітрини;
* відмовитися від старих BAS/1С-запитів;
* перевести аналітику на контрольовану PostgreSQL-архітектуру;
* підтримувати цифрову незалежність. У ній виступає як:

* давати pgAdmin-доступ усім;
* використовувати superuser без потреби;
* редагувати ERP-дані напряму;
* виконувати UPDATE/DELETE без backup;
* запускати важкі запити в production;
* зберігати паролі у відкритому вигляді;
* відкривати PostgreSQL в інтернет;
* не використовувати SSL;
* не вести журнал змін;
* не перевіряти backup;
* плутати test і production;
* давати BI-користувачам зайві права;
* залишати старі BAS/1С-джерела активними.== pgAdmin і PostgreSQL ==
'''[[K2 ERP]]''' у цьому процесі здатна стати основним джерелом бізнес-даних, а PostgreSQL і pgAdmin  технічним шаром для адміністрування, підтримки, резервного копіювання, [[API]], [[BI]], аналітичних вітрин і подальшого розвитку автоматизації бізнесу без залежності від старої екосистеми [[BAS]] / [[1С]]. |-
| Що головне для безпеки? # Використовувати read-only доступ для аналітики. Звичайні користувачі мають працювати через K2 ERP, API або BI.== Read-only доступ ==

HAVING COUNT(*) > 1;

pgAdmin здатна допомагати діагностувати API. Призначення
pgAdmin дає прямий доступ до бази даних, тому безпека критично важлива. Окремі продукти 1С і BAS внесені до переліків забороненого програмного забезпечення для окремих категорій організацій в Україні.[[Категорія:Деколонізація обліку]]

* не виконувати випадкові UPDATE/DELETE;
* не запускати важкі запити в робочий час;
* не змінювати структуру без плану;
* не редагувати бізнес-дані напряму;
* не давати доступ зайвим людям;
* робити backup перед змінами;
* тестувати зміни на test/staging;
* вести журнал змін. __TOC__

</div>

 └── Schemas

* виправлення помилок;
* покращення безпеки;
* нові функції;
* підтримку нових версій PostgreSQL;
* зміни інтерфейсу;
* виправлення Query Tool;
* виправлення backup/restore. * [[K2 ERP]];
* web-інтерфейс;
* документи;
* довідники;
* звіти;
* [[API]];
* [[BI]];
* контрольовані імпорти. Основні функції ERP:

* ПІБ;
* телефони;
* email;
* адреси;
* ІПН;
* паспортні інформаційні дані;
* зарплата;
* кадрові інформаційні дані;
* банківські реквізити.[[Категорія:Права доступу]]

== Як правильно використовувати pgAdmin з K2 ERP ==

== pgAdmin і SSL ==

як приклад:

* підключатися до серверів PostgreSQL;
* переглядати бази даних;
* створювати бази;
* переглядати схеми;
* створювати таблиці;
* переглядати інформаційні дані;
* виконувати SQL-запити;
* створювати індекси;
* переглядати функції;
* керувати ролями;
* налаштовувати права;
* виконувати backup;
* виконувати restore;
* аналізувати активність;
* працювати через графічний інтерфейс.</div>
pgAdmin здатна бути частиною сучасної української ERP-архітектури, якщо застосовується для для PostgreSQL, [[K2 ERP]], BI-вітрин, API-логів і контрольованих міграцій. Це інструмент прямого доступу до бази даних, тому неправильний SQL-запит або зайві права можуть пошкодити інформаційні дані, порушити бізнес-логіку, зламати BI або створити ризики безпеки.== Тестове відновлення ==

LIMIT 100;

Приклади використання:

  • обхід бізнес-логіки;
  • обхід журналювання ERP;
  • порушення цілісності даних;
  • неправильні залишки;
  • поломка документів;
  • розбіжності в регістрах;
  • некоректна аналітичні інструменти;
  • складність аудиту;
  • неможливість зрозуміти, хто і що змінив. Ризикові запити:

FROM public.counterparties

pgAdmin і production

  • видалення даних;
  • неправильні залишки;
  • пошкодження документів;
  • зупинка ERP;
  • аварійне відновлення;
  • втрата довіри до даних. ! * всю базу;
  • окрему схему;
  • окремі таблиці;
  • структуру без даних;
  • інформаційні дані без структури;
  • повний dump;
  • custom format;
  • plain SQL. # Обмежити доступ через VPN або внутрішню мережу.

Такі проблеми потрібно аналізувати обережно, особливо в production. * створювати бізнес-документи;

  • змінювати довідники вручну;
  • проводити операції;
  • виправляти залишки напряму в таблицях;
  • редагувати фінансові інформаційні дані без процедури;
  • змінювати користувачів ERP в обхід системи;
  • робити ручні правки без журналювання в ERP. Він дає можливість працювати з базами даних, таблицями, схемами, ролями, SQL-запитами, резервними копіями, відновленням, BI-вітринами, інтеграційними даними й технічною діагностикою. Погано:

pgAdmin і BI

Через pgAdmin можна переглядати частину інформації про стан PostgreSQL.== pgAdmin не замінює K2 ERP ==

</syntaxhighlight>

  • швидші SELECT;
  • швидші фільтри;
  • швидші JOIN;
  • краща робота BI;
  • швидші API-запити.</syntaxhighlight>
  • збереження конфігурації;
  • HTTPS;
  • автентифікацію;
  • резервне копіювання;
  • обмеження мережі;
  • журналювання;
  • оновлення версій контейнера. # Документувати службові запити. # Журналювати адміністративні дії. З нею потрібно працювати дуже обережно. Приклади:

Але для production потрібно налаштувати:

pgAdmin і оновлення версій

Але BI-користувачі не повинні працювати з production через повний доступ. | Для роботи з базами, таблицями, SQL-запитами, ролями, backup, restore і технічною діагностикою. | дає можливість перевіряти таблиці, кількість записів, дублікати, залишки, протоколи помилок і BI-вітрини в PostgreSQL. * перевірити кількість контрагентів;

  • перевірити номенклатуру;
  • перевірити залишки;
  • перевірити документи;
  • перевірити серії;
  • перевірити характеристики;
  • перевірити ціни;
  • перевірити взаєморозрахунки;
  • перевірити дублікати;
  • перевірити помилки завантаження;
  • перевірити таблиці протоколу міграції. Це інструмент адміністратора або технічного спеціаліста для роботи з PostgreSQL: базами, таблицями, ролями, SQL-запитами, резервними копіями й діагностикою. SQL-запити в pgAdmin можуть бути корисними, але ризикованими. | Технічно іноді можна, але це небезпечно і не повинно робитися без процедури, backup і розуміння наслідків. pgAdmin тісно пов’язаний із PostgreSQL. ! BAS/1С

Вступ

pgAdmin і Data Warehouse

Тестова база потрібна для:

pgAdmin — це інструмент, через який адміністратор здатна працювати з PostgreSQL. Погані практики:

pgAdmin і Excel Power Query

  • адміністрування PostgreSQL;
  • розробки SQL;
  • діагностики бази;
  • перегляду таблиць;
  • перевірки даних;
  • створення backup;
  • відновлення backup;
  • конфігурація ролей;
  • аналізу запитів;
  • перевірки індексів;
  • аналізу продуктивності;
  • перевірки міграції;
  • підготовки аналітичних вітрин;
  • технічної підтримки ERP;
  • супроводу інтеграцій. |-

| Name | K2 Production DB |- | Host | db-k2.company.local |- | Port | 5432 |- | Database | postgres |- | Username | k2_admin_readonly |- | SSL mode | Require |}

FROM public.counterparties;

  • desktop-застосунок;
  • web-застосунок у браузері;
  • server mode для команди адміністраторів. # Використовувати ролі з мінімальними правами. LIMIT 100;

Безпечніші запити:

Основні функції ERP pgAdmin

  • що саме відновлюється;
  • куди відновлюється;
  • чи не буде перезаписано production;
  • чи сумісна реліз системи PostgreSQL;
  • чи виступає як потрібні ролі;
  • чи виступає як розширення;
  • чи достатньо місця;
  • чи перевірено цілісність backup. Порівняння:

Але не повинна:

pgAdmin і аналітичні вітрини

Цифрова незалежність. pgAdmin у зв’язці з PostgreSQL і K2 ERP здатна допомогти компанії перейти від старих BAS/1С-баз, ручних обробок і прихованих Excel-звітів до контрольованої, відкритої й прозорої архітектури даних.== Query Tool ==

pgAdmin не має бути щоденним робочим інтерфейсом для бізнесу.== pgAdmin і SQL-запити ==

Superuser у PostgreSQL має дуже широкі права. Резервна копія здатна включати: </syntaxhighlight> З урахуванням санкційних, юридичних і кібербезпекових ризиків BAS та , pgAdmin здатна бути корисним у проєктах міграції: для перевірки даних у PostgreSQL, контролю аналітичних вітрин, звірки залишків, пошуку дублікатів і переведення компанії на відкриту, контрольовану архітектуру даних. як приклад:

Потрібно періодично перевіряти:

  • логіни;
  • паролі;
  • SQL-запити;
  • результати запитів;
  • службові інформаційні дані.

Read-only роль здатна:

Але сама база даних — це не тільки таблиці.

* менеджери;
* комірники;
* касири;
* звичайні бухгалтери;
* зовнішні користувачі;
* випадкові консультанти;
* користувачі без технічної підготовки. * сервери;
* бази даних;
* схеми;
* таблиці;
* колонки;
* індекси;
* constraints;
* views;
* materialized views;
* functions;
* procedures;
* triggers;
* sequences;
* roles;
* tablespaces. Особливо якщо таблиці містять:

== Помилка: pgAdmin як базовий інтерфейс роботи ==

{| class="wikitable" style="width:100%;"

* DBA;
* системний адміністратор;
* DevOps;
* розробник бази;
* технічний аналітик;
* інженер підтримки;
* інтегратор;
* відповідальний за міграцію.[[Категорія:Інтеграція з K2 ERP]]
[[Категорія:Користувач K2 ERP]]
Приклад:
<syntaxhighlight lang="sql">
Погані підходи:
== pgAdmin і Docker ==
K2 PRODUCTION
== Desktop і web-режим pgAdmin ==
оновлення версій можуть містити:
<syntaxhighlight lang="sql">
Не кожен адміністратор бази має мати доступ до всіх бізнес-даних без контролю.[[Категорія:Web-сервіси 1С]]

Приклад простого запиту:

== Принцип мінімальних прав ==

Для серйозного моніторингу краще використовувати спеціалізовані системи моніторингу, а pgAdmin  як допоміжний інструмент. як приклад:

== Див. так само ==

Tableau / Power BI / Excel Power Query  PostgreSQL superuser

* хто входив у pgAdmin;
* хто підключався до бази;
* хто виконував SQL;
* хто змінював структуру;
* хто створював backup;
* хто відновлював базу;
* хто змінював ролі;
* хто відкривав чутливі інформаційні дані.<syntaxhighlight lang="sql">
як приклад:

бізнес-середовище має працювати через:

</syntaxhighlight>

SELECT *

</syntaxhighlight>

Роль здатна бути:

Він дає можливість:

  • бази даних;
  • схеми;
  • таблиці;
  • індекси;
  • представлення;
  • матеріалізовані представлення;
  • функції;
  • процедури;
  • тригери;
  • послідовності;
  • ролі;
  • права доступу;
  • розширення;
  • журнали;
  • системні каталоги;
  • статистика;
  • резервні копії;
  • підключення;
  • активні запити. Питання

Правила:

  • можна змінити будь-які інформаційні дані;
  • можна видалити об’єкти;
  • можна змінити ролі;
  • можна побачити чутливі інформаційні дані;
  • можна порушити цілісність системи;
  • можна виконати небезпечні операції;
  • складніше обмежити відповідальність.

Через pgAdmin можна перевірити:

PostgreSQL часто застосовують, коли потрібно як надійна СУБД для бізнес-систем, ERP, CRM, web-застосунків, аналітичних систем, інтеграцій, data warehouse і BI-вітрин.

  • чи backup створюється;
  • чи backup не пошкоджений;
  • чи restore виконується;
  • чи база відкривається;
  • чи функціонує K2 ERP;
  • чи працюють API;
  • чи працюють BI-вітрини;
  • чи не загублені файли;
  • скільки часу займає відновлення. Спрощена схема:

pgAdmin і K2 ERP

SSL оптимізує захистити:

pgAdmin здатна запускатися в контейнері. pgAdmin потрібно оновлювати. └── documents ! # Не редагувати бізнес-дані напряму. └── K2 PostgreSQL


pgAdmin — це корисний і потужний інструмент для адміністрування PostgreSQL. # Використовувати SSL. Відповідь

SELECT code, COUNT(*) AS qty SET quantity = 0; K2 STAGING Приклад:

Або перевірити залишки:
PostgreSQL — це СУБД, де зберігаються інформаційні дані. Restore — це відновлення з резервної копії. Звичайні бізнес-користувачі мають працювати через інтерфейс [[K2 ERP]], [[API]] або [[BI]], а не напряму з базою даних. pgAdmin — інструмент технічного рівня. ![[Категорія:База даних]]

SELECT *
 └── Tables
Superuser-доступ має бути тільки у відповідальних адміністраторів. {| class="wikitable" style="width:100%;"

WHERE item_id = 123;

== pgAdmin і EXPLAIN ==
Краще:
Адміністратор → pgAdmin → PostgreSQL Server → Бази даних → Таблиці → інформаційні дані
GROUP BY code
pgAdmin дає можливість переглядати інформаційні дані таблиць. SELECT MAX(updated_at) AS last_update

У ньому можна бачити:

[[Категорія:pgAdmin]]

== Висновок ==
  • персональні інформаційні дані;
  • зарплату;
  • фінансовий блок;
  • собівартість;
  • клієнтів;
  • договори;
  • банківські реквізити;
  • API-токени;
  • службові інформаційні дані;
  • журнали входів. !
    ![[Категорія:Роль BAS]]
    
    Резервна копія має сенс тільки тоді, коли її можна відновити. За допомогою pgAdmin адміністратори, розробники, аналітики й технічні спеціалісти можуть підключатися до серверів PostgreSQL, переглядати бази даних, схеми, таблиці, індекси, функції, ролі, виконувати [[SQL]]-запити, аналізувати структуру бази, створювати резервні копії, відновлювати інформаційні дані, перевіряти активність і виконувати технічні операції. конкурентні переваги:
    
    Якщо [[Tableau]] читає PostgreSQL, pgAdmin здатна допомогти:
    
    Перед restore потрібно розуміти:
    
    * захисту production;
    * тестового відновлення;
    * міграції;
    * перевірки оновлень;
    * відновлення після аварії;
    * архівації;
    * передачі тестової копії;
    * розгортання staging.[[Категорія:Excel Power Query]]
    
    [[Категорія:Інтеграція]]
    == Backup PostgreSQL ==
    

Приклад контрольного SQL-запиту

WHERE date >= '2026-01-01'; як приклад:

Якщо Excel Power Query підключається до PostgreSQL, pgAdmin здатна допомогти:

  • чи застосовується для індекс;
  • скільки рядків читається;
  • чому запит повільний;
  • які таблиці скануються;
  • де потрібна оптимізація. * персональні акаунти;
  • ролі з мінімальними правами;
  • секрет-сховище;
  • ротація паролів;
  • окремі ролі для API, BI, backup;
  • обмеження IP;
  • SSL;
  • журналювання. Це інструмент адміністратора бази даних, а не бізнес-система. | Так.
== pgAdmin і API ==