Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 OS UserName и имя компьютера.  [new]
Evgeshka
Member

Откуда: Украина
Сообщений: 1067
Как правильно получить имя пользователя ОС и имя машины для текущей сессии пользователя? Пока додумался ло такого:
select distinct osuser from v$session where USER#=(select uid from dual)

Только в представлении v$session может быть много строк для uid пользователя. Может ли быть несколько разных osuser для одного и того же uid ?
13 апр 07, 09:47    [4015701]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18482
Конечно
SQL> select distinct osuser from v$session where USER#=(select uid from dual);

OSUSER
------------------------------
lubomudr
oracle
13 апр 07, 09:51    [4015725]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
Evgeshka
для текущей сессии пользователя?
STFF v$mystat
13 апр 07, 09:55    [4015746]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Evgeshka
Member

Откуда: Украина
Сообщений: 1067
Elic
Evgeshka
для текущей сессии пользователя?
STFF v$mystat


Непонятно пока как между собой завязаны эти два представления? Ткните носом в доку пожалуйста! :)
13 апр 07, 11:02    [4016290]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
а поле SID в v$mystat ничего не напоминает?
13 апр 07, 11:06    [4016318]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
Evgeshka
Ткните носом в доку пожалуйста! :)
Search The F... Forum
13 апр 07, 11:08    [4016334]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Evgeshka
Member

Откуда: Украина
Сообщений: 1067
tru55
а поле SID в v$mystat ничего не напоминает?


Так будет правильно?
select distinct a.OSUSER from v$session a, v$mystat b where a.sid=b.sid and a.USER#=(select uid from dual)
13 апр 07, 11:35    [4016579]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18482
Много лишних телодвижений
select osuser from v$session where sid=(select sid from v$mystat where rownum=1)
13 апр 07, 11:37    [4016599]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
Вячеслав Любомудров
Много лишних телодвижений
select osuser from v$session where sid=(select sid from v$mystat where rownum=1)

А почему не:
SELECT sid, serial# 
  FROM v$session
 WHERE audsid = SYS_CONTEXT ('USERENV','SESSIONID')
?
13 апр 07, 12:29    [4016926]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
trak
FROM v$session WHERE audsid = SYS_CONTEXT ('USERENV','SESSIONID')
Типичная ошибка/небрежность, рано или поздно приводящая к TOO_MANY_ROWS. STFF
13 апр 07, 12:38    [4016992]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
Elic
trak
FROM v$session WHERE audsid = SYS_CONTEXT ('USERENV','SESSIONID')
Типичная ошибка/небрежность, рано или поздно приводящая к TOO_MANY_ROWS. STFF

Я конечно не откажусь от STTF, но ведь и rownum не факт что даст именно эту мою сессию?
Или я не нашел в документации нужного места.
13 апр 07, 12:46    [4017039]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
trak
Я конечно не откажусь от STTF
Например, STFF (с) Faiq R. Mamedov :)
trak
но ведь и rownum не факт что даст именно эту мою сессию?
Или я не нашел в документации нужного места.
Ты мало медитировал над словом "my" в v$mystat и совершенного не смотрел на его содержимое
13 апр 07, 12:56    [4017125]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
Мне вот от этого вообще дурно стало :)
SELECT inst_id, ksusenum, ksusestn, ksusestv
  FROM x$ksumysta
 WHERE BITAND (ksspaflg, 1) != 0
   AND BITAND (ksuseflg, 1) != 0
   AND ksusestn < (SELECT ksusgstl
                     FROM x$ksusgif)
Elic
trak
Я конечно не откажусь от STTF
Например, STFF (с) Faiq R. Mamedov :)
trak
но ведь и rownum не факт что даст именно эту мою сессию?
Или я не нашел в документации нужного места.
Ты мало медитировал над словом "my" в v$mystat и совершенного не смотрел на его содержимое
13 апр 07, 13:12    [4017262]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
trak
Мне вот от этого вообще дурно стало :)
  FROM x$ksumysta
Да-мс. К тому же ты не понимаешь смысл слова "содержимое" :)
13 апр 07, 13:17    [4017312]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
Elic
trak
Мне вот от этого вообще дурно стало :)
  FROM x$ksumysta
Да-мс. К тому же ты не понимаешь смысл слова "содержимое" :)


Гм, что-то не нашел, а с чем соединить по STATISTIC#, чтобы по-медитировать над содержимым?
13 апр 07, 13:51    [4017684]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
trak
Elic
trak
Мне вот от этого вообще дурно стало :)
  FROM x$ksumysta
Да-мс. К тому же ты не понимаешь смысл слова "содержимое" :)


Гм, что-то не нашел, а с чем соединить по STATISTIC#, чтобы по-медитировать над содержимым?


ты не об этом?
SELECT M.*, S.name
FROM v$mystat M, v$statname S
WHERE M.statistic# = S.statistic#
13 апр 07, 13:56    [4017745]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Elic
Member

Откуда:
Сообщений: 29976
trak
Гм, что-то не нашел, а с чем соединить по STATISTIC#, чтобы по-медитировать над содержимым?
Для медитации достаточно первого столбика
13 апр 07, 13:59    [4017774]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
Elic
trak
Гм, что-то не нашел, а с чем соединить по STATISTIC#, чтобы по-медитировать над содержимым?
Для медитации достаточно первого столбика

А, тогда ясно. ДЕйствительсно-с, туп. :)
13 апр 07, 14:14    [4017906]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
trak
Member

Откуда: spb.ru
Сообщений: 802
tru55
trak
Elic
trak
Мне вот от этого вообще дурно стало :)
  FROM x$ksumysta
Да-мс. К тому же ты не понимаешь смысл слова "содержимое" :)


Гм, что-то не нашел, а с чем соединить по STATISTIC#, чтобы по-медитировать над содержимым?


ты не об этом?
SELECT M.*, S.name
FROM v$mystat M, v$statname S
WHERE M.statistic# = S.statistic#

Да, спасибо!
13 апр 07, 14:21    [4017961]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Макс Иванов
Member

Откуда:
Сообщений: 62
2 Evgeshka
Да, кстати, клиенты-то "прямые" или не вполне? (В смысле что sys_context ('userenv', 'host') и sys_context ('userenv', 'os_user') возвращают непустое значение).
13 апр 07, 15:26    [4018581]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: OS UserName и имя компьютера.  [new]
I00N
Member

Откуда:
Сообщений: 454
Elic
trak
FROM v$session WHERE audsid = SYS_CONTEXT ('USERENV','SESSIONID')
Типичная ошибка/небрежность, рано или поздно приводящая к TOO_MANY_ROWS. STFF

Насколько надежен поиск записи о сессии по SID?
7 июн 08, 02:20    [5773886]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 63933
Блог
I00N
Насколько надежен поиск записи о сессии по SID?

Куда надежнее, чем по audsid.
7 июн 08, 03:15    [5773902]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
1334
Guest
softwarer
I00N
Насколько надежен поиск записи о сессии по SID?

Куда надежнее, чем по audsid.

Может тогда лучше делать поиск по обоим полям - sid и audsid?
7 июн 08, 15:46    [5776625]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
Jannny
Member

Откуда: Спб
Сообщений: 6424
1334
softwarer
I00N
Насколько надежен поиск записи о сессии по SID?
Куда надежнее, чем по audsid.
Может тогда лучше делать поиск по обоим полям - sid и audsid?
Я, конечно, понимаю, что больше года прошло, но давайте вернемся к началу:
Evgeshka
для текущей сессии пользователя
Все ещё кажется, что sid - это не надежно?
7 июн 08, 15:51    [5776658]     Ответить | Цитировать Сообщить модератору
 Re: OS UserName и имя компьютера.  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 63933
Блог
1334
Может тогда лучше делать поиск по обоим полям - sid и audsid?

Имхо стоит прежде всего смотреть на конкретную задачу, а там уже решать. В принципе... в принципе вроде как комбинация sid и audsid действительно надежно уникальна, кроме оговорки про седьмой Oracle и не вспоминается, когда по ней могут найтись несколько строк.
7 июн 08, 16:07    [5776765]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить