powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / insert select через dblink
2 сообщений из 2, страница 1 из 1
insert select через dblink
    #39401355
Bukan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Столкнулся с такой проблемой: при insert select через dblink операция занимает очень много времени. Хотя сам запрос выполняется быстро.

Сам запрос вида:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
    SELECT /*+ DRIVING_SITE(src)*/
      src.tab1_id
    , src.col1
    , src.col2
    , src.col3
    , src.col4
    , src.col5
    , src.col6
    , src.col7
    , src.col8
    , src.col9
    FROM
      tab1@db_link src
    WHERE src.id IN (
                        SELECT /*+ parallel(8)*/
                          tab1_id
                        FROM
                          tab2 r
                        WHERE r.tab2_id in (
                                    SELECT
                                      t.tab2_id
                                    FROM
                                      temp_tbl t
                                    WHERE t.col2 = 1
                                    )
                        );



В запросе используется temporary table on commit preserve rows.
Выборка занимает пару секунд. Вставка с таким запросом может занимать до получаса. Выгружается не больше 20 строк.
Если создать таблицу через create table as select и использовать запрос выше, то происходит тоже быстро. Но если потом в эту же таблицу вставлять данные через этот же запрос, то опят долго выполняется.

При чём ошибка только с одной таблицей. Другие таблицы выкачиваются таким же способом и проблем нет.
Можно обойти это вставляя запрос в FOR LOOP и потом в цикле вставлять данные, но хочу понять в чём может быть проблема и в какую сторону копать.

Версия Oracle 11.2.0.3.0.
...
Рейтинг: 0 / 0
insert select через dblink
    #39401465
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / insert select через dblink
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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