powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
12 сообщений из 12, страница 1 из 1
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590054
Фотография scela
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет All.
Есть проект миграции нескольких СУБД со спарков на x86.
В процессе миграции баз всплыла проблема - в коде как базы, так и приложений активно использовался внутренний идентификатор
пользователя СУБД, UID ( он же USER# из sys.user$) , который применяется как ключ для аудита, истории изменений и много чего другого.
И более того, на UID пользователей одной СУБД завязаны все остальные мигрирующие системы .

Проблема заключается в том, что при кроссплатформенной миграции этот UID изменяется. Все варианты миграции , мне известные , его меняют.
Так как это внутренняя кухня Оракла, то мы этот UID подправить не можем, иначе слетим с технической поддержки Оракла.

Мне видится только один вариант - через анализ кода на стороне сервера и приложений, и сколько это займет, просто неизвестно.
И даже после анализа нет гарантий что это не стрельнет.

Вопросы:
- Существуют ли способы кроссплатформенной миграции без изменения пользовательских UID?
- Какие магические способы можно применить кроме анализа ( хоть направление , куда копать) ?
- Какие инструменты могут помочь с анализом ( вроде был давно SQL Impact для подобных целей , а сейчас что есть рабочее ) ?.

Заранее благодарен за ответы.
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590066
ы!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ы!
Гость
scelaПривет All.
...
- Какие магические способы можно применить кроме анализа ( хоть направление , куда копать) ?


Откуда UID берёте? Вряд ли из sys.user$
Можно подменить dba_users. Или откуда он там?
Но много гемороя потом....
Но - как вариант.
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590070
dba123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scela,

Что-то подобное обсуждали на форуме, м.б. поможет поиск _NEXT_USER
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590088
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scelaспособы кроссплатформенной миграции"кроссплатформенность" здесь никоим боком.

scelaмагические способысоздать пользователей, подгадывая нужный id, благо он выдается по порядку.
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590114
Фотография scela
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-создать пользователей, подгадывая нужный id, благо он выдается по порядку.
Хммм.... неплохой вариант, попробуем.
Спасибо :)
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590115
Фотография scela
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dba123,

Спасибо, поищу
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590125
Фотография scela
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dba123scela,

Что-то подобное обсуждали на форуме, м.б. поможет поиск _NEXT_USER

БИНГО!!!!! СПАСИБО ОГРОМНОЕ!!!!!!
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590142
dba123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scela,

бинго - это вряд ли.

Как заметил Валерий Юринский в одной из веток, нельзя использовать в качестве UID user$.user#
имхо, проще (даже незаметно) для приложений(синонимы, например), создать свою таблицу пользователей во время миграции.
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590234
Фотография scela
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dba123,

Задачка - просто получить таких же пользователей ( с такими же ) ID для обеспечения историзма и аудита.
Что нельзя использовать - это я в курсе.
Спасибо
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590330
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Имхо нехилая такая мина...
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39590403
Да-да, припоминаю. Первую систему на оракле написал с использованием uid. Тогда под продакшн привезли новенький сервер с ultrasparc ii 400 мгц. И по результатам exp/imp всю эту байду переделал на прикладные коды.
...
Рейтинг: 0 / 0
Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
    #39591421
KoTTT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда-то в "Протеке" была такая гениальная байда. Веселые были миграции между версиями.
Правили sql.bsq (это тогда, сейчас юзеры вроде в dsec.bsq создаются), чтобы прикладные юзеры с маленькими id создавались "как надо". В более новых версиях оракла "внутренних" юзеров становилось больше, соответственно прикладные создавались уже с бОльшими id, чем в исходной системе.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как оставить неизменным UID некоторых пользователей при кроссплатформенной миграции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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