ΠΠ°ΠΊ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² PostgreSQL: ΠΡΠ»Π½ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Linux VPS
PostgreSQL (ΡΠ΅ΡΡΠΎ Π½Π°ΡΠΈΡΠ°Π½ Postgres) Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ Π½Π°ΠΉ-ΠΌΠΎΡΠ½ΠΈΡΠ΅, Π±ΠΎΠ³Π°ΡΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Π»Π°ΡΠΈΠΎΠ½Π½ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΡΡΡΠΏΠ½ΠΈ Π΄Π½Π΅Ρ. ΠΠΎΠ²Π΅ΡΠ΅Π½ ΠΎΡ ΡΡΠ°ΡΡΡΠΏΠΈ ΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΈ Π΅ΠΊΠΈΠΏΠΈ, ΡΠΎΠΉ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΡΠ»ΠΎΠΆΠ½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ, Π³ΠΎΠ»Π΅ΠΌΠΈ Π½Π°Π±ΠΎΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄Π°Π»ΠΈ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°ΡΠ΅ SaaS ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, Π΅Π»Π΅ΠΊΡΡΠΎΠ½Π΅Π½ ΠΌΠ°Π³Π°Π·ΠΈΠ½ ΠΈΠ»ΠΈ API backend Ρ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ, PostgreSQL Π΄ΠΎΡΡΠ°Π²Ρ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, ΠΊΠΎΠΈΡΠΎ Π²Π°ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ·ΠΈΡΠΊΠ²Π°.
Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° PostgreSQL Π² ΡΡΠ΅Π΄Π° Ρ Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ VPS Hosting β Ρ NVMe SSD Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΠΏΡΠ»Π΅Π½ root Π΄ΠΎΡΡΡΠΏ ΠΈ Π²Π³ΡΠ°Π΄Π΅Π½Π° DDoS Π·Π°ΡΠΈΡΠ° β Π²ΠΈ Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π°Π΄ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π²Π°ΡΠ°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π±Π΅Π· ΡΠ΅ΠΆΠΈΠΉΠ½ΠΈΡΠ΅ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ Π½Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Π½ΠΈΡΠ΅ ΠΎΠ±Π»Π°ΡΠ½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ. Π’ΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π²ΠΈ ΠΏΡΠ΅Π²Π΅Π΄Π΅ ΠΏΡΠ΅Π· Π²ΡΡΠΊΠ° ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π° Π·Π°Π΄Π°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° PostgreSQL, ΠΎΡ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏ ΠΈ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π΄ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ ΠΈ ΡΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°.
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅, ΡΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅:
- Linux VPS Ρ Ubuntu, Debian ΠΈΠ»ΠΈ CentOS Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ PostgreSQL
- Root ΠΈΠ»ΠΈ sudo Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π²Π°ΡΠΈΡ ΡΠ΅ΡΠ²ΡΡ
- ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΏΠΎΠ·Π½Π°Π½ΠΈΡ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° Linux
ΠΠΊΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ ΡΠ²ΠΎΡΡΠ° ΡΠ΅ΡΠ²Π΅ΡΠ½Π° ΡΡΠ΅Π΄Π°, AlexHost's VPS Control Panels ΡΠ»Π΅ΡΠ½ΡΠ²Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π²Π°ΡΠΈΡ ΡΡΠ΅ΠΊ Π±ΡΡΠ·ΠΎ.
1. ΠΠΎΡΡΡΠΏ Π΄ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° PostgreSQL
ΠΡΠΈΡΠΊΠΈ Π·Π°Π΄Π°ΡΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° PostgreSQL Π·Π°ΠΏΠΎΡΠ²Π°Ρ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ (CLI), ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΡΡΠΎ ΠΊΠ°ΡΠΎ psql. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ PostgreSQL ΡΡΠ·Π΄Π°Π²Π° ΡΠΈΡΡΠ΅ΠΌΠ΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π», Π½Π°ΡΠ΅ΡΠ΅Π½ postgres ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ°, ΠΈ ΡΠΎΠ·ΠΈ Π°ΠΊΠ°ΡΠ½Ρ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ.
Π‘ΡΡΠΏΠΊΠ° 1: ΠΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ ΠΊΡΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° PostgreSQL
sudo -i -u postgresΠ‘ΡΡΠΏΠΊΠ° 2: Π‘ΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ PostgreSQL CLI
psqlΠ‘Π»Π΅Π΄ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΡΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ°Π½Π°:
postgres=#Π’ΠΎΠ²Π° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π°Π²Π°, ΡΠ΅ ΡΡΠ΅ Π² ΡΡΠ΅Π΄Π°ΡΠ° Π½Π° PostgreSQL ΠΈ ΡΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΈ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠ΅ SQL ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈ ΠΌΠ΅ΡΠ°-ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ.
> ΠΠΎΠ»Π΅Π·Π΅Π½ ΡΡΠ²Π΅Ρ: ΠΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π±Π΅Π· Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΠΊΠ°ΡΠΎ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ sudo -u postgres psql ΠΎΡ Π²Π°ΡΠ°ΡΠ° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½Π° ΡΠ΅ΡΠΈΡ Π½Π° shell.
2. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ°Π·ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΎΡ Π½Π°ΠΉ-Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ Π·Π° Π²ΡΠΈΡΠΊΠΈ Π²Π°ΡΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ, ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΈ ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ CREATE DATABASE ΠΈΠ·ΡΠ²Π»Π΅Π½ΠΈΠ΅ΡΠΎ, Π·Π° Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π½ΠΎΠ²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
CREATE DATABASE database_name;ΠΡΠΈΠΌΠ΅Ρ
CREATE DATABASE my_database;Π’ΠΎΠ²Π° ΡΡΠ·Π΄Π°Π²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ ΠΈΠΌΠ΅ my_database ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎΡΡ Π½Π° ΡΠ΅ΠΊΡΡΠΎ Π°ΠΊΡΠΈΠ²Π½Π°ΡΠ° PostgreSQL ΡΠΎΠ»Ρ.
ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π΄Π°Π»ΠΈ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½Π°
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ l ΠΌΠ΅ΡΠ°-ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π·Π° Π΄Π° ΠΈΠ·Π²Π΅Π΄Π΅ΡΠ΅ ΡΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΡΡΡΠ²ΡΡΠ°:
lΠ©Π΅ Π²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ°, ΠΏΠΎΠΊΠ°Π·Π²Π°ΡΠ° ΠΈΠΌΠ΅Π½Π° Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠΈ, ΠΊΠΎΠ΄ΠΈΡΠ°Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π·Π° Π΄ΠΎΡΡΡΠΏ.
3. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΡΠ°Π²ΠΈΠ»Π½ΠΎΡΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΅ ΠΊΡΠΈΡΠΈΡΠ½ΠΎ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ. ΠΠΌΠ΅ΡΡΠΎ Π΄Π° Π΄Π°Π²Π°ΡΠ΅ Π΄ΠΎΡΡΡΠΏ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ postgres ΡΡΠΏΠ΅ΡΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡ Π°ΠΊΠ°ΡΠ½Ρ, ΡΡΡΠ±Π²Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ.
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»
CREATE USER username WITH PASSWORD 'your_secure_password';ΠΡΠΈΠΌΠ΅Ρ
CREATE USER dbuser WITH PASSWORD 'StrongP@ssword123';ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΏΡΠ»Π΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
GRANT ALL PRIVILEGES ON DATABASE database_name TO username;ΠΡΠΈΠΌΠ΅Ρ
GRANT ALL PRIVILEGES ON DATABASE my_database TO dbuser;Π’ΠΎΠ²Π° Π΄Π°Π²Π° Π½Π° dbuser ΠΏΡΠ»Π΅Π½ Π΄ΠΎΡΡΡΠΏ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ ΠΈ ΠΏΠΈΡΠ°Π½Π΅ Π΄ΠΎ my_database, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ.
Π‘ΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ
ΠΠ° ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΡΠΎΠ»ΠΈ ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ:
du4. Π‘Π²ΡΡΠ·Π²Π°Π½Π΅ ΠΊΡΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ ΠΊΡΠΌ Π½Π΅Ρ, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ ΠΈΠ»ΠΈ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ ΡΡΠ΅ΡΡ Π½Π΅Ρ.
ΠΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΊΡΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
c my_databaseΠΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°ΡΠ° ΡΠ΅ ΡΠ΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°, Π·Π° Π΄Π° ΠΎΡΡΠ°Π·ΡΠ²Π° Π°ΠΊΡΠΈΠ²Π½Π°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ:
my_database=#ΠΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Π² my_database ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ DDL ΠΈ DML ΠΈΠ·ΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ΅ΡΡ Π½Π΅Ρ.
5. Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ
Π’Π°Π±Π»ΠΈΡΠΈΡΠ΅ ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΡΡΡΠΊΡΡΡΠ½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π½Π° Π²ΡΡΠΊΠ° ΡΠ΅Π»Π°ΡΠΈΠΎΠ½Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. ΠΡΡΠΊΠ° ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΡΡ Π΅ΠΌΠ° β Π½Π°Π±ΠΎΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ.
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°
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) NOT NULL,
department VARCHAR(50),
salary NUMERIC(10, 2)
);Π’ΡΠΊ, SERIAL Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° employee_id ΠΏΡΠΈ Π²ΡΠ΅ΠΊΠΈ Π½ΠΎΠ² ΡΠ΅Π΄, ΠΈ NOT NULL Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΡΠ»ΡΠΆΠΈΡΠ΅Π» ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠΌΠ° ΠΈΠΌΠ΅.
6. ΠΠΌΡΠΊΠ²Π°Π½Π΅, Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅, Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠΌΡΠΊΠ²Π°Π½Π΅ Π½Π° Π·Π°ΠΏΠΈΡ
INSERT INTO employees (name, department, salary)
VALUES ('Jane Smith', 'Engineering', 72000);ΠΠ°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π·Π°ΠΏΠΈΡΠΈ
SELECT * FROM employees;Π€ΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ Ρ ΠΊΠ»Π°ΡΠ·Π° WHERE
SELECT name, salary FROM employees WHERE department = 'Engineering';ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ Π·Π°ΠΏΠΈΡ
UPDATE employees
SET salary = 78000
WHERE name = 'Jane Smith';ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ Π·Π°ΠΏΠΈΡ
DELETE FROM employees
WHERE name = 'Jane Smith';> ΠΠΎΠ±ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°: ΠΠΈΠ½Π°Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ WHERE ΠΊΠ»Π°ΡΠ·Π° Ρ UPDATE ΠΈ DELETE ΠΈΠ·ΡΠ²Π»Π΅Π½ΠΈΡ. ΠΡΠΎΠΏΡΡΠΊΠ°Π½Π΅ΡΠΎ ΠΉ ΡΠ΅ Π·Π°ΡΠ΅Π³Π½Π΅ Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π΄ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°.
7. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ
Π‘ΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π΅ ΠΏΡΡΠ²ΠΎΡΡΠ΅ΠΏΠ΅Π½Π½Π° Π³ΡΠΈΠΆΠ° ΠΏΡΠΈ Π²ΡΡΠΊΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ Π½Π° PostgreSQL. ΠΡΠΈΠ½ΡΠΈΠΏΡΡ Π½Π° Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΡΠ°ΠΌΠΎ Π½Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΡΠ°, ΠΊΠΎΠΈΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠΌ ΡΡΡΠ±Π²Π°Ρ β Π΄ΡΠ°ΠΌΠ°ΡΠΈΡΠ½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π²Π°ΡΠ°ΡΠ° ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡ Π½Π° Π°ΡΠ°ΠΊΠ°.
ΠΡΠΎΠ·Π²Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»
REVOKE ALL PRIVILEGES ON DATABASE my_database FROM dbuser;ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° ΡΠ°Π±Π»ΠΈΡΠ°
GRANT SELECT ON TABLE employees TO dbuser;Π’ΠΎΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° dbuser Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈ Π·Π°ΡΠ²ΠΊΠ° ΠΊΡΠΌ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° employees, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π° Π²ΡΠΈΡΠΊΠΈ Π²ΠΌΡΠΊΠ²Π°Π½ΠΈΡ, Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½ΠΈΡ.
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ DML ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ
GRANT SELECT, INSERT, UPDATE ON TABLE employees TO dbuser;ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠΈΠ»Π½ΠΈ, ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠ°ΡΠΎΠ»ΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ
- ΠΠ΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΠΉΡΠ΅ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏ Π·Π° ΡΡΠΏΠ΅ΡΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ
postgresΠ²pg_hba.conf - ΠΠΊΡΠΈΠ²ΠΈΡΠ°ΠΉΡΠ΅ SSL Π²ΡΡΠ·ΠΊΠΈ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΡΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ β ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΎΠ²Π° Ρ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ SSL ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ
- Π Π΅Π΄ΠΎΠ²Π½ΠΎ ΠΎΠ΄ΠΈΡΠΈΡΠ°ΠΉΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π°
duΠΈdp - ΠΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΉΡΠ΅ PostgreSQL Π°ΠΊΡΡΠ°Π»Π΅Π½ Π·Π° ΠΏΠΎΠΏΡΠ°Π²ΠΊΠ° Π½Π° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ
8. Π Π΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
Π Π΅Π΄ΠΎΠ²Π½ΠΎΡΠΎ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ Π΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π·Π° Π²ΡΡΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. PostgreSQL ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ pg_dump ΠΈ psql ΡΡΠΈΠ»ΠΈΡΠΈ Π·Π° ΠΏΡΠ°Π²ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅.
Π Π΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π² SQL ΡΠ°ΠΉΠ»
pg_dump my_database > my_database_backup.sqlΠ’ΠΎΠ²Π° Π΅ΠΊΡΠΏΠΎΡΡΠΈΡΠ° ΡΡΠ»Π°ΡΠ° ΡΡ Π΅ΠΌΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π°Π½Π½ΠΈ ΠΊΠ°ΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΠ΅ΠΊΡΡΠΎΠ² SQL ΡΠΊΡΠΈΠΏΡ.
Π Π΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ Π² ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ ΡΠΎΡΠΌΠ°Ρ (ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ°Π½ΠΎ Π·Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ)
pg_dump -Fc my_database > my_database_backup.dumpΠΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΡ ΡΠΎΡΠΌΠ°Ρ (-Fc) ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ Π΄Π²ΠΎΠΈΡΠ΅Π½ ΡΠ°ΠΉΠ» ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅.
ΠΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ SQL ΡΠ΅Π·Π΅ΡΠ²Π½Π° ΠΊΠΎΠΏΠΈΡ
psql my_database < my_database_backup.sqlΠΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΎΡ ΡΠ΅Π·Π΅ΡΠ²Π½Π° ΠΊΠΎΠΏΠΈΡ Π² ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΡΠΎΡΠΌΠ°Ρ
pg_restore -d my_database my_database_backup.dumpΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ Ρ Cron Π·Π°Π΄Π°ΡΠ°
ΠΠ»Π°Π½ΠΈΡΠ°ΠΉΡΠ΅ Π΄Π½Π΅Π²Π½ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ, ΠΊΠ°ΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ cron Π·Π°ΠΏΠΈΡ:
crontab -e0 2 * * * pg_dump my_database > /var/backups/postgres/my_database_$(date +%F).sqlΠ’ΠΎΠ²Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠ΅Π·Π΅ΡΠ²Π½Π° ΠΊΠΎΠΏΠΈΡ Π²ΡΠ΅ΠΊΠΈ Π΄Π΅Π½ Π² 2:00 ΡΡΡΡΠΈΠ½ΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Ρ Π΄Π°ΡΠ°ΡΠ° ΠΊΡΠΌ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° Π·Π° Π»Π΅ΡΠ½Π° Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ.
9. ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
ΠΠΎΠ³Π°ΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π²Π΅ΡΠ΅ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ DROP ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΡΠΎ ΠΉ ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅.
ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°
DROP TABLE table_name;ΠΡΠΈΠΌΠ΅Ρ
DROP TABLE employees;ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° (ΠΏΠΎ-Π±Π΅Π·ΠΎΠΏΠ°ΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ)
DROP TABLE IF EXISTS employees;ΠΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
Π’ΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΠ΅ ΠΎΡ ΡΠ΅Π»Π΅Π²Π°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΏΡΠ΅Π΄ΠΈ Π΄Π° Ρ ΠΈΠ·ΡΡΠΈΠ΅ΡΠ΅. ΠΡΡΠ²ΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ ΠΊΡΠΌ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ°ΡΠ° ΡΠ΅ postgres Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ:
c postgresΠ‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΈΠ·ΡΡΠΈΠΉΡΠ΅ ΡΠ΅Π»Π΅Π²Π°ΡΠ°:
DROP DATABASE my_database;> ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: DROP DATABASE Π΅ Π½Π΅ΠΎΠ±ΡΠ°ΡΠΈΠΌΠΎ. ΠΠΈΠ½Π°Π³ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅ ΡΠ°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π² production.
10. ΠΠΎΠ»Π΅Π·Π½Π° ΡΠΏΡΠ°Π²ΠΊΠ° Π·Π° PostgreSQL ΠΌΠ΅ΡΠ°-ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ
CLI-ΡΡ Π½Π° psql Π²ΠΊΠ»ΡΡΠ²Π° Π±ΠΎΠ³Π°Ρ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΌΠ΅ΡΠ°-ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ (Ρ ΠΏΡΠ΅ΡΠΈΠΊΡ ), ΠΊΠΎΠΈΡΠΎ ΠΎΠΏΡΠΎΡΡΡΠ²Π°Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡΡΠ° ΠΈ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΡΠ°:
| ΠΠΎΠΌΠ°Π½Π΄Π° | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|
l | Π‘ΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ |
c dbname | Π‘Π²ΡΡΠ·Π²Π°Π½Π΅ ΠΊΡΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ |
dt | Π‘ΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ Π² ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ |
d table_name | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ° Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° |
du | Π‘ΠΏΠΈΡΡΠΊ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ ΡΠΎΠ»ΠΈ |
dp | ΠΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅ Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°Π±Π»ΠΈΡΠ° |
timing | ΠΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Ρ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°ΡΠ²ΠΊΠ°ΡΠ° |
q | ΠΠ·Ρ ΠΎΠ΄ ΠΎΡ PostgreSQL CLI |
11. ΠΠ·Π»ΠΈΠ·Π°Π½Π΅ ΠΎΡ PostgreSQL CLI
ΠΠΎΠ³Π°ΡΠΎ Π·Π°Π²ΡΡΡΠΈΡΠ΅ ΡΡΡ ΡΠ΅ΡΠΈΡΡΠ° ΡΠΈ, ΠΈΠ·Π»Π΅Π·ΡΠ΅ ΡΠΈΡΡΠΎ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅:
qΠ’ΠΎΠ²Π° Π²ΠΈ Π²ΡΡΡΠ° ΠΊΡΠΌ Linux shell prompt.
ΠΠ°ΡΠΎ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΠΌ PostgreSQL Π½Π° AlexHost VPS?
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ» ΡΠ° Π΄Π²Π΅ΡΠ΅ Π½Π°ΠΉ-Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡΠΈΡΠΈΠ½ΠΈ Π΄Π° ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎ Ρ ΠΎΡΡΠΈΡΠ°ΠΌ PostgreSQL Π½Π° ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½Π° VPS Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΠ°Π·ΡΠΈΡΠ°ΠΌ Π½Π° ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½Π° ΠΈΠ»ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Π½Π° ΡΡΠ»ΡΠ³Π° Π·Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π‘ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° AlexHost ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅:
- NVMe SSD Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π·Π° ΡΠ»ΡΡΠ°-Π±ΡΡΠ·ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π½Π΅/ΠΏΠΈΡΠ°Π½Π΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π½Π°Π±ΠΎΡΠΈ Π΄Π°Π½Π½ΠΈ
- ΠΡΠ»Π΅Π½ root Π΄ΠΎΡΡΡΠΏ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° PostgreSQL ΡΠΎΡΠ½ΠΎ ΠΊΠ°ΠΊΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π²Π°ΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
- DDoS Π·Π°ΡΠΈΡΠ° Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° Π½Π°Π»ΠΈΡΠ½ΠΎΡΡ Π½Π° Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ Π·Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΏΡΠΈ Π½Π΅Π±Π»Π°Π³ΠΎΠΏΡΠΈΡΡΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ
- ΠΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΈ ΡΠ΅ΡΡΡΡΠΈ β Π½Π°Π΄ΡΡΡΠΎΠΉΡΠ΅ Π²Π°ΡΠΈΡ CPU, RAM ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Ρ ΡΠ°ΡΡΠ΅ΠΆΠ° Π½Π° Π²Π°ΡΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ
ΠΠ° Π΅ΠΊΠΈΠΏΠΈ, ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ, Dedicated Servers ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΎΡΠ΅ ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ, ΡΠΈΡΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠ° Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ½ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ, ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΈ ΠΊΡΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ.
ΠΠΊΠΎ Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅ ΡΠ΅Π± ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°ΡΠ΅Π΄ Ρ Π²Π°ΡΠΈΡΠ΅ PostgreSQL Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠ΄Π²ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π²Π°ΡΠ°ΡΠ° VPS ΡΡΡ Shared Web Hosting Π·Π° ΡΡΠ°ΡΠΈΡΠ½ΠΈ Π°ΠΊΡΠΈΠ²ΠΈ ΠΈΠ»ΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠ° Π½Π° ΠΏΡΠ΅Π΄Π΅Π½ ΠΊΡΠ°ΠΉ ΠΌΠΎΠΆΠ΅ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ° Π²Π°ΡΠ°ΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈΡΠ΅.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ²Π»Π°Π΄ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° PostgreSQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π½Π° Linux VPS Π²ΠΈ Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π°Π΄ Π²Π°ΡΠ°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π·Π° Π΄Π°Π½Π½ΠΈ β ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡ Π΅ΠΌΠ° ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΄ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ ΠΈ ΡΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°. ΠΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ, ΠΎΠΏΠΈΡΠ°Π½ΠΈ Π² ΡΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡ Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΌΠ΅Π½ΠΈΡ, ΠΊΠΎΠΉΡΠΎ Π²ΡΠ΅ΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ΅Π½ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠΈΡΠ΅ΠΆΠ°Π²Π°, Π·Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Ρ PostgreSQL Ρ ΡΠ²Π΅ΡΠ΅Π½ΠΎΡΡ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ.
Π Π΅Π·ΡΠΌΠ΅ Π½Π° Π±ΡΡΠ·ΠΎ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ:
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅
CREATE DATABASEΠΈCREATE USERΠ·Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ ΡΠ΅ΡΡΡΡΠΈ - ΠΡΠΈΠ»Π°Π³Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ° Π½Π° Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Ρ
GRANTΠΈREVOKE - ΠΠΈΠ½Π°Π³ΠΈ ΠΏΡΠ°Π²Π΅ΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Ρ
pg_dumpΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠ°Π·ΡΡΡΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ - ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅
l,dtΠΈduΠ·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π²Π°ΡΠ°ΡΠ° ΡΡΠ΅Π΄Π° Ρ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ³Π»Π΅Π΄ - ΠΠ»Π°Π½ΠΈΡΠ°ΠΉΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΈ ΠΊΠΎΠΏΠΈΡ ΡΡΠ΅Π· cron, Π·Π° Π΄Π° Π·Π°ΡΠΈΡΠΈΡΠ΅ ΡΡΠ΅ΡΡ Π·Π°Π³ΡΠ±Π° Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠΎΡΠΎΠ²ΠΈ Π»ΠΈ ΡΡΠ΅ Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠΈΡΠ΅ ΡΠ΅Π·ΠΈ ΡΠΌΠ΅Π½ΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°? Π‘ΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Π½Π° Linux ΡΡΠ΅Π΄Π° Π½Π° AlexHost VPS Hosting ΠΏΠ»Π°Π½ ΠΈ ΠΏΠΎΠ΅ΠΌΠ΅ΡΠ΅ ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π°Π΄ Π²Π°ΡΠΎΡΠΎ PostgreSQL ΡΠ°Π·Π³ΡΡΡΠ°Π½Π΅ Π΄Π½Π΅Ρ.
ΠΎΡ Π²ΡΠΈΡΠΊΠΈ Ρ
ΠΎΡΡΠΈΠ½Π³ ΡΡΠ»ΡΠ³ΠΈ