Задать вопрос
@bmalets

Как достать postgres-БД из бекапа FS Ubuntu?

Здравствуйте!

Была VPS-ка ubuntu 14.04 c работающим postgres 9.3.

База данных my_database, юзер - postgres, пароль - my_password.

Из-за слабого SSH пароля, VPS была взломана. Хостинг предоставил бекап VPS-ки и замаунтил его как /opt/backup
(вся файлова система предыдущей убунты со всеми данными доступна по этому пути)

Новая VPS тоже ubuntu 14.04, postgres установлен такой же - 9.3.
путь к старому постгре - /opt/backup/etc/postgresql/9.3/main
путь к новому постгре - /etc/postgresql/9.3/main

Судя по файлу /opt/backup/etc/postgresql/9.3/main/postgresql.conf :
# The default values of these variables are driven from the -D command-line
# option or PGDATA environment variable, represented here as ConfigDir.
data_directory = '/var/lib/postgresql/9.3/main'
hba_file = '/etc/postgresql/9.3/main/pg_hba.conf'
ident_file = '/etc/postgresql/9.3/main/pg_ident.conf'


Бази данных физически должны находиться в /var/lib/postgresql/9.3/main (data_directory).
Но там их нет:

/opt/backup/var/lib/postgresql/9.3/main$ ls -al
total 56
drwxr-xr-x 2 postgres postgres  4096 May 15 06:06 .
drwxr-xr-x 3 postgres postgres  4096 May 15 06:06 ..
-rw-r--r-- 1 postgres postgres   315 May 15 06:06 environment
-rw-r--r-- 1 postgres postgres   143 May 15 06:06 pg_ctl.conf
-rw-r----- 1 postgres postgres  4719 Jun 17 09:47 pg_hba.conf
-rw-r----- 1 postgres postgres  1636 May 15 06:06 pg_ident.conf
-rw-r--r-- 1 postgres postgres 20669 Jun 17 09:29 postgresql.conf
-rw-r--r-- 1 postgres postgres   378 May 15 06:06 start.conf


Вопрос: как достать из бекапа старой VPS-ки базу данных my_database и присоединить ее к постгресу новой VPS-ки?
  • Вопрос задан
  • 373 просмотра
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    Основы работы в консоли Linux, настройка сетевых служб (кластер)
    1 неделя
    Далее
  • Хекслет
    Fullstack-разработчик на Node.js
    16 месяцев
    Далее
  • Skillfactory
    Профессия C++ разработчик
    11 месяцев
    Далее
Решения вопроса 2
Melkij
@Melkij
DBA для вашего PostgreSQL?
Бази данных физически должны находиться в data_directory = '/var/lib/postgresql/9.3/main'..

Но там их нет:
/opt/backup/etc/postgresql/9.3/main$ ls -al

Мысль логична, но почему смотрите-то в etc, а не в var?
Ответ написан
Комментировать
@azazelpw
Linux SA
"Люди делятся, на тех кто уже делает, бекапы и тех кто будет делать бекапы"
Найдите директорию base внутри будет файловая часть с уникальными id баз. попробуйте просто взять файловую часть скопировать, если не делали дампов.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Principal Recruitment Москва
от 200 000 до 250 000 ₽
Principal Recruitment Москва
от 200 000 до 350 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽