Postgresql восстановление из Navicat Data Transfer

Тема в разделе "Базы данных", создана пользователем Intheomsk, 9 янв 2014.

Модераторы: latteo
  1. Intheomsk

    Intheomsk Создатель

    Регистр.:
    1 июл 2013
    Сообщения:
    23
    Симпатии:
    3
    Добрый день. В программе navicat с помощью data transfer сделан файл *.sql. При попытке восстановления в чистой базе с помощью "Execute SQL файл" ругается на "отсутствует отношение название_таблицы". Можно ли восстановить базу и структуру БД из этого файла ?

    add. Как оказалось, ругается не на название таблицы, а на тип данных:
    "id" int4 DEFAULT nextval('home_info_id_seq'::regclass) NOT NULL, <- в sql файле
    [Err] ОШИБКА: отношение "home_info_id_seq" не существует <- ошибка при импорте
     
    Последнее редактирование: 9 янв 2014
  2. Prometeus

    Prometeus Постоялец

    Регистр.:
    9 дек 2013
    Сообщения:
    57
    Симпатии:
    12
    Посмотреть внимательнее sql файл. Создаётся ли home_info_id_seq. Скорее всего он создаётся позже требуемой таблицы, перенести создание home_info_id_seq и создание таблицы, чтобы выполнялась правильная очерёдность.
     
  3. cerberix

    cerberix Создатель

    Регистр.:
    6 июл 2015
    Сообщения:
    19
    Симпатии:
    2
    Интересная у вас ошибка, ранее с такой не сталкивался, хотя и Навикадом не пользуюсь.
    Для Постгри, предпочитаю его родной "pgAdmin III" - бесплатный.
    А для остальных баз использую только "Toad" (Toad for MySQL и вовсе бесплатный).
    А так только Toad.

    А в целом, сделав бекап, необходимо на другой машине, сразу же попытаться его развернуть, что бы убедиться в работоспособности бекапа.
    Я разок так 1с-ку убил. Бекап сделал, не проверил. Потом не смог развернуть. Хорошо это была версия 77, там dbf файлы, руками данные пришлось дергать, да разные танцы с бубнами делать.

    Так же всегда хорошим тоном будет делать бекап не всех данных а отдельно "бекап структуры" и "бекап с данными и с структурой".
    Вдруг захочется сделать пустую базу.