15%

Π—Π°ΠΎΡ‰Π°Π΄ΠΆΡƒΠΉΡ‚Π΅ 15% Π½Π° всіх послугах хостингу

ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€Ρ‚Π΅ свої Π½Π°Π²ΠΈΡ‡ΠΊΠΈ Ρ‚Π° ΠΎΡ‚Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ Π—Π½ΠΈΠΆΠΊΡƒ Π½Π° Π±ΡƒΠ΄ΡŒ-який Ρ‚Π°Ρ€ΠΈΡ„Π½ΠΈΠΉ ΠΏΠ»Π°Π½

Використовуй ΠΊΠΎΠ΄:

Skills
ΠŸΠΎΡ‡Π°Ρ‚ΠΈ
21.11.2024

Π Π΅Π·Π΅Ρ€Π²Π½Π΅ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ Ρ‚Π° відновлСння Π±Π°Π· Π΄Π°Π½ΠΈΡ… PostgreSQL

Π‘Π΅Π·ΠΏΠ΅Ρ‡Π½Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½Π΅ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ PostgreSQL Π½Π° Π²ΠΈΠ΄Ρ–Π»Π΅Π½ΠΈΡ… сСрвСрах AlexHost

Π§ΠΎΠΌΡƒ Π²Π°Ρ€Ρ‚ΠΎ ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ– ΠΊΠΎΠΏΡ–Ρ— PostgreSQL Π½Π° AlexHost? Π’Ρ‚Ρ€Π°Ρ‚Π° Π΄Π°Π½ΠΈΡ… ΠΌΠΎΠΆΠ΅ Π·Π°Π²Π΄Π°Ρ‚ΠΈ шкоди Π±ΡƒΠ΄ΡŒ-якому ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, Π°Π»Π΅ Π²ΠΈΠ΄Ρ–Π»Π΅Π½Ρ– сСрвСриAlexHost – зблискавичним сховищСм NVMe, ΠΏΠΎΠ²Π½ΠΈΠΌ root-доступом Ρ– захистом Π²Ρ–Π΄ DDoS – ΠΏΡ€ΠΎΠΏΠΎΠ½ΡƒΡŽΡ‚ΡŒ Π½Π°Π΄Ρ–ΠΉΠ½Ρƒ основу для хостингу Ρ‚Π° захисту Π±Π°Π· Π΄Π°Π½ΠΈΡ… PostgreSQL. НСзалСТно Π²Ρ–Π΄ Ρ‚ΠΎΠ³ΠΎ, Ρ‡ΠΈ використовуєтС Π²ΠΈ сайт Π½Π° WordPress, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΎΡ— ΠΊΠΎΠΌΠ΅Ρ€Ρ†Ρ–Ρ— Π°Π±ΠΎ ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½ΠΈΠΉ Π΄ΠΎΠ΄Π°Ρ‚ΠΎΠΊ, Ρ†Π΅ΠΉ посібник ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π²Π°ΠΌ, як ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ– ΠΊΠΎΠΏΡ–Ρ— Ρ‚Π° Π²Ρ–Π΄Π½ΠΎΠ²Π»ΡŽΠ²Π°Ρ‚ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ… PostgreSQL Π·Π° допомогою SQL-Π΄Π°ΠΌΠΏΡ–Π², ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ–Π² Ρ‚Π° PITR, ΠΎΠΏΡ‚ΠΈΠΌΡ–Π·ΠΎΠ²Π°Π½ΠΈΡ… для високопродуктивного сСрСдовища AlexHost.

1. Розуміння ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ–Π² Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ PostgreSQL

PostgreSQL Π½Π°Π΄Π°Ρ” ΠΊΡ–Π»ΡŒΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ–Π² для Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ Π΄Π°Π½ΠΈΡ…, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‡ΠΈ

  • Π”Π°ΠΌΠΏ SQL: Π¦Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΡΡ‚Π²ΠΎΡ€ΡŽΡ” Π·Π²ΠΈΡ‡Π°ΠΉΠ½ΠΈΠΉ тСкстовий SQL-скрипт Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…, який ΠΌΠΎΠΆΠ΅ Π±ΡƒΡ‚ΠΈ використаний для відтворСння Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ….
  • Π”Π°ΠΌΠΏ ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ: Π¦Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΡΡ‚Π²ΠΎΡ€ΡŽΡ” Π΄Π²Ρ–ΠΉΠΊΠΎΠ²ΠΈΠΉ Ρ„Π°ΠΉΠ», який ΠΌΠΎΠΆΠ½Π° стиснути, Ρ– ΠΏΡ–Π΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ для Π²Π΅Π»ΠΈΠΊΠΈΡ… Π±Π°Π· Π΄Π°Π½ΠΈΡ….
  • Π Π΅Π·Π΅Ρ€Π²Π½Π΅ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ Π½Π° Ρ€Ρ–Π²Π½Ρ– Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΡ— систСми: Π¦Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄Π±Π°Ρ‡Π°Ρ” створСння Π·Π½Ρ–ΠΌΠΊΠ° Ρ„Π°ΠΉΠ»Ρ–Π² Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ… Π½Π° диску, ΠΏΡ–Π΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ для Π²Π΅Π»ΠΈΠΊΠΈΡ… Π±Π°Π· Π΄Π°Π½ΠΈΡ…, Π°Π»Π΅ Π²ΠΈΠΌΠ°Π³Π°Ρ” Π±Ρ–Π»ΡŒΡˆΠΎΡ— ΠΊΠ²Π°Π»Ρ–Ρ„Ρ–ΠΊΠ°Ρ†Ρ–Ρ—.
  • Π‘Π΅Π·ΠΏΠ΅Ρ€Π΅Ρ€Π²Π½Π° архівація Ρ‚Π° відновлСння Π² ΠΏΠ΅Π²Π½ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ часу (PITR): Π¦Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ дозволяє Π²Ρ–Π΄Π½ΠΎΠ²ΠΈΡ‚ΠΈ Π±Π°Π·Ρƒ Π΄Π°Π½ΠΈΡ… Π΄ΠΎ ΠΏΠ΅Π²Π½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ часу.

2. ΠŸΡ–Π΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π΄ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ

ΠŸΠ΅Ρ€Π΅Π΄ виконанням Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ пСрСконайтСся, Ρ‰ΠΎ Ρƒ вас Ρ” Π½Π΅ΠΎΠ±Ρ…Ρ–Π΄Π½Ρ– ΠΏΡ€ΠΈΠ²Ρ–Π»Π΅Ρ—. Π’ΠΈ ΠΏΠΎΠ²ΠΈΠ½Π½Ρ– Π±ΡƒΡ‚ΠΈ супСркористувачСм Π°Π±ΠΎ власником Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…, яку Ρ…ΠΎΡ‡Π΅Ρ‚Π΅ створити Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ

3. БтворСння Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΡ— ΠΊΠΎΠΏΡ–Ρ— Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ… PostgreSQL

Бпосіб 1: Використання pg_dump

Π£Ρ‚ΠΈΠ»Ρ–Ρ‚Π° pg_dump дозволяє створити Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ Π²Π°ΡˆΠΎΡ— Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…

ΠšΡ€ΠΎΠΊ 1: Π’Ρ–Π΄ΠΊΡ€ΠΈΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΡ–Π½Π°Π»

ΠžΡ‚Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ доступ Π΄ΠΎ вашого сСрвСра Ρ‡Π΅Ρ€Π΅Π· SSH Π°Π±ΠΎ Π±Π΅Π·ΠΏΠΎΡΠ΅Ρ€Π΅Π΄Π½ΡŒΠΎ Π½Π° ΠΌΠ°ΡˆΠΈΠ½Ρ–

ΠšΡ€ΠΎΠΊ 2: Π—Π°ΠΏΡƒΡΡ‚Ρ–Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ pg_dump

Π©ΠΎΠ± створити SQL-Π΄Π°ΠΌΠΏ Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…, скористайтСся Π½Π°ΡΡ‚ΡƒΠΏΠ½ΠΎΡŽ командою

pg_dump -U username -W -F p database_name > backup_file.sql
  • -U Ρ–ΠΌ’я користувача: Π’ΠΊΠ°ΠΆΡ–Ρ‚ΡŒ Ρ–ΠΌ’я користувача PostgreSQL.
  • -W: Π—Π°ΠΏΠΈΡ‚ Π½Π° ввСдСння пароля.
  • -F p: Π’ΠΊΠ°ΠΆΡ–Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ (Π·Π²ΠΈΡ‡Π°ΠΉΠ½ΠΈΠΉ SQL-скрипт).
  • Π½Π°Π·Π²Π°_Π±Π°Π·ΠΈ_Π΄Π°Π½ΠΈΡ…: Назва Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…, яку ΠΏΠΎΡ‚Ρ€Ρ–Π±Π½ΠΎ створити Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ.
  • Ρ„Π°ΠΉΠ»_Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΡ—_ΠΊΠΎΠΏΡ–Ρ—.sql: Π†ΠΌ’я Π²ΠΈΡ…Ρ–Π΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Ρƒ для Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΡ— ΠΊΠΎΠΏΡ–Ρ—.
ΠŸΡ€ΠΈΠΊΠ»Π°Π΄:
pg_dump -U postgres -W -F p my_database > my_database_backup.sql

Бпосіб 2: Використання pg_dumpall

Π―ΠΊΡ‰ΠΎ Π²ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚Π΅ створити Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ всіх Π±Π°Π· Π΄Π°Π½ΠΈΡ… Π² СкзСмплярі PostgreSQL, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ використовувати pg_dumpall

pg_dumpall -U username -W > all_databases_backup.sql

4. БтворСння Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈΡ… ΠΊΠΎΠΏΡ–ΠΉ Ρƒ ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ–

Π©ΠΎΠ± створити Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ Ρƒ власному Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ–, скористайтСся ΠΎΠΏΡ†Ρ–Ρ”ΡŽ -F c Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ– pg_dump

pg_dump -U username -W -F c database_name > backup_file.dump

Π¦Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠΎΠ»Π΅Π³ΡˆΡƒΡ” відновлСння Ρ– стиснСння

5. ВідновлСння Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ… PostgreSQL

Бпосіб 1: ВідновлСння Π· SQL-Π΄Π°ΠΌΠΏΠ°

Π©ΠΎΠ± Π²Ρ–Π΄Π½ΠΎΠ²ΠΈΡ‚ΠΈ Π±Π°Π·Ρƒ Π΄Π°Π½ΠΈΡ… Π· SQL-Π΄Π°ΠΌΠΏΠ°, скористайтСся командою psql

psql -U username -d database_name -f backup_file.sql
  • -d Π½Π°Π·Π²Π°_Π±Π°Π·ΠΈ_Π΄Π°Π½ΠΈΡ…: Назва Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…, Π· якої Π²ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚Π΅ Π²Ρ–Π΄Π½ΠΎΠ²ΠΈΡ‚ΠΈ Π΄Π°Π½Ρ–.
  • backup_file.sql: Шлях Π΄ΠΎ Ρ„Π°ΠΉΠ»Ρƒ Π΄Π°ΠΌΠΏΠ° SQL.

Бпосіб 2: ВідновлСння Π· ΠΊΠΎΡ€ΠΈΡΡ‚ΡƒΠ²Π°Ρ†ΡŒΠΊΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ

Для отримання Π΄Π°ΠΌΠΏΠ° Π² нСстандартному Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ– використовуйтС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ pg_restore

pg_restore -U username -d database_name backup_file.dump
  • Π’ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ скористатися ΠΎΠΏΡ†Ρ–Ρ”ΡŽ -C, Ρ‰ΠΎΠ± створити Π±Π°Π·Ρƒ Π΄Π°Π½ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π΄ відновлСнням, якщо Ρ—Ρ— Π½Π΅ існує.

6. Використання Π±Π΅Π·ΠΏΠ΅Ρ€Π΅Ρ€Π²Π½ΠΎΡ— Π°Ρ€Ρ…Ρ–Π²Π°Ρ†Ρ–Ρ— Ρ‚Π° відновлСння Ρƒ ΠΏΠ΅Π²Π½ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ часу (PITR)

Для досвідчСних користувачів PostgreSQL дозволяє Π±Π΅Π·ΠΏΠ΅Ρ€Π΅Ρ€Π²Π½Ρƒ Π°Ρ€Ρ…Ρ–Π²Π°Ρ†Ρ–ΡŽ, яка Π²ΠΈΠΌΠ°Π³Π°Ρ” Π½Π°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ WAL (Write-Ahead Logging). Π¦Π΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ” Π² сСбС наступні Π΄Ρ–Ρ—

  1. ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Π½Π½Ρ архівування WAL: Π—ΠΌΡ–Π½Ρ–Ρ‚ΡŒ Ρ„Π°ΠΉΠ» postgresql.conf, Ρ‰ΠΎΠ± ΡƒΠ²Ρ–ΠΌΠΊΠ½ΡƒΡ‚ΠΈ Π°Ρ€Ρ…Ρ–Π²Π°Ρ†Ρ–ΡŽ WAL
    archive_mode = on archive_command = 'cp %p /path/to/archive/%f'
  2. Виконання Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½Ρ Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ…: ВикористовуйтС pg_basebackup для створСння ΠΏΠΎΠ²Π½ΠΎΡ— Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΡ— ΠΊΠΎΠΏΡ–Ρ— Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ….
  3. ВідновлСння Π· Π°Ρ€Ρ…Ρ–Π²Ρƒ WAL: Π’ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ–Π΄Π½ΠΎΠ²ΠΈΡ‚ΠΈ Π±Π°Π·Ρƒ Π΄Π°Π½ΠΈΡ… Π΄ΠΎ ΠΏΠ΅Π²Π½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ часу, Π²ΠΈΠΊΠΎΡ€ΠΈΡΡ‚ΠΎΠ²ΡƒΡŽΡ‡ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρƒ ΠΊΠΎΠΏΡ–ΡŽ Π±Π°Π·ΠΈ Ρ‚Π° Π°Ρ€Ρ…Ρ–Π²Π½Ρ– Ρ„Π°ΠΉΠ»ΠΈ WAL.

Висновок: Π—Π°Ρ…ΠΈΡΡ‚Ρ–Ρ‚ΡŒ свої Π΄Π°Π½Ρ– PostgreSQL Π·Π° допомогою AlexHost

Захист Π²Π°ΡˆΠΈΡ… Π±Π°Π· Π΄Π°Π½ΠΈΡ… PostgreSQL Π½Π΅ підлягає ΠΎΠ±Π³ΠΎΠ²ΠΎΡ€Π΅Π½Π½ΡŽ, Π° Π²ΠΈΠ΄Ρ–Π»Π΅Π½Ρ– сСрвСри AlexHost ΠΏΠΎΠ»Π΅Π³ΡˆΡƒΡŽΡ‚ΡŒ ΠΉΠΎΠ³ΠΎ завдяки ΡˆΠ²ΠΈΠ΄ΠΊΠΎΠΌΡƒ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΌΡƒ ΠΊΠΎΠΏΡ–ΡŽΠ²Π°Π½Π½ΡŽ Ρ‚Π° Π±Π΅Π·ΠΏΠ΅Ρ‡Π½ΠΎΠΌΡƒ Π·Π±Π΅Ρ€Ρ–Π³Π°Π½Π½ΡŽ. ВикористовуйтС pg_dump для швидкого створСння SQL-Π΄Π°ΠΌΠΏΡ–Π², ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½Ρ– Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ для Π²Π΅Π»ΠΈΠΊΠΈΡ… Π±Π°Π· Π΄Π°Π½ΠΈΡ… Π°Π±ΠΎ PITR для Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ відновлСння. АвтоматизуйтС Π·Π° допомогою cron, Π·Π°Ρ…ΠΈΡΡ‚Ρ–Ρ‚ΡŒ Π·Π° допомогою UFW Ρ– ΡΡ‚Π²ΠΎΡ€ΡŽΠΉΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ– ΠΊΠΎΠΏΡ–Ρ— Π·Π° ΠΌΠ΅ΠΆΠ°ΠΌΠΈ ΠΌΠ°ΠΉΠ΄Π°Π½Ρ‡ΠΈΠΊΠ° для Π΄ΡƒΡˆΠ΅Π²Π½ΠΎΠ³ΠΎ спокою. Завдяки ΡˆΠ²ΠΈΠ΄ΠΊΠΎΡΡ‚Ρ– Ρ‚Π° ΠΏΡ–Π΄Ρ‚Ρ€ΠΈΠΌΡ†Ρ– NVMe Π²Ρ–Π΄ AlexHost Π²Π°ΡˆΡ– Π΄Π°Π½Ρ– Π·Π°Π»ΠΈΡˆΠ°ΡŽΡ‚ΡŒΡΡ Π² Π±Π΅Π·ΠΏΠ΅Ρ†Ρ–, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ²ΠΆΡƒΡŽΡ‚ΡŒ ΠΏΡ€Π°Ρ†ΡŽΠ²Π°Ρ‚ΠΈ – ΠΏΠΎΡ‡Π½Ρ–Ρ‚ΡŒ ΡΡ‚Π²ΠΎΡ€ΡŽΠ²Π°Ρ‚ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ– ΠΊΠΎΠΏΡ–Ρ— Π²ΠΆΠ΅ ΡΡŒΠΎΠ³ΠΎΠ΄Π½Ρ–!

15%

Π—Π°ΠΎΡ‰Π°Π΄ΠΆΡƒΠΉΡ‚Π΅ 15% Π½Π° всіх послугах хостингу

ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€Ρ‚Π΅ свої Π½Π°Π²ΠΈΡ‡ΠΊΠΈ Ρ‚Π° ΠΎΡ‚Ρ€ΠΈΠΌΠ°ΠΉΡ‚Π΅ Π—Π½ΠΈΠΆΠΊΡƒ Π½Π° Π±ΡƒΠ΄ΡŒ-який Ρ‚Π°Ρ€ΠΈΡ„Π½ΠΈΠΉ ΠΏΠ»Π°Π½

Використовуй ΠΊΠΎΠ΄:

Skills
ΠŸΠΎΡ‡Π°Ρ‚ΠΈ