![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Необходимо синхронизировать 2 базы Oracle.
В принципе наверное это можно сделать вручную, однако зачем изобретать велосипед. Какие средства репликации предлагает Oracle? Есть ли у кого ссылки на литературу по этой теме? |
|||
|
||||
Sqlninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 353 Регистрация: 15.5.2006 Где: San Francisco, CA Репутация: 13 Всего: 13 |
Изобретать велосипед точно незачем. Oracle предлагает Oracle Advanced Replication и Oracle Streams (рекомендую первое). Тема достаточно обширная, поэтому рассказывать основы здесь будет нецелесообразно. Более подробной и полной информации чем в родной доке не встречал. По ней все и делал. Будут конкретные вопросы - welcome.
-------------------- It's better to burn out than to fade away. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
А на русском чего нибудь нет?
|
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Возможно описание репликации есть в переводных книгах по Oracle. Плюс есть переводная документация от RdTex.
Но лучше забыть про русский, и читать английские доки: дешевле, проще, актуальней. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Немного почитал каких то обрывочных сведений.
Поправьте если не прав: Существует возможность создавать так называемые материализованные представления, т.е. снимки определенных наборов данных, причем эти снимки будут автоматически обновляться при изменении исходных данных. Таким образом достигается синхронизация между мастер таблицей и снимком. Не могу понять если есть 2 базы, то получается, что мастер таблица должна быть в одной, а сам снимок в другой, так что ли. Не пойму алгоритм, с чего начать. Как делать снимок вроде ясно, но как его дальше использовать? |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Не обязательно, можеть быть синхронизация между несколькими мастер таблицами. Но эти таблицы должны юыть полностью одинаковыми.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Не могу понять если нужно синхронизировать 2 базы, то получается, что мастер таблица должна быть в одной, а сам снимок в другой, так что ли?
|
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
из базы А в базу Б делается репликация. в базе А есть таблица АХ.
в базе А есть материализованная втюха(снимок) АХМ который содержет данные из таблицы АХ (select * from AX). из базы Б нужно обратиться к мат. вьюхи AXM(select * from AXM) которая находится в базе А и перелить(долить) данные в таблицу БХ базы Б. Это сообщение отредактировал(а) DimW - 9.7.2007, 08:33 |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Можно создать две мастер таблицы в разных базах и синхронизировать их между собой. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Petro123 |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
А что нельзя, так чтобы Снимок был в базе Б, тогда бы и доливать не надо
Вот вот, нельзя ли поподробнее. Как из одной базы обратиться к другой. Вроде как нужно создать связь между базами, затем обращаться через эту связь, если можно опишите подробнее или дайте ссылку, пожалуйста
То есть опять нужно реплицировать снимок в базе А (он ведь идентичен мастер таблице из А ) в таблицу в базе Б, опять тоже самое - не вижу смысла так делать, или я чего-то не догоняю... |
||||||
|
|||||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Ок, особенно меня интересует как делать запросы к таблицам,кот нах-ся в разных базах
Это сообщение отредактировал(а) Petro123 - 10.7.2007, 14:04 |
|||
|
||||
DimW |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
для начала нужно создать db link(более подробную инфу смотри в оракловой доке):
его создаешь в базе из которой будешь выполнять селекты. допустем в базе db_name есть таблица table_name. селект пишешь к ней так:
на основе этого селеста можешь построить материализованное представление которое будет синхранезировано с таблицей table_name. |
||||||
|
|||||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Связь создал...
Далее пытаюсь из базы 1 обратиться к базе 2, сообщение: TNS: Невозможно разрешить имя службы Вроде в TNS обе базы прописаны, в чем может быть проблема? Добавлено через 6 минут и 51 секунду Вопрос снимается, нашел ошибку, спасибо Добавлено через 7 минут и 5 секунд Вопрос снимается, нашел ошибку, спасибо Добавлено через 11 минут и 54 секунды Еще вопрос: Попытался создать снимок получил сообщение Таблица Table не имеет протокола снимка Что это значит? |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Извиняюсь снова забыл в первой базе создать журнал ...
|
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Возник еще вопрос:
Обновление происходит с какой то периодичностью Как сделать чтобы обновление снимка происходило в определенное время или по желанию (при запуске какой-нибудь процедуры) |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Еще вопросик:
как сделать чтобы снимок обновлялся в определенное время или вообще по желанию пользователя из процедуры? Да и чем отличается снимок от мат представления и что лучше использовать? |
|||
|
||||
DimW |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
в более ранних версиях оракла был снимок, кажется с 9-й или последних 8-х вырсии стал мат. представлением.
из процедуры что то вроди: sbms_snapshort.refrash('mv_name'); в определенное время: выше сказанное пихаешь в джобу. при изменениях в таблице: устанавливается при создании мат. вьюхи. если не разберешься топиши, завтра смогу сказать поточнее. |
||||
|
|||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Попробовал
Execute DBMS_Mview.Refresh(View); - ошибка ORA-01041: внутренняя ошибка. hostdef расширение не существует Что за ошибка? |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Судя по тому, что пишет народ - енто баг. Иногда помогает переустановка.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Еще на опцию On Commit ругается, типа отсутствует ключевое слово. Почему?
|
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
наверное потому что опция пишется так: REFRESH ON COMMIT.
и водще выложи ddl мат. вьюхи. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
CREATE SNAPSHOT smcard
Build Deferred Refresh On Commit as SELECT * FROM supermag.smcard@essen01 ругается типа нельзя установить атрибут регенерации On Commit для мат представления. И еще как сделать чтобы снимок обновлялся скажем каждый день, например, в 8:00 |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Когда пытаюсь сделать снимки на таблицы, содержащие большое количество строк Oracle ругается,
что ...невозможно увеличить временный сегмент до в разделе... Что за ошибка |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
Нехватает места в табличном пространстве, которое используется для временного сегмента. Увелич его, или сделай авторасширяемым.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
Petro123, саветую тебе найти эту книгу http://forum.ru-board.com/topic.cgi?forum=...ic=0002&glp там подробно написано какие настройки нужно сделать для того что бы работали мат. представления. у меня есть в электронном виде на русском языке, если примешь 10 метров то могу кинуть.
тебе нужно юзать пакет dbms_job, в этом форуме не однократно эта тема поднималась, инфы навалом. Добавлено через 2 минуты и 2 секунды вот: http://forum.vingrad.ru/forum/topic-142949..._job/index.html Добавлено через 3 минуты и 10 секунд http://forum.vingrad.ru/forum/topic-120867..._job/index.html Добавлено через 4 минуты и 13 секунд http://forum.vingrad.ru/forum/topic-116234..._job/index.html |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Спасибо за ссылки
Двухтомник Тома Кайта у меня есть, спасибо Добавлено через 1 минуту и 32 секунды
Как? Табл пространство делал так create tablespace my_tablespace datafile 'D:\...\Sasha.DAT' size 10000M REUSE AUTOEXTEND ON NEXT 2M MAXSIZE UNLIMITED Что нужно добавить? |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
MAXSIZE UNLIMITED разве не то
|
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 18 Всего: 538 |
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Простите, не совсем понял, поясните пожалуйста поподробнее |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Как увеличить максимальное число экстентов во временном сегменте раздела?????
|
|||
|
||||
DimW |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
у оракла есть ряд тайбелспайсов которые он использует по умолчанию: system, users, index, temp и т.д. так вот он и просит увеличить пространство во временном TS - temp, если конечно ты или кто то не переопределил его на другой. Добавлено через 7 минут и 41 секунду список своих TS можешь посмотреть так:
|
||||
|
|||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Короче я сделал следующее,
Создал табл пространство create tablespace my_tablespace datafile 'D:\...\Sasha.DAT' size 10000M REUSE AUTOEXTEND ON NEXT 2M MAXSIZE UNLIMITED Затем создал польз и выделил ему квоту в созданном табл пространстве ALTER USER DUMMY IDENTIFIED BY DUMB DEFAULT TABLESPACE my_tablespace QUOTA 10000M ON my_tablespace Затем попытался под DUMMY создать мат представление в my_tablespace CREATE materialized view smcash2 PctFree 0 Tablespace My_tablespace Storage (initial 64k next 64k pctincrease 0) Build Immediate Refresh Force as SELECT * FROM table@baze В результате ошибка: -... максимальное число экстентов во временном сегменте раздела ...- Не могу понять при чем тут TEMP, разве мат представление создается не в my_tablespace. Да и шаг 121(как создавать табл пространство) перечитывал несколько раз, но если честно конструкции не совсем понял. На каком шаге я допустил ошибку и что нужно исправить? |
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
||||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
ошибка в строке 6:
ORA-01630: max # экстентов исчерпано во временном сегменте раздела ORA-02063: предшествующий line из baze |
|||
|
||||
Petro123 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 6.4.2007 Репутация: нет Всего: нет |
Нет вариантов?
|
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 23 Всего: 44 |
вот: http://www.sql.ru/forum/actualthread.aspx?...mp;hl=ora+01630
http://www.sql.ru/forum/actualthread.aspx?...mp;hl=ora+01630 http://www.sql.ru/forum/actualthread.aspx?...mp;hl=ora+01630 пока все что нашел по этой ошибке. мнение DBA нужно, есть такие? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Oracle" | |
|
Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Oracle | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |