Как я могу получить информацию журнала от пользователя БД с SQL Plus? - PullRequest
0 голосов
/ 06 февраля 2019

мы используем базу данных Oracle в нашей компании.По нормативным причинам нам необходим «отчет» со всеми пользователями БД, которые использовались для обновления базы данных нашего Программного обеспечения в 2018 году, и их отметок времени входа и выхода из системы.Я знаю, что у Oracle есть инструмент, который отслеживает это, но, к сожалению, эта функция никогда не использовалась нашей компанией и все еще деактивирована.Возможно ли получить что-то подобное еще?

То, что мне нужно, должно выглядеть примерно так:
1. Столбец: пользователь БД
2. Столбец: время входа в систему
3. Столбец: выход из системыотметка времени

Может быть что-то вроде:

prod_user | 01.02.2018 05:30:05 | 01.02.2018 05:35:30  
prod_user | 02.02.2018 10:06:16 | 02.02.2018 10:48:58

С уважением

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Нет.

Если вы не включили аудит в базе данных и не подключились к аудиту, Oracle по умолчанию не сохраняет логин / выход пользователя из системы.

Из документации AUDIT SESSION :

Этот параметр создает одну запись аудита для каждого сеанса, созданного соединениями с экземпляром.Запись аудита вставляется в контрольный журнал во время подключения и обновляется во время отключения.Эта запись может включать в себя время соединения, время разъединения, а также логический и физический обработанные операции ввода-вывода, а также другие сведения.

Для чего бы вы ни стояли, вы можете получить доступ к дате последнего входа в систему любого пользователя, посмотрев на столбец LAST_LOGIN в административном представлении DBA_USERS.Это обычная функция, которая не требует включения аудита.

0 голосов
/ 06 февраля 2019

учитывая, что пользователь, которого вы используете, имеет достаточные права, вы можете использовать представление DBA_AUDIT_SESSION, чтобы проверить необходимую информацию. Документация Oracle 10g

...