Июн 062011
 

Я уже писал, как выявить блокирующие сессии и сгенерировать команды на их завершение. Проблема в том, что команда KILL SESSION не всегда быстро отрабатывает. Гораздо быстрее (особенно, если сессий нужно завершить много) будет убивать серверный процесс, соответствующий этой сессии, средствами ОС, после чего фоновый процесс PMON удалит из памяти экземпляра БД данные об убитой сессии, снимет все блокировки и откатит транзакции.

Итак, запрос: Continue reading »

Мар 112011
 

Использование команды ALTER SESSION SET current_schema может быть удобным, например, когда мы вручную что-то делаем с объектами другого пользователя и нам лень каждый раз предварять имя объекта именем другой схемы, а также чтобы избежать использования публичных синонимов, которые Том Кайт считает злом.

Нужно помнить, что эта команда не переключает пользователя (это было бы неправильно с точки зрения безопасности), а просто автоматически подставляет имя пользователя перед именем объекта, поэтому, как и в случае использования синонимов, нужно позаботиться о предоставлении прав на объект.

Рассмотрим пример (выполнять в SQL*Plus): Continue reading »