Задать вопрос
@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-ки?
  • Вопрос задан
  • 367 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 2
Melkij
@Melkij
PostgreSQL DBA
Бази данных физически должны находиться в data_directory = '/var/lib/postgresql/9.3/main'..

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

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

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

Похожие вопросы