Многофайловая база InterBase
От: hair  
Дата: 04.11.02 18:18
Оценка:
Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?
Re: Многофайловая база InterBase
От: VVP Россия 67524421
Дата: 04.11.02 18:20
Оценка:
Здравствуйте hair, Вы писали:

H>Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?

С сохранением ссылочной целостности никак...
Никогда не бойся браться делать то, что делать не умеешь. Помни, ковчег был построен любителем. Профессионалы построили Титаник...
Re[2]: Многофайловая база InterBase
От: hair  
Дата: 04.11.02 21:05
Оценка:
Здравствуйте VVP, Вы писали:

VVP>Здравствуйте hair, Вы писали:


H>>Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?

VVP>С сохранением ссылочной целостности никак...
А разве многофайловая база Interbase не представляется пользователю как единая база
со всеми вытекающими возможностями, в том числе и связями? Я думал что это так.
Re: Многофайловая база InterBase
От: Prog2 Michael Россия  
Дата: 05.11.02 03:27
Оценка:
Здравствуйте hair, Вы писали:

H>Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?

  1. Создайте новую многофайловую БД со структурой аналогичной исходной, т.е. надо экспортировать, например, используя IB Expert, метаданные и изменить в них создание БД на создание многофайловой БД.
  2. Перепишите данные из исходной БД в новую. Как переписывать решать Вам. Когда-то и где-то (не помню когда и где) пробовал утилиту, которая позволяла экспортировать из ib-базы данные в SQL-скрипт-файл, оставалось его выполнить и база наполнялась данными, как там обстояли дела с blob'ами даже не представляю.
Во время экспериментов у Вас всегда будет "целенькая" исходная база.
Re: Многофайловая база InterBase
От: vedmed  
Дата: 05.11.02 08:49
Оценка:
Здравствуйте hair, Вы писали:

H>Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?


Вначале backup, затем restore в несколько файлов
Re: Многофайловая база InterBase
От: VVP Россия 67524421
Дата: 05.11.02 11:18
Оценка:
Здравствуйте hair, Вы писали:

H>Не подскажите, как имея готовую базу gdb разбить ее на несколько файлов?

Прошу прощения за предыдущий ответ, он не совсем корректен. Дело в том, что ты не можешь создать два равноправных файла данных и указать какие таблицы в каких файлах лежат, и создать констрайнты на данные в другом файле. Но ты можешь создать вторичный (SECONDARY) файл, это необходимо, если размер основного файла приближается к 2Гб, при этом IB сам решит, что и в каком количестве положить во вторичный файл. Ты можешь создать до 0xFFFF вторичных фалов. О синтаксисе создания вторичных фалов смотри в описании команд CREATE DATABASE или ALTER DATABASE.
Как я понял твой вопрос, тебе нужен именно первый вариант, когда ты хочешь разложить данные с сохранением ссылочной целостности.
Возможен вариант, когда целостность отношений между двумя файлами будет поддерживать твоя программа, тогда можешь провести экспорт нужных таблиц из старого файла и импорт в новый файл (backup, restore), и надо будет научить твою программу работать с новым "равноправным" файлом.
Есть очень хороший русскоязычный сайт по IB: http://www.ibase.ru/
Никогда не бойся браться делать то, что делать не умеешь. Помни, ковчег был построен любителем. Профессионалы построили Титаник...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.