powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
25 сообщений из 27, страница 1 из 2
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850794
fankhm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый.
При проведении работ с базами Firebird (2.1, win-x64) возник вопрос:
- база 19 Гб
- после backup-restore стала 18
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850795
fankhm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fankhmДень добрый.
При проведении работ с базами Firebird (2.1, win-x64) возник вопрос:
- база 19 Гб
- после backup-restore стала 18

извините, не дописал:
- а после извлечения всех метаданных и данных в скрипт и восстановления из этого скрипта - 670 Мб

База работает нормально... Не понял, как ? Почему ?
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850797
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhm,

в первом приближении можно взять DBInfo отсюда https://ib-aid.com/en/ibsurgeon-free-tools/
и сравнить количество страниц разных типов.
Во втором приближении можно взять gstat -r обоих баз, и опять же сравнить.

По идее, размер базы вот прямо после backup/restore не должен отличаться от базы, созданной из скрипта, куда налиты абсолютно те же самые данные (причем налиты соответственно правильно - с выключенными индексами, после чего все индексы активированы, т.е. точно так же как при restore).
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850798
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhm,

совсем запутали. База была 19 гиг, а стала 670 мб?
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850799
fankhm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
именно так... счас накидаю скриншоты
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850800
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhm,

какие нафиг скриншоты. gstat -r надо снимать с оригинальной БД. и смотреть dbinfo.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850801
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhm,

не надо скриншоты. Скорее всего в скрипт данных вы извлекли не всё. Например возможно туда не вошли BLOB поля
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850802
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhmименно так...

Самый вероятный вариант: данные не влились (влились не полностью), но этого никто не заметил.
Второй по вероятности: в базе очень странный набор индексов, которые забыли создать.

Возьми уже в руки DBInfo в которую тебе ткнули пальцем.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850803
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhm,

собственно, причины такого радикального (или кардинального) уменьшения БД можно по пальцам пересчитать
- удалили почти все данные (база не уменьшается после удалений, вообще не уменьшается никогда)
- была массовая операция, в которой генерились временные блобы
- обнулился TIP, правда, 2млрд транзакций для 2.1 это 8 млрд байт, т.е. 8 гиг всего

ну и да, перелили не все данные, которые были в базе. Так что сравнивать "скрипт" надо с базой, которая прошла backup/restore.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850805
fankhm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakovfankhmименно так...

Самый вероятный вариант: данные не влились (влились не полностью), но этого никто не заметил.
Второй по вероятности: в базе очень странный набор индексов, которые забыли создать.

Возьми уже в руки DBInfo в которую тебе ткнули пальцем.


таки да - блобы не выгрузились

спасибо за указку
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850841
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fankhmтаки да - блобы не выгрузились
спасибо за указкуЭто то, о чём можно было догадаться ещё до попытки сделать backup/restore через скрипт, ибо BLOb'ов в скрипт можно засунуть только через преобразование к текстовому представлению, например к UUE или BASE64 и обратному преобразованию при создании из скрипта, для чего, естественно, необходим определённый инструментарий в виде UDF/UDR, но тут появляется ещё одна проблема - размер пакета запроса и необходимость собирать BLOb'ы из кусков, причём, желательно не средствами самой СУБД, из чего, опять же, следует, что собирать BLOb'ы должен соответствующий инструментарий где-нибудь в памяти или во временном файле ОС, а затем выдавать результат в СУБД, которая присвоит BLOB_ID.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850846
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devBLOb'ов в скрипт можно засунуть только через преобразование к текстовому представлениюТа ты шо !
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850866
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad, а шо? Ись ышо варианты?
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850869
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

Как минимум hex-представление решает проблему двоичных блобов, а их конкантенация решает проблему максимального размера блоба
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850871
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devhvlad, а шо? Ись ышо варианты?Посмотри на IBE
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850931
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad, таки шо я там должен развидеть?
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850933
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шавлюк Евгенийrdb_dev,

Как минимум hex-представление решает проблему двоичных блобов, а их конкантенация решает проблему максимального размера блобаhex-представление, это тоже текстовое представление, причём, одно из наимение компактных.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850937
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

ну ты попробуй табличку с блобами в эксперте экспортировать.

Код: sql
1.
2.
3.
4.
SET BLOBFILE 'C:\Users\Developer\Downloads\23.lob';

INSERT INTO MYTABLE (ID, REMARK)
VALUES (742367, :h00000000_00000034);
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850941
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, в "Инструментах" вижу только "Извлечение метаданных" и "Импорт данных". "Экспорта данных" не вижу.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850943
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

выполни любой SELECT запрос. Там есть кнопка экспортировать данные в скрипт.

В извлечении метаданных. Выбираем таблицы данных таблицу с блобами. В настройках ставим галку "извлечение из BLOB полей"

Вот кусок скрипта

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE TABLE NOTE (
    CODE_NOTE      INTEGER NOT NULL,
    CODE_HORSE     INTEGER NOT NULL,
    CODE_NOTETYPE  INTEGER NOT NULL,
    REMARK         BLOB SUB_TYPE 1 SEGMENT SIZE 80,
    REMARK_EN      BLOB SUB_TYPE 1 SEGMENT SIZE 80
);


SET BLOBFILE 'C:\Users\Developer\Downloads\44.lob';

INSERT INTO NOTE (CODE_NOTE, CODE_HORSE, CODE_NOTETYPE, REMARK, REMARK_EN) VALUES (2028820, 1064189, 1, :h0_A3, :hA3_92);
INSERT INTO NOTE (CODE_NOTE, CODE_HORSE, CODE_NOTETYPE, REMARK, REMARK_EN) VALUES (2028821, 1064189, 2, :h135_27, :h15C_29);
INSERT INTO NOTE (CODE_NOTE, CODE_HORSE, CODE_NOTETYPE, REMARK, REMARK_EN) VALUES (2028822, 1064189, 3, NULL, NULL);
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850947
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, неплохо! Раньше не замечал такой фичи...
Как прогнать полученный скрипт через isql на Линухе, где нет IBExpert'а в Вайне или виртуалке?
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850950
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

никак. Это просто ответ на твою категоричность, мол блобы можно только в текст скрипта экспортировать.
Не только как оказалось. Это вопрос реализации.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850956
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, таки да - в текстовый скрипт, который можно прогнать штатными средствами FirebirdSQL, BLOb можно засунуть только в текстовом виде. Мне даже как-то в голову не пришло рассматривать фичи third-party инструментария...
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850963
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисrdb_dev,
Не только как оказалось. Это вопрос реализации.Надо признать, реализация весьма забавная - загнать все блобы в один файл а именем параметра передавать смещение и размер.
...
Рейтинг: 0 / 0
Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
    #39850968
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

этой реализации 100 лет в обед. Как раз реализацию через hex литералы добавили совсем недавно
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Разница между backup/restore и извлечение всех метаданных и восстановление из скрипта
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]