postgres=# CREATE DATABASE joba_finder;
CREATE DATABASE
postgres=# CREATE USER jf_user WITH PASSWORD 'qwerty';
CREATE ROLE
postgres=# \l joba_finder
Список баз данных
Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа
-------------+----------+-----------+-------------+-------------+---------------
joba_finder | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 |
(1 строка)
postgres=# GRANT ALL PRIVILEGES ON DATABASE joba_finder to jf_user;
GRANT
postgres=# \l joba_finder
Список баз данных
Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа
-------------+----------+-----------+-------------+-------------+-----------------------
joba_finder | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =Tc/postgres +
| | | | | postgres=CTc/postgres+
| | | | | jf_user=CTc/postgres
(1 строка)
postgres=# select version();
version
--------------------------------------------------------------------------------------------------------
PostgreSQL 11.2 (Debian 11.2-2) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-2) 8.3.0, 64-bit
(1 строка)
postgres=# select
postgres-# \l joba_finder
Список баз данных
Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа
-------------+----------+-----------+-------------+-------------+-----------------------
joba_finder | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =Tc/postgres +
| | | | | postgres=CTc/postgres+
| | | | | jf_user=CTc/postgres
(1 строка)
postgres-# 1;
?column?
----------
1
(1 строка)
Возможно ли не встравлять в таблицу записи, которые уже присутствуют в таблице?
SELECT Prop.*, coalesce("counters".countAllUnits, 0) AS "countAllUnits", coalesce("counters".countVacantUnits, 0) AS "countVacantUnits"
FROM "Property" AS Prop
INNER JOIN LATERAL
(
SELECT COUNT(*) AS countAllUnits,
count(*) filter(where "Unit".status = 'Vacant') as countVacantUnits
FROM "Unit"
WHERE Prop."id" = "Unit"."propertyId"
) AS "counters" ON true
WHERE Prop."userId" IN (
SELECT id FROM "User" WHERE "companyId" = 200001
)
ORDER BY Prop."userId" ASC LIMIT 10 OFFSET 0
Но первичный ключ является обязательным для каждой таблицы
Peer authentication failed for user "MyUser"
1) PSQL создает индекс в одно-поточном режиме. Это 10% от всей производительности cpu.
2) Как я понял он считывает базу перерабатывает и сжимает. (В одно-поточном режиме это происходит оч медленно.)
3) Из-за того что он медленно перерабатывает данные, он не использует всю скорость ссд на котором расположена база.
но не нашел как их реализовать
MySQL выучил
по курсу от WebForMySelf
решил отказаться от SQLite даже для хранения ссылок на файлы
archive_command = '/usr/local/bin/backup_wal.sh'
cat /usr/local/bin/backup_wal.sh
#!/bin/bash
. /etc/wal-g.d/server-s3.conf
wal-g backup-push /var/lib/pgsql/9.6/
wal-g backup-list
как более правильно выполнять репликацию