|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Доброго всем. Есть информикс 11.50. На нем базы. Каждую ночь dbexport делает бэкапы. Последнее время бэкапы не создаются из-за ошибки автор*** glibc detected *** dbexport: double free or corruption (!prev): 0x081c8278 *** Встал вопрос, как выгрузить базы, чтоб хотя бы перенести их на другой сервер. Поскольку я на АБД, и всего не знаю расскажите пожалуйста как правильно работать с onunload и onload. Прежде всего меня интересуют вопросы как они выгружают. Если база порядка 3ГБ то выгрузка на ленту займет тоже столько же? Какая последовательность команд выгрузки-загрузки, это тоже интересует. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 11:34 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий Белик, Бэкапы правильно делать через ontape. Утилита предельно простая и надежная. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 13:52 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий Белик, Смотри здесь - http://www-01.ibm.com/support/knowledgecenter/SSGU8G_11.50.0/com.ibm.mig.doc/mig.htm или Chapter 13. The onunload and onload utilities - http://cursor-distribution.de/aktuell/documentation/ids_mig_bookmap.pdf Некоторые полезные утилиты и скрипты - http://www.iiug.org/software/index_DBA.html С уважанием, Вадим. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 14:21 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
авторБэкапы правильно делать через ontape. Политикой предприятия предписано через dbexport, это не моя прихоть. везде ленты в nul выставлены, так что увы... авторGVF112GVF Ага, спс. Полезная литературка. Уже читаю, но все же задам вопрос: Насчет размера выгрузки, я парвильно понимаю что будет выгружено столько же сколько весит размер чанков, отделенных под БД или это неверное понимание? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 14:40 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий Белик, Если используются - onunload and onload, тогда будут выгружаться/загружаться занятые стрницы для объектов базы данных в чанках. Это если кратко. С уважением, Вадим. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 16:50 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий Белик, Если политика священная корова, то зачем про onunload спрашивать? ontape может легко писать данные в файл и читать так же. Каждый сам кузнец своего счастья. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 17:36 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
авторЕсли используются - onunload and onload, тогда будут выгружаться/загружаться занятые стрницы для объектов базы данных в чанках. Это если кратко. Соответственно размеры выгруженного мне придется учитывать по другому чем с dbexport... В принципе ясно, спс. авторЕсли политика священная корова, то зачем про onunload спрашивать? Я же сказал - я не АБД. Я не в курсе как по феншую делать бэкапы в информиксе. Из того что я знаю - dbexport, не более. Про эти техники спросил потому что прочитал о них в интернете и книгах. авторontape может легко писать данные в файл и читать так же. Хорошо. Те же вопросы: Как это правильно сделать, и каков будет размер записанного? авторКаждый сам кузнец своего счастья. Еще раз акцентирую: Это разовая работа. Необходимо выдернуть информацию из "приболевшей" базы, не более. В данном случае я рассматриваю любые средства, а не только какие-то, которые нравятся тем или иным крутым перцам. Если у тебя появилось желание ткнуть меня в плинтус, то хотя бы делай это ссылкой на литературу. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2014, 20:16 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
А вот сердиться-то зачем? Документацию читать все равно придется, а про плинтус и перцев ты сам придумал. Для для архивации через ontape надо в onconfig в TAPEDEV указать реальный файл с правами на запись для informix. И перезапустить информикс. Размер файла будет равен сумме всех данных и индексов в бинарном виде. Но для восстановления на целевом сервере надо иметь такое-же дб-пространства, как и на исходном. onload/onunload не самые простые утилиты и нужны для быстрой загрузки больших объемов. При объеме базы в три гига проще выгрузить данные через dbaccess. Выгрузка - "Unload to file_name select * from tab_name". Загрузка - "load from file_name insert into tab_name". Загружать лучше с отключенным журналированием, чтобы не нарваться на длинную транзакцию. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2014, 11:34 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
cprЗагружать лучше с отключенным журналированием, чтобы не нарваться на длинную транзакцию. или использовать утилиту dbload, которая делает commit через заданное количество записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2014, 13:12 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
авторonload/onunload не самые простые утилиты и нужны для быстрой загрузки больших объемов. А чем именно они сложны? Так то я их попробовал на маленькой БД у себя на тестовом, все выгрузилось и обратно загрузилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2014, 13:24 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий Белик, Насколько я знаю Для onunload/onload важно, чтобы версии informix были одинаковы на обоих серверах. onunload/onload может работать с одной БД, а ontape умеет - только со всем содержимым сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2014, 19:28 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
cprДля для архивации через ontape надо в onconfig в TAPEDEV указать реальный файл с правами на запись для informix. Если запускать ontape с ключом "-t" - onconfig править не обязательно. Можно выдать архив в том числе и на стандартный вывод... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2014, 20:56 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Leonid Belov, Я пока еще на 7.31 сижу, поэтому к новым фичам еще не привык. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2014, 12:08 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
ollegВиталий Белик, Насколько я знаю Для onunload/onload важно, чтобы версии informix были одинаковы на обоих серверах. onunload/onload может работать с одной БД, а ontape умеет - только со всем содержимым сервера\ ontape может работать с отдельной базой, а onunload может работать с отдельной таблицей. И для onunlod должна совпадать не только версия Informix, но и платформа. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2014, 12:11 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
авторЕсли запускать ontape с ключом "-t" - onconfig править не обязательно. О! Это важно. Спасибо. авторontape может работать с отдельной базой, а onunload может работать с отдельной таблицей. И для onunlod должна совпадать не только версия Informix, но и платформа. Понял. С версиями не проблема, а вот АБД наши сказали что onunload не сохраняет структуру БД. мол нужно еще с dbschemа работать... Пока что остановился на ontape, попробую с его помошью выцедить данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2014, 12:18 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий БеликА вот АБД наши сказали что onunload не сохраняет структуру БД. мол нужно еще с dbschemа работать... Неправда. onunload структуру сохраняет. dbschemа для нее не нужна. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2014, 12:40 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
cprollegВиталий Белик, Насколько я знаю Для onunload/onload важно, чтобы версии informix были одинаковы на обоих серверах. onunload/onload может работать с одной БД, а ontape умеет - только со всем содержимым сервера ontape может работать с отдельной базой. Приведите пример команды ontape, выгружающую базу(database) my_base1 в архив и пример команды ontape, восстанавливающую базу(database) my_base1 из этого архива. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.12.2014, 12:54 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
olleg, сорри, промахнулся слегка восстановить можно ДБ-пространство ontape -r -D dbspace_name и в общем случае это не одно и тоже конечно. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2014, 12:18 |
|
onunload\onload Как они работают?
|
|||
---|---|---|---|
#18+
Виталий БеликЯ же сказал - я не АБД. Я не в курсе как по феншую делать бэкапы в информиксе. Из того что я знаю - dbexport, не более. Про эти техники спросил потому что прочитал о них в интернете и книгах. Код: plaintext
Вроде все просто. Но... 1. Если есть привязка таблиц к конкретному DBSPace, например, фрагментированная, то нужно ключ -ss использовать 2. Используя -ss ключ автоматом привязываешься к структуре имен DBSpace. Как только включается п.2 - действительно проще ontape. Исключение - надо перенести на другую платформу или версию. Затем dbexport порождает dbimport для загрузки. Не зная структуры БД сложно сказать, исполнение влоб dbimport <database> принесет ли тебе желаемый результат, т.е. возможны выпадения. Может в новых версиях это не принципиально, но вот в 7-й из-за структуры БД приходилось потом database/database.sql править и делать загрузку по принципу: У 7-ки структура выгрузки такая: авторGRANT CONNECT CREATE ROLE GRANT <rolename> ON <username> CREATE TABLE ALTER TABLE GRANT [select|update|insert|delete] for table CREATE SYNONYM CREATE PROCEDURE GRANT EXECUTE (duble space between 'T' and 'E') CREATE VIEW GRANT [select|update|insert|delete] for views CREATE TRIGGER UPDATE STATISTICS Чтоб гарантированно загрузиться на некоторых типах БД надо вначале порезать данный файл на этапы: 1. Загрузка прав к БД и таблиц, а так же индексов и констрейнотов + права на таблицы. По-хорошему этот пункт разделить на три надо еще: загрузка таблиц, а затем уже строить индексы и после констренты таблиц. 2. Построить синонимы, на них могут быть ссылки из процедур 3. Построить представления (VIEWS), на них могут быть ссылки из процедур, и именно поэтому может не пойти в лоб dbimport 4. Построить процедуры 5. Построить триггеры 6. UPDATE STATISTICS, которое лучше всего выполнить отдельно собранным способом, по полям таблиц. Ну и времени это все требует достаточно большего на операцию dbimport, там пока индексы выстроятся да констрейнты... IMHO, через ontape много быстрее будет. Плюс при использовании r-commands можно вообще ленту расшарить на несколько серверов для восстановления, ну или NFS и через файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2014, 17:59 |
|
|
start [/forum/topic.php?fid=44&msg=38839722&tid=1606904]: |
0ms |
get settings: |
17ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
23ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
394ms |
get tp. blocked users: |
1ms |
others: | 28ms |
total: | 478ms |
0 / 0 |