ΠΠ°ΠΊ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΠΌΠ΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² PostgreSQL
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ PostgreSQL Π½Π° Π²Π°ΡΠΈΡ AlexHost VPS
ΠΠ°ΡΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ PostgreSQL Π½Π° AlexHost? PostgreSQL (Postgres) Π΅ ΡΡΠ°Π±ΠΈΠ»Π½Π° ΡΠ΅Π»Π°ΡΠΈΠΎΠ½Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΠΈΠ΄Π΅Π°Π»Π½Π° Π·Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° VPS Π½Π° AlexHost Ρ NVMe ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅, root Π΄ΠΎΡΡΡΠΏ ΠΈ DDoS Π·Π°ΡΠΈΡΠ° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Ρ Π½Π°ΠΉ-Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ. Π’ΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΎΠ±Ρ Π²Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° PostgreSQL – ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠ°Π±Π»ΠΈΡΠΈ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈ – ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° Π²Π°ΡΠΈΡ AlexHost Linux VPS.
1. ΠΠΎΡΡΡΠΏ Π΄ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° PostgreSQL
ΠΠ° Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ PostgreSQL, ΠΏΡΡΠ²ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ (CLI) Π½Π° PostgreSQL. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ PostgreSQL ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡ Π°ΠΊΠ°ΡΠ½Ρ postgres
Π‘ΡΡΠΏΠΊΠ° 1: ΠΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΊΡΠΌ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡ Π°ΠΊΠ°ΡΠ½Ρ Π½Π° PostgreSQL
sudo -i -u postgresΠ‘ΡΡΠΏΠΊΠ° 2: ΠΠΎΡΡΡΠΏ Π΄ΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° PostgreSQL
psqlΠ‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ Π²Π»Π΅Π·Π΅ΡΠ΅ Π² CLI, ΡΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ°Π½Π° postgres=#, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ ΡΡΠ΅ Π² ΡΡΠ΅Π΄Π°ΡΠ° Π½Π° PostgreSQL
2. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ Π½ΠΎΠ²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° CREATE DATABASE. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡΡ Π΅ ΡΠ»Π΅Π΄Π½ΠΈΡΡ
CREATE DATABASE database_name;ΠΡΠΈΠΌΠ΅Ρ
CREATE DATABASE my_database;Π’ΠΎΠ²Π° ΡΡΠ·Π΄Π°Π²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ ΠΈΠΌΠ΅ my_database. ΠΠ° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅
l3. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ
ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ΅ Π½ΡΠΆΠ΄Π°ΡΡ ΠΎΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° Π΄ΠΎΡΡΡΠΏ ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΡΠΎ ΠΊΠ°ΠΊ Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π² PostgreSQL
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»
CREATE USER username WITH PASSWORD 'password';ΠΡΠΈΠΌΠ΅Ρ
CREATE USER dbuser WITH PASSWORD 'securepassword';ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ
ΠΠ° Π΄Π° ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅ Π½Π° Π΄Π°Π΄Π΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π΄Π° ΠΈΠΌΠ° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π° Ρ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° GRANT
GRANT ALL PRIVILEGES ON DATABASE database_name TO username;ΠΡΠΈΠΌΠ΅Ρ
GRANT ALL PRIVILEGES ON DATABASE my_database TO dbuser;Π’ΠΎΠ²Π° Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ Π΄ΠΎΡΡΡΠΏ Π½Π° dbuser Π΄ΠΎ my_database
4. Π‘Π²ΡΡΠ·Π²Π°Π½Π΅ Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ° Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° c, ΠΏΠΎΡΠ»Π΅Π΄Π²Π°Π½Π° ΠΎΡ ΠΈΠΌΠ΅ΡΠΎ Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ
c my_databaseΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°ΡΠ° ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΡΠΎΡΠΈ Π°ΠΊΡΠΈΠ²Π½Π°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ, Π΄Π° Π²ΠΌΡΠΊΠ²Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ
5. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ
Π’Π°Π±Π»ΠΈΡΠΈΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π΄Π°Π½Π½ΠΈ Π² ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½ ΡΠΎΡΠΌΠ°Ρ. ΠΡΠΎ ΠΊΠ°ΠΊ Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅, ΠΏΡΠΎΠΌΠ΅Π½ΡΡΠ΅ ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ Π² PostgreSQL
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° CREATE TABLE (Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°), Π·Π° Π΄Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΡΠ΅ Π½ΠΎΠ²Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ Π½Π΅ΠΉΠ½ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΈ
CREATE TABLE table_name ( column1 data_type PRIMARY KEY, column2 data_type, column3 data_type );ΠΡΠΈΠΌΠ΅Ρ
CREATE TABLE employees ( employee_id SERIAL PRIMARY KEY, name VARCHAR(100), department VARCHAR(50), salary NUMERIC );ΠΠΌΡΠΊΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°
ΠΠΌΡΠΊΠ½Π΅ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° INSERT INTO
INSERT INTO employees (name, department, salary) VALUES ('John Doe', 'HR', 50000);ΠΠ°ΠΏΠΈΡΠ²Π°Π½Π΅ Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° SELECT
SELECT * FROM employees;ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ°
UPDATE employees SET salary = 55000 WHERE name = 'John Doe';ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠ° ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅
DELETE FROM employees WHERE name = 'John Doe';6. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏΠ° Π΄ΠΎ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°
ΠΠ° ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠΉΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΡΠ°ΠΌΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ
- ΠΡΠ½Π΅ΠΌΠ΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ°
REVOKE ALL PRIVILEGES ON DATABASE my_database FROM dbuser; - ΠΠ³ΡΠ°Π½ΠΈΡΠ΅ΡΠ΅ ΠΏΡΠ°Π²Π°ΡΠ° Π·Π° ΡΠ°Π±Π»ΠΈΡΠΈ
GRANT SELECT ON TABLE employees TO dbuser;
Π’ΠΎΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° dbuser Π΄Π° ΠΏΡΠ΅Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΌΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° employees, Π±Π΅Π· Π΄Π° ΠΏΡΠ°Π²ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ
7. ΠΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
PostgreSQL ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
ΠΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° pg_dump, Π·Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π²ΡΠ² ΡΠ°ΠΉΠ»
pg_dump my_database > my_database_backup.sqlΠΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° psql, Π·Π° Π΄Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ΅Π·Π΅ΡΠ²Π΅Π½ ΡΠ°ΠΉΠ»
psql my_database < my_database_backup.sql8. ΠΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ
ΠΠΎΠ³Π°ΡΠΎ Π΄Π°Π΄Π΅Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΠ° Π²Π΅ΡΠ΅ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° DROP, Π·Π° Π΄Π° Ρ ΠΈΠ·ΡΡΠΈΠ΅ΡΠ΅
ΠΡΠΏΠ°Π΄Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°
DROP TABLE table_name;ΠΡΠΈΠΌΠ΅Ρ
DROP TABLE employees;ΠΡΠΏΠ°Π΄Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΡΡΠ²ΠΎ ΠΈΠ·Π»Π΅Π·ΡΠ΅ ΠΎΡ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ (Π°ΠΊΠΎ Π΅ ΡΠ²ΡΡΠ·Π°Π½Π°), Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Ρ ΠΏΡΡΠ½Π΅ΡΠ΅
DROP DATABASE database_name;ΠΡΠΈΠΌΠ΅Ρ
DROP DATABASE my_database;9. ΠΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΎΡ PostgreSQL
ΠΠ° Π΄Π° ΠΈΠ·Π»Π΅Π·Π΅ΡΠ΅ ΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° PostgreSQL, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅
qΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅: ΠΠ²Π»Π°Π΄ΡΠ²Π°Π½Π΅ Π½Π° PostgreSQL Π² AlexHost
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° PostgreSQL Π½Π° Π²Π°ΡΠΈΡ VPS Π½Π° AlexHost Π΅ Π»Π΅ΡΠ½ΠΎ – ΡΡΠ·Π΄Π°ΠΉΡΠ΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠ°Π±Π»ΠΈΡΠΈ ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΠΎΡΠΈΠ³ΡΡΠ΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅ΡΠΎ Ρ pg_dump. Π‘ΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ NVMe Π½Π° AlexHost ΠΈ root Π΄ΠΎΡΡΡΠΏΡΡ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Ρ Π±ΡΡΠ·ΠΈ ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Π°ΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ CLI ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΊΠ°ΡΠΎ CREATE, GRANT ΠΈ l, Π·Π° Π΄Π° ΠΈΠΌΠ°ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ», ΠΈ ΡΠ΅ ΠΎΡΠ»Π°Π½ΡΠΉΡΠ΅ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° AlexHost, Π·Π° Π΄Π° ΡΡΠ΅ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΈ. ΠΠ·Π³ΡΠ°Π΄Π΅ΡΠ΅ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΉΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠΈ Π² Π΄ΠΎΠ±ΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅!
