Automated Rebuild Indexes, Analyze Objects and Gather Statistics | Oracle

Here, I am going to share a way to automate Index Rebuild, Analyze Objects and Gather Statistics jobs.
Stored Procedure to Rebuild All indexes in a specific Schema:


CREATE OR REPLACE PROCEDURE SYS.REBUILD_TABLE_INDEX (SCHEMANAME VARCHAR2)
AS
SQL_STR VARCHAR2(1000);
BEGIN

    FOR CUROSR_INDEX IN (SELECT OWNER,SEGMENT_NAME from SYS.DBA_SEGMENTS
        WHERE SEGMENT_TYPE='INDEX'
        AND OWNER = SCHEMANAME
        ORDER BY SEGMENT_NAME ) LOOP

        BEGIN
        SQL_STR:='ALTER INDEX '||CUROSR_INDEX.OWNER||'.'||CUROSR_INDEX.SEGMENT_NAME ||' REBUILD ONLINE NOLOGGING PARALLEL 8';        
        EXECUTE IMMEDIATE SQL_STR;
        DBMS_OUTPUT.PUT_LINE('SUCCESS : '|| CUROSR_INDEX.OWNER||'.'||CUROSR_INDEX.SEGMENT_NAME);
        EXCEPTION WHEN OTHERS THEN
        DBMS_OUTPUT.PUT_LINE('ERROR : '||CUROSR_INDEX.OWNER||'.'||CUROSR_INDEX.SEGMENT_NAME||':'||SQLERRM);
        END;
 
END LOOP;
END;

Read more

DBA_AUTOTASK in Oracle Database

You can query the DBA_AUTOTASK_OPERATION to find out the names and status of the automatic tasks in your database as shown in the following example:


SELECT client_name, status FROM dba_autotask_operation;

CLIENT_NAME                                                      STATUS  
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED 
auto space advisor                                               ENABLED 
sql tuning advisor                                               ENABLED 

3 rows selected.

Read more

Create Partition in an Old Table Oracle

You can partition a non-partitioned table three different ways:

A) export/import method
B) Insert with a subquery method
C) Partition exchange method

Either of these 3 methods will create a partitioned table from an existing non-partitioned table.
Read more

Start/Stop Enterprise Manager in Oracle

Those are commands to check out the Status or Start/Stop Enterprise Manager in Oracle Database.


bash-3.2$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.3.0
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.

https://srvip:1158/em/console/aboutApplication

Oracle Enterprise Manager 11g is running.
------------------------------------------------------------------
Logs are generated in directory /oracle/app/11g/db_1/srvip_ababil/sysman/log

Read more

Enable/Disable Table level Audit Option in Oracle

Use this sql command to check out audit option is enabled on which Tables.


SELECT OWNER, OBJECT_NAME FROM DBA_OBJ_AUDIT_OPTS WHERE OWNER = 'SIBL';

OWNER                          OBJECT_NAME                   
------------------------------ ------------------------------
SIBL                           ACCOUNT                       
SIBL                           ACCOUNTTYPE                   
SIBL                           APPCONFIGURATION              
SIBL                           DEP_TXN_ARCH_OLD              
SIBL                           FINANCIALPRODUCT              
SIBL                           INLANDREMITTANCE              
SIBL                           INVMSTR                       
SIBL                           REMITTANCEPRODUCT             
SIBL                           SSP_ACCOUNT                   
SIBL                           SSP_MONTHLYPRODUCTINFO        
SIBL                           SSP_PRODUCT                   
SIBL                           TFS_ACCOUNT                   
SIBL                           TRANSACTIONRECORD  

Read more

Database Audit Option in Oracle

Use this sql command to checkout if audit_trail is enable or not.


SQL> show parameter audit;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest                      string      /oracle/app2/admin/testdbdp/adump
audit_sys_operations                 boolean     FALSE
audit_syslog_level                   string
audit_trail                          string      NONE


Execute this following sql and bounce database to enable audit_trail.


ALTER SYSTEM SET AUDIT_TRAIL=DB, EXTENDED SCOPE=SPFILE;


Execute this following sql and bounce database to disable audit_trail.


ALTER SYSTEM SET AUDIT_TRAIL=NONE SCOPE=SPFILE;

Thanks
A Rahim Khan

Cancel datapump Jobs

First of all, use hand this handy query to checkout Datapump Job status.


SELECT owner_name, job_name, operation, job_mode, state FROM dba_datapump_jobs;

OWNER_NAME JOB_NAME             OPERATION  JOB_MODE   STATE      
---------- -------------------- ---------- ---------- ------------
SYSTEM     EXP_FULL             EXPORT     FULL       NOT RUNNING

Read more

Follow

Get every new post delivered to your Inbox.