Этот баннер — требование Роскомнадзора для исполнения 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 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=34037820&tid=1608558]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 331ms |

| 0 / 0 |
