Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Стоит задача следующего вида: на сервере есть база BASE_A нужно не удаляя ее создать ее копию BASE_B копия нужна для работы в тестовом режиме, что бы не попортить реальные базы. OS: Windows 2003 IDS: 9.40 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 13:41 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Хм, ну самое простое: делаете экспорт базы, а затем импортируете ее на этот же сервер с новым именем базы. Утилиты dbexport и dbimport ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 13:49 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
AndronХм, ну самое простое: делаете экспорт базы, а затем импортируете ее на этот же сервер с новым именем базы. Утилиты dbexport и dbimport dbexport -ss BASE_A > base_a.sql dbimport -c base_a.sql BASE_B Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 14:03 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Середа AndronХм, ну самое простое: делаете экспорт базы, а затем импортируете ее на этот же сервер с новым именем базы. Утилиты dbexport и dbimport dbexport -ss BASE_A > base_a.sql dbimport -c base_a.sql BASE_B Так? нет dbexport <некие параметры RTFM> BASE_A rename BASE_A.exp BASE_B.exp rename BASE_B.exp/BASE_A.sql BASE_B.exp/BASE_B.sql dbimport <некие параметры RTFM> BASE_B ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 14:58 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Танdbexport <некие параметры RTFM> BASE_A rename BASE_A.exp BASE_B.exp rename BASE_B.exp/BASE_A.sql BASE_B.exp/BASE_B.sql dbimport <некие параметры RTFM> BASE_B dbexport -ss BASE_A rename BASE_A.exp BASE_B.exp rename BASE_B.exp/BASE_A.sql BASE_B.exp/BASE_B.sql dbimport -d BASE_B Нужно ли что-то править внутри экспортитуемых файлов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 15:06 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Середа Танdbexport <некие параметры RTFM> BASE_A rename BASE_A.exp BASE_B.exp rename BASE_B.exp/BASE_A.sql BASE_B.exp/BASE_B.sql dbimport <некие параметры RTFM> BASE_B dbexport -ss BASE_A rename BASE_A.exp BASE_B.exp rename BASE_B.exp/BASE_A.sql BASE_B.exp/BASE_B.sql dbimport -d BASE_B Опция -d нужна для указания dbspace, в котором будет создана база. Вы не дочитали СередаНужно ли что-то править внутри экспортитуемых файлов? А вам нужно что-нибудь изменить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 15:26 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Мда, похоже, что даже на такую элементарную операцию нужно таки FAQ написать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2006, 15:32 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisМда, похоже, что даже на такую элементарную операцию нужно таки FAQ написать... А что не так? ...ну под новым именем да и в определенное пространство... А вот то что там внутри синонимов понытакано и их надо руками править (в общем случае надо хотя бы знать что они там есть и убедиться, что они будут создаваться правильно) - вот это кстати можно в FAQ отметить ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2006, 15:01 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
В итоге все кончилось ( или продолжилось? ) следующим образом: 1) Экспорт БД; 2) Правка имени каталога с файлами экспорта; 3) Правка имени файла содержащего схему БД; 4) Коррекция имен синонимов внутри файла схемы БД; 5) Коррекция имен БД используемых в SELECT в процедурах хранимых в данной БД; 6) Коррекция схемы так, что бы большие таблицы стали нулевыми (очень плохое действие... но все же). 7) Импорт БД с включенным журналированием (т.к. некоторые синонимы в импортируемой БД связаны с базами отключить журналирование на которых низззя). 8) Доливка данных в транкейтнутые таблицы. Ужос! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 10:02 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Середа8) Доливка данных в транкейтнутые таблицы. 8.0) Отключение журналирования в импортированной БД; 8.1) Заливка данных в таблицы (где это нужно); 8.2) Включение журналирования БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 10:04 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
СередаВ итоге все кончилось ( или продолжилось? ) следующим образом: 1) Экспорт БД; 2) Правка имени каталога с файлами экспорта; 3) Правка имени файла содержащего схему БД; 4) Вырезание всех объектов, ссылающихся на журналируемые базы, из файла содержащего схему БД; 5) Импорт БД без журналирования 6) Включение журналирования 7) Создание объектов, ссылающихся на журналируемые базы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 10:49 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Вариант конечно... но трудно то что работая в винде парсить трудно :( У меня впереди еще база у которой только схема 24 метра. Там фиг повырезаешь минонимы, и процедуры в которых есть ссылки... легче таблицы вычислить крупноразмерные. ...хотя... короче попал я с этой фигней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 11:05 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
СередаВариант конечно... но трудно то что работая в винде парсить трудно :( У меня впереди еще база у которой только схема 24 метра. Там фиг повырезаешь минонимы, и процедуры в которых есть ссылки... легче таблицы вычислить крупноразмерные. ...хотя... короче попал я с этой фигней. Вы можете вырезать вообще все постронние объекты, оставить только create table, create index, alter table add constraint, update statistics А procedure, view, synonym, trigger создать после импорта. Могут быть связи сложные между объектами, например, использование процедур и вьюх в триггерах, поэтому лучше все сразу вырезать. А таблицы, индексы, констрейнты и статистика от этих связей не зависят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 11:32 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Тан СередаВариант конечно... но трудно то что работая в винде парсить трудно :( У меня впереди еще база у которой только схема 24 метра. Там фиг повырезаешь минонимы, и процедуры в которых есть ссылки... легче таблицы вычислить крупноразмерные. ...хотя... короче попал я с этой фигней. Вы можете вырезать вообще все постронние объекты, оставить только create table, create index, alter table add constraint, update statistics А procedure, view, synonym, trigger создать после импорта. Могут быть связи сложные между объектами, например, использование процедур и вьюх в триггерах, поэтому лучше все сразу вырезать. А таблицы, индексы, констрейнты и статистика от этих связей не зависят. Вариант хороший, но у меня где-то проблема. dbimport отлично все грузит, а вот SqlEditor ругается на синтаксис в процедурах. Так что я не знаю как потом загрузить "остаток". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 12:00 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
На первой же процедуре валится? Попробуй добавить или убрать ; после END PROCEDURE Сталкивался с такой фигнёй. Возможно также, что файл слишком большой получился - не знаю, не пользовался SQLEditor. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:05 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
СередаВариант хороший, но у меня где-то проблема. dbimport отлично все грузит, а вот SqlEditor ругается на синтаксис в процедурах. Так что я не знаю как потом загрузить "остаток". dbaccess можно применить. А как ругается SqlEditor, какая ошибка, в каком месте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:10 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
zenkПопробуй добавить или убрать ; после END PROCEDURE Верно - на первой же. И там есть такая запись END PROCEDURE и еще там что- то типа надвания документа. У меня и так много вопросов к данной операции - убирать что-то из схемы рисковать не хочу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:13 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Середа zenkПопробуй добавить или убрать ; после END PROCEDURE Верно - на первой же. И там есть такая запись END PROCEDURE и еще там что- то типа надвания документа. У меня и так много вопросов к данной операции - убирать что-то из схемы рисковать не хочу. а у вас какая версия SqlEditor? Я всегда после срыва dbimport скрипты им догружаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:15 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Тан СередаВариант хороший, но у меня где-то проблема. dbimport отлично все грузит, а вот SqlEditor ругается на синтаксис в процедурах. Так что я не знаю как потом загрузить "остаток". dbaccess можно применить. А как ругается SqlEditor, какая ошибка, в каком месте? Выделяет точку с запятой в конце синтаксической конструкции. Я вчера с этим ковырялся, а с тех поре еще много я чем - подробности не могу вспомнить :(. Но у меня сложилось впечатление, что несмотря на то что везде все настроено (локали) SqlEditor запинается на символе\символах из "не той" локали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:18 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
ТанВы можете вырезать вообще все постронние объекты, оставить только create table, create index, alter table add constraint, update statistics А procedure, view, synonym, trigger создать после импорта. Могут быть связи сложные между объектами, например, использование процедур и вьюх в триггерах, поэтому лучше все сразу вырезать. А таблицы, индексы, констрейнты и статистика от этих связей не зависят. +1 и мой respect Тан :) Ещё могу добавить во избежание проблем с нехваткой места (не хватит при загрузке или после загрузки останется мало :): В некоторых случаях стоит исправить EXTENT SIZE и NEXT SIZE для таблиц: 1) если, как было упомянуто нет нужды загружать данные во все таблицы, а особенно в большие 2) потому что на "рабочей" БД запас SIZE больше, чем это может понадобиться на "тестовой". 3) (OFFTOP: при загрузке на другую операционку с большим размером страниц) - IDS просто откажется принимать размеры SIZE, меньше 4 * PAGE SIZE... П.С.: (OFFTOP: при загрузке на ДРУГОЙ сервер) - исправить возможно упоминающиеся названия dbspace, в которых хранились индексы и фрагменты таблиц... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2006, 13:20 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
А почему не обсуждается onuload/onload? По-моему, очень даже - и быстро, и таблицы дефрагментируются заодно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2006, 14:32 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Попытавшись объединить обсуждавшиеся вопросы и используя личный опыт попытался написать FAQ, который превратился в небольшую статью :) Она, конечно, немного больше вопроса переименования и создания копии БД, тем не менее, надеюсь, будет интересна всем, кто с такими проблемами изредка (или, к сожалению, часто) сталкивается. Читайте, обсуждайте, предлагайте, критикуйте... Как создать копию БД с новым именем? Как выгрузить базу утилитой dbexport и загрузить с новым именем утилитой dbimport? http://www.sql.ru/faq/faq_topic.aspx?fid=710 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2006, 17:21 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
На днях наблюдал любопытную ситуацию при загрузке БД dbimport-ом на 4-х процессорный сервак с рейдом. Три достаточно больших таблички при загрузке очень сильно отличались по времени, хотя их структура была почти одинаковой, за исключением одной детали (о ней ниже). Итак, таблицы: 1. назовем ее table1 для простоты, ее размер в выгруженном виде 900М и 8,5 мил.строк грузится 10-15 минут. 2. table2 - ее размер в выгруженном виде 420М и почти 16 мил.строк грузится 15-20 минут (она чуть уже) 3. table3 - ее размер в выгруженном виде всего 200М и 4,5 мил.строк грузится, внимание, 500 минут, т.е. более 8 часов. На этой таблице срывали загрузку несколько раз, т.к. не могли понять такого замедления. Потом начали исследовать. Выключили первичные ключи, т.е. никаких индексов уже не строится (хотя для первых двух таблиц они, практически, и не мешали), нет логирования, установили большие размеры экстентов (первичные и вторичные). Единственное замеченное существенное отличие было в одном поле table3 - оно типа byte и направлено в blobspace. Казалось бы, вот оно - главная причина такого замедления, но, самое смешное, что НИ ОДНОГО блоба в таблицу не грузится, это поле просто забыли выкинуть, как обычно, из старого дизайна. Смена конкретного blobspace на tablespace ничего не дала. Т.о. получается (а других идей у меня пока нет), что при создании ссылок на блоб-ы, которых то и нет на самом деле, идет жуткое торможение (как минимум на порядок) загрузки данных в таблицу. Проверить загрузку той же таблицы без блоба я не смог - и так потеряли пару дней, да и софт надо проверить, как он без него будет обходится... Какие у кого еще идеи ? Может, кто то сталкивался с похожими симптомами или грузил такие табблицы с пустыми блобами ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 15:03 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisТ.о. получается (а других идей у меня пока нет), что при создании ссылок на блоб-ы, которых то и нет на самом деле, идет жуткое торможение (как минимум на порядок) загрузки данных в таблицу. Проверить загрузку той же таблицы без блоба я не смог - и так потеряли пару дней, да и софт надо проверить, как он без него будет обходится... Какие у кого еще идеи ? Может, кто то сталкивался с похожими симптомами или грузил такие табблицы с пустыми блобами ? А с какой скоростью логические журналы при этом заполнялись? Они реально копировались или фиктивно? Сколько места оказалось занято в blobspace (по onstat -d update)? И что там вставлялось в столбец? Просто || в .unl-файле? Хочу проверить идею, что по странице (4Кб) на каждое значение блоба таки выделялось... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 15:15 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisПопытавшись объединить обсуждавшиеся вопросы и используя личный опыт попытался написать FAQ, который превратился в небольшую статью :) Она, конечно, немного больше вопроса переименования и создания копии БД, тем не менее, надеюсь, будет интересна всем, кто с такими проблемами изредка (или, к сожалению, часто) сталкивается. Читайте, обсуждайте, предлагайте, критикуйте... Как создать копию БД с новым именем? Как выгрузить базу утилитой dbexport и загрузить с новым именем утилитой dbimport? http://www.sql.ru/faq/faq_topic.aspx?fid=710 А что, никто так и не почитал ? Вряд ли там совсем нет ошибок или неточностей :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 15:16 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Чемберлен vasilisТ.о. получается (а других идей у меня пока нет), что при создании ссылок на блоб-ы, которых то и нет на самом деле, идет жуткое торможение (как минимум на порядок) загрузки данных в таблицу. Проверить загрузку той же таблицы без блоба я не смог - и так потеряли пару дней, да и софт надо проверить, как он без него будет обходится... Какие у кого еще идеи ? Может, кто то сталкивался с похожими симптомами или грузил такие табблицы с пустыми блобами ? А с какой скоростью логические журналы при этом заполнялись? Они реально копировались или фиктивно? Сколько места оказалось занято в blobspace (по onstat -d update)? Так как загрузка шла dbexport то, естественно, логирования на базе не было. В любом случае, все лог.журналы идут "в сад", т.е. nul. В последнем варианте, где я замерил время загрузки, блобы уже грузились в собственное табличное пространство, а не в блобспейс. Вот размеры занятого табличного пространства, но надо учитывать, что в таблицу продолжается загрузка и сейчас там уже 11 576 261 строка и размер строки (rowsize из tabinfo) =157 байт. Код: plaintext 1. Хочу проверить идею, что по странице (4Кб) на каждое значение блоба таки выделялось... Просто || в .unl-файле. У меня была такая мысль, но, вроде, не подтверждается, т.к. только на эти пустые зарезервированные страницы ушло бы 11 милл.страниц, а их всего там 350 тыс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 16:48 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
А что показывает статистика по пространствам: onstat -D и onstat -g iof onstat -g iov Понятно, что целиком страницы может и не меняются, но могут резервироваться отдельно, что может сильно нагружать логические журналы (независимо от режима журнализации базы)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:15 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
ЧемберленА что показывает статистика по пространствам: onstat -D и onstat -g iof onstat -g iov Понятно, что целиком страницы может и не меняются, но могут резервироваться отдельно, что может сильно нагружать логические журналы (независимо от режима журнализации базы)... Та статистика (для конкретного случая) уже "канула в лету". А вот о нагрузке на логи мысль интересная. Надо бы помоделировать, да где же это время взять... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2006, 17:40 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilis vasilisПопытавшись объединить обсуждавшиеся вопросы и используя личный опыт попытался написать FAQ, который превратился в небольшую статью :) Она, конечно, немного больше вопроса переименования и создания копии БД, тем не менее, надеюсь, будет интересна всем, кто с такими проблемами изредка (или, к сожалению, часто) сталкивается. Читайте, обсуждайте, предлагайте, критикуйте... Как создать копию БД с новым именем? Как выгрузить базу утилитой dbexport и загрузить с новым именем утилитой dbimport? http://www.sql.ru/faq/faq_topic.aspx?fid=710 А что, никто так и не почитал ? Вряд ли там совсем нет ошибок или неточностей :) Читал, поставил высокую оценку. Раньше бы попалась - была бы очень познавательной :) Кое-что выходит за пределы моего опыта, поэтому не могу ни покритиковать ни дополнить. Есть что добавить по поводу глюков dbexport/dbimport, но эти сведения выходят за рамки указанной темы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2006, 18:44 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisНа днях наблюдал любопытную ситуацию при загрузке БД dbimport-ом на 4-х процессорный сервак с рейдом. .... dbimport? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2006, 09:03 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
А может я и ошибся. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2006, 09:44 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2006, 08:39 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Журавлев ДенисЭто точно dbimport. Проверил на 5 млн, 6 мин. dbimport -- 1 мин load. А проверь теперь простую таблицу того же размера, но без Блоба. Я подозреваю, что время будет примерно таким же. Т.е. меня не интересует разница между dbimport и load. Интересует - есть ли разница в работе dbimport при загрузке таблиц с блобами и без них, т.к. в моем случае эта разница была просто огромной (хотя, возможно, причина и в другом...). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2006, 15:19 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilis Журавлев ДенисЭто точно dbimport. Проверил на 5 млн, 6 мин. dbimport -- 1 мин load. А проверь теперь простую таблицу того же размера, но без Блоба. Я менял прямо в .sql от экспорта byte на integer, время сокращалось (в шесть раз) до нормального -- 1 мин. Баг виндового dbimport -- зуб даю. Сегодня с утра подумал -- а может гипертрейдинг? А сейчас понял какой нафиг гипертрейдинг -- у меня-ж amd64. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2006, 15:24 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
Журавлев ДенисЯ менял прямо в .sql от экспорта byte на integer, время сокращалось (в шесть раз) до нормального -- 1 мин. О-о, вот это уже интереснее. Но все же разница (в шесть раз) не такая уж и значительная. Я могу ее хоть как то объяснить. Но в моем случае, эта разница просто огромная (15 минут и 8 часов)... Журавлев ДенисБаг виндового dbimport -- зуб даю. Очень на это похоже, тем более, что и версия IDS довольно старая (9.30.ТС2), да и глюков в этой версии тоже прилично... Спасибо за помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2006, 22:08 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisО-о, вот это уже интереснее. Но все же разница (в шесть раз) не такая уж и значительная. Я могу ее хоть как то объяснить. Но в моем случае, эта разница просто огромная (15 минут и 8 часов)... Всего-то в 32 раза ;), я думаю разница зависит от железа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 10:43 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛойП.С.: (OFFTOP: при загрузке на ДРУГОЙ сервер) - исправить возможно упоминающиеся названия dbspace, в которых хранились индексы и фрагменты таблиц... Раз пошла такая пьянка - неплохо бы поправить в FAQ Как создать копию БД с новым именем? следующим образом: вместо авторнужно исправить, возможно упоминающиеся, названия dbspace, в которых хранились индексы и фрагменты таблиц на АнатоЛойнужно заменить возможно упоминающиеся названия отсутствующих dbspace, в которых хранились индексы и фрагменты таблиц, на названия существующих dbspace. Удалять такие названия не рекомендуется, поскольку: индексы, существовавшие как detached, после удаления ссылки на dbspace будут создаваться как attached, что может привести к ошибке "-212 Cannot add index. -142 ISAM error: overflow of tblspace page" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2006, 05:54 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
А почему "заменить" лучше, чем "исправить" ? Тем, что "исправить" может подразумевать "удалить" упоминание ДБ-пространства ? А если у него все таки других пространств нет - мы ведь говорим о случае, когда надо создать копию для тестирования да еще и на другом сервере, возможно уменьшенную. А на ошибку "142 ISAM error: overflow of tblspace page" я никогда не наталкивался. Это что, часто бывает ? Короче, если настаиваешь на исправлении данного FAQ, то я исправлю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 13:24 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilisА почему "заменить" лучше, чем "исправить" ? Тем, что "исправить" может подразумевать "удалить" упоминание ДБ-пространства ? Да, именно это я и имел ввиду vasilisА если у него все таки других пространств нет - мы ведь говорим о случае, когда надо создать копию для тестирования да еще и на другом сервере, возможно уменьшенную. Других пространств возможно и нет - но раз пространство было ЯВНО прописано в старой схеме - лучше ЯВНО написать имя хотя бы того же пространства, в которое грузится БД (оно же есть - значит есть что написать :). Это приведёт к созданию detached индекса и позволит избежать пресловутой -142. Кстати, такое создание в большей степени воспроизведёт "похожесть" БД :) vasilis А на ошибку "142 ISAM error: overflow of tblspace page" я никогда не наталкивался. Это что, часто бывает? Для меня - часто :) Пример, где бывает: поля: около 50 integer , пару DATE, пару DATETIME, 8 FLOAT 2 млн. записей, EXTENT SIZE 1500000 NEXT SIZE 100000, около 80 индексов: 30 по одному полю, 2 по двум, 16 по трём и 24 по 4-ём... vasilis Короче, если настаиваешь на исправлении данного FAQ, то я исправлю :) Хм... Да честно говоря, даже интересно стало...Ау, неужто никто больше не натыкался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 23:46 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛой Хм... Да честно говоря, даже интересно стало...Ау, неужто никто больше не натыкался? ну почему же сразу - никто?! я вот, к примеру, не натыкался... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 16:14 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛойДругих пространств возможно и нет - но раз пространство было ЯВНО прописано в старой схеме - лучше ЯВНО написать имя хотя бы того же пространства, в которое грузится БД (оно же есть - значит есть что написать :). Это приведёт к созданию detached индекса detached индексы создаются по умолчанию во всех версиях, начиная с 9.3 (если не ошибаюсь). Неужели ваше замечание актуально и для этих версий ? АнатоЛой поля: около 50 integer , пару DATE, пару DATETIME, 8 FLOAT около 80 индексов: 30 по одному полю, 2 по двум, 16 по трём и 24 по 4-ём... Мда, а я то ругал наших проектировщиков и девелоперов :)) Такого я даже на наших монстровидных структурах с серверами приложений и объектным хранилищем не видел... И большая часть индексов автоматические, из справочников ? Это с какой же скоростью вставляются записи в такую табличку ? АнатоЛой vasilis Короче, если настаиваешь на исправлении данного FAQ, то я исправлю :) Хм... Да честно говоря, даже интересно стало...Ау, неужто никто больше не натыкался? Пока молчат... Значит, пока не исправляю. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 13:20 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilis АнатоЛойДругих пространств возможно и нет - но раз пространство было ЯВНО прописано в старой схеме - лучше ЯВНО написать имя хотя бы того же пространства, в которое грузится БД (оно же есть - значит есть что написать :). Это приведёт к созданию detached индекса detached индексы создаются по умолчанию во всех версиях, начиная с 9.3 (если не ошибаюсь). Неужели ваше замечание актуально и для этих версий ? Виноват. Каюсь. Речь шла, конечно же, об IDS 7.31 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2006, 18:23 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛой поля: около 50 integer , пару DATE, пару DATETIME, 8 FLOAT около 80 индексов: 30 по одному полю, 2 по двум, 16 по трём и 24 по 4-ём... vasilis Мда, а я то ругал наших проектировщиков и девелоперов :)) Это отдельная тема для разговора... Но ведь мы предлагаем советы для ВСЕХ, а не только для админов отруганных, внявших и исправившихся разработчиков?! :) vasilis Такого я даже на наших монстровидных структурах с серверами приложений и объектным хранилищем не видел... Тю... Может я чего не понимаю, но это типичная схема с таблицей фактов (типа "звезда" :), даже в доке по информиксу такое упоминается)... Хотя если вопрос не к таблице, а к индексам: буду только рад высказанным советам (а я ведь ещё ничего и не спрашивал :( :) ) vasilis И большая часть индексов автоматические, из справочников? Таки да (см.выше) - "звезда"... vasilis Это с какой же скоростью вставляются записи в такую табличку ? Штук 70 в сек... Средняя ("по больнице":) требуемая скорость вставки (исходя из объёмов):1 запись в 2 сек... Т.е., может и на пределе - надо замыслиться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2006, 19:00 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛой Тю... Может я чего не понимаю, но это типичная схема с таблицей фактов (типа "звезда" :), даже в доке по информиксу такое упоминается)... Хотя если вопрос не к таблице, а к индексам: буду только рад высказанным советам (а я ведь ещё ничего и не спрашивал :( :) ) Если на таблице построены индексы create index ..... on table (filed1); create index ..... on table (field1,field5); create index ..... on table (field1,field5,field28); можно смело отказаться всех кроме последнего. Он полностью их заменит. Порядок полей в индексе имеет большое значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2006, 20:48 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
onstat- Если на таблице построены индексы create index ..... on table (filed1); create index ..... on table (field1,field5); create index ..... on table (field1,field5,field28); можно смело отказаться всех кроме последнего. Он полностью их заменит. Порядок полей в индексе имеет большое значение. Это я понимаю... Также, насколько я понимаю, советом воспользоваться можно наполовину, поскольку АнатоЛой vasilis И большая часть индексов автоматические, из справочников? Таки да (см.выше) - "звезда"... и нет возможности отказаться от Код: plaintext который построен для поддержки внешнего ключа, поскольку полученный эффект не стоит эффекта от удаления самого внешнего ключа... :) :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2006, 11:27 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛойМожет я чего не понимаю, но это типичная схема с таблицей фактов (типа "звезда" :), даже в доке по информиксу такое упоминается)... vasilis Это с какой же скоростью вставляются записи в такую табличку ? Штук 70 в сек... Средняя ("по больнице":) требуемая скорость вставки (исходя из объёмов):1 запись в 2 сек... Т.е., может и на пределе - надо замыслиться :) Учти, что скорость будет падать нелинейно (в зависимости от кол-ва строк). И вот когда она станет совсем плохой вы сначала будете усиливать железо, а уже потом задумаетесь о той самой "типичной схеме" ? В хранилищах данных (OLAP, DSS) уже свои правила и типичные приемы работы и массовые индексы там больше мешают. И часто делается ДЕнормализация... И таблица может делиться по ширине на часто и редко используемые данные... Разве вы, кроме вставки, больше ничего с этими данными не делаете ? И вот для того, чтобы взять пару столбцов для обработки вы вынуждены тянуть с дисков всю длину строки... А апдейт строки сколько будет менять в многочисленных индексах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2006, 14:53 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
АнатоЛой onstat- Если на таблице построены индексы create index ..... on table (filed1); create index ..... on table (field1,field5); create index ..... on table (field1,field5,field28); можно смело отказаться всех кроме последнего. Он полностью их заменит. Это я понимаю... Также, насколько я понимаю, советом воспользоваться можно наполовину, поскольку ...нет возможности отказаться от .... который построен для поддержки внешнего ключа Если такие автоиндексы все же есть (как указал onstat-), то можно уменьшить их число - просто сначала надо самому (вручную) создать такой составной индекс, а уже потом включить связные ограничения. Сервер достаточно умный, чтобы определить, что нужный индекс для реализации внешнего ключа уже есть и строить новый нет необходимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2006, 14:58 |
|
||
|
Как можно создать копии баз на одном сервере?
|
|||
|---|---|---|---|
|
#18+
vasilis АнатоЛой onstat- Если на таблице построены индексы create index ..... on table (filed1); create index ..... on table (field1,field5); create index ..... on table (field1,field5,field28); можно смело отказаться всех кроме последнего. Он полностью их заменит. Это я понимаю... Также, насколько я понимаю, советом воспользоваться можно наполовину, поскольку ...нет возможности отказаться от .... который построен для поддержки внешнего ключа Если такие автоиндексы все же есть (как указал onstat-), то можно уменьшить их число - просто сначала надо самому (вручную) создать такой составной индекс, а уже потом включить связные ограничения. Сервер достаточно умный, чтобы определить, что нужный индекс для реализации внешнего ключа уже есть и строить новый нет необходимости. onstat- говорил о том, что можно отказаться от create index ..... on table (filed1); , я же говорю, что если я хочу сохранить констрейнт (а я хочу, и думаю никто не будет спорить, что не стоит удалять констрейнт), то избавиться от индекса не получиться, хоть я его сам создам до наложения констрейнта, хоть это сделает информикс автоматически при создании констрейнта... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2006, 17:41 |
|
||
|
|

start [/forum/topic.php?all=1&fid=44&tid=1608558]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 414ms |

| 0 / 0 |
