update : 20-08-2017

DBA Script : sess_current_user_transactions.sql

-- | FILE : sess_current_user_transactions.sql |
-- +----------------------------------------------------------------------------+
-- | |
-- | |
-- | www.high-oracle.com |
-- |----------------------------------------------------------------------------|
-- | www.high-oracle.com |
-- |----------------------------------------------------------------------------|
-- | DATABASE : Oracle |
-- | FILE : sess_current_user_transactions.sql |
-- | CLASS : Session Management |
-- | PURPOSE : List table locking and current user transactions information. |
-- | NOTE : As with any code, ensure to test this script in a development |
-- | environment before attempting to run it in production. |
-- +----------------------------------------------------------------------------+
SET TERMOUT OFF;
COLUMN current_instance NEW_VALUE current_instance NOPRINT;
SELECT rpad(instance_name, 17) current_instance FROM v$instance;
SET TERMOUT ON;
PROMPT
PROMPT +------------------------------------------------------------------------+
PROMPT | Report : User Transactions |
PROMPT | Instance : ¤t_instance |
PROMPT +------------------------------------------------------------------------+
SET ECHO OFF
SET FEEDBACK 6
SET HEADING ON
SET LINESIZE 256
SET PAGESIZE 50000
SET TERMOUT ON
SET TIMING OFF
SET TRIMOUT ON
SET TRIMSPOOL ON
SET VERIFY OFF
CLEAR COLUMNS
CLEAR BREAKS
CLEAR COMPUTES
COLUMN sid FORMAT 999999 HEADING 'SID'
COLUMN serial_id FORMAT 99999999 HEADING 'Serial ID'
COLUMN oracle_username FORMAT a18 HEADING 'Oracle User'
COLUMN logon_time FORMAT a18 HEADING 'Login Time'
COLUMN owner FORMAT a20 HEADING 'Owner'
COLUMN object_type FORMAT a11 HEADING 'Object Type'
COLUMN object_name FORMAT a25 HEADING 'Object Name'
COLUMN locked_mode FORMAT a11 HEADING 'Locked Mode'
prompt
prompt +----------------------------------------------------+
prompt | Table Locking Information |
prompt +----------------------------------------------------+
SELECT
a.session_id sid
, c.serial# serial_id
, a.oracle_username oracle_username
, TO_CHAR(
c.logon_time,'mm/dd/yy hh24:mi:ss'
) logon_time
, b.owner owner
, b.object_type object_type
, b.object_name object_name
, DECODE(
a.locked_mode
, 0, 'None'
, 1, 'Null'
, 2, 'Row-S'
, 3, 'Row-X'
, 4, 'Share'
, 5, 'S/Row-X'
, 6, 'Exclusive'
) locked_mode
FROM
v$locked_object a
, dba_objects b
, v$session c
WHERE
a.object_id = b.object_id
AND a.session_id = c.sid
ORDER BY
b.owner
, b.object_type
, b.object_name
/
prompt
prompt +----------------------------------------------------+
prompt | User Transactions Information |
prompt +----------------------------------------------------+
COLUMN sid FORMAT 999999 HEADING 'SID'
COLUMN serial_id FORMAT 99999999 HEADING 'Serial ID'
COLUMN session_status FORMAT a9 HEADING 'Status'
COLUMN oracle_username FORMAT a18 HEADING 'Oracle User'
COLUMN os_username FORMAT a18 HEADING 'O/S User'
COLUMN os_pid FORMAT a8 HEADING 'O/S PID'
COLUMN trnx_start_time FORMAT a18 HEADING 'Trnx Start Time'
COLUMN current_time FORMAT a18 HEADING 'Current Time'
COLUMN elapsed_time FORMAT 999999999.99 HEADING 'Elapsed(mins)'
COLUMN undo_name FORMAT a10 HEADING 'Undo Name' TRUNC
COLUMN number_of_undo_records FORMAT 999,999,999,999 HEADING '# Undo Records'
COLUMN used_undo_blks FORMAT 999,999,999 HEADING 'Used Undo Blks'
COLUMN used_undo_size FORMAT 999,999,999 HEADING 'Used Undo (MB)'
COLUMN logical_io_blks FORMAT 999,999,999 HEADING 'Logical I/O (Blks)'
COLUMN logical_io_size FORMAT 999,999,999,999 HEADING 'Logical I/O (MB)'
COLUMN physical_io_blks FORMAT 999,999,999 HEADING 'Physical I/O (Blks)'
COLUMN physical_io_size FORMAT 999,999,999,999 HEADING 'Physical I/O (MB)'
COLUMN session_program FORMAT a26 HEADING 'Session Program' TRUNC
SELECT
s.sid sid
, s.status session_status
, s.username oracle_username
, p.spid os_pid
, TO_CHAR(
TO_DATE(
b.start_time
,'mm/dd/yy hh24:mi:ss'
)
, 'mm/dd/yy hh24:mi:ss'
) trnx_start_time
, ROUND(60*24*(sysdate-to_date(b.start_time,'mm/dd/yy hh24:mi:ss')),2) elapsed_time
, c.segment_name undo_name
, b.used_urec number_of_undo_records
, (b.used_ublk * d.value)/1024/1024 used_undo_size
, (b.log_io*d.value)/1024/1024 logical_io_size
, (b.phy_io*d.value)/1024/1024 physical_io_size
, s.program session_program
FROM
v$session s
, v$transaction b
, dba_rollback_segs c
, v$parameter d
, v$process p
WHERE
b.ses_addr = s.saddr
AND b.xidusn = c.segment_id
AND d.name = 'db_block_size'
AND p.ADDR = s.PADDR
ORDER BY 1
/

End Script

Oracle Database Error Messages



Oracle Database High Availability Any organization evaluating a database solution for enterprise data must also evaluate the High Availability (HA) capabilities of the database. Data is one of the most critical business assets of an organization. If this data is not available and/or not protected, companies may stand to lose millions of dollars in business downtime as well as negative publicity. Building a highly available data infrastructure is critical to the success of all organizations in today's fast moving economy.

Well, the reason for above error is that i have taken the above script from a 11g database and running it on 10g database. 11g has bring some changes in password management. Below code is executed on 11g and user created successfully, which is expected result.