Skip to main content

ORACLE USERS, GRANTS, REVOKES AND DROP

Create USER:

create user username identified by password default tablespace users temporary tablespace temp quota 50M on users;

Create ROLE:


CREATE ROLE ROLE_NAME;

Granting Privilege:

GRANT SELECT, UPDATE ON table_name TO role_name;
GRANT SELECT ON table_name TO role_name;

Grant Column Privilege:


GRANT SELECT, UPDATE (ISSUE_BR_ID,DRAWN_BR_ID,AMOUNT_CCY,AMOUNT_LCY,ORGN_BR_ID,RSPD_BR_ID,ADV_NO,ADV_RECEIVED_STATUS,entry_br_id,PAYMENT_STATUS) ON COR_BRM_INFO TO HELP_DESK;
GRANT SELECT, UPDATE (ORGN_BR_ID,RSPD_BR_ID,ADVICE_NO,NARRATION) ON COR_IBT_ORGN_REG TO HELP_DESK;

The following query will help you to generate a set of query of a database user 'ULTIMUS':


select 'GRANT SELECT ON ULTIMUS.' || t.table_name ||
       ' to ZAKIR;'
  from all_tables t
 where t.owner = 'ULTIMUS'
   --and t.table_name like 'TFN_%'
 order by t.table_name




The query can help you to find out the table privilege of any given user or all user:

SELECT t.GRANTEE,
       t.OWNER,
       T.table_name,
       t.GRANTOR,
       t.PRIVILEGE,
       t.GRANTABLE
  FROM DBA_TAB_PRIVS t
 WHERE t.grantee in ('ZAKIR','BACH' )
   and t.privilege='UPDATE' -- SELECT/DELETE etc.
 ORDER BY t.table_name;


The Following query will give a Tree View of ALL the Users along with their assigned ROLE's:

select
  lpad(' ', 2*level) || granted_role "User, his roles and privileges"
from
  (
  /* THE USERS */
    select 
      null     grantee, 
      username granted_role
    from 
      dba_users
    where
      default_tablespace = 'USERS'
  /* THE ROLES TO ROLES RELATIONS */ 
  union
    select 
      grantee,
      granted_role
    from
      dba_role_privs
  /* THE ROLES TO PRIVILEGE RELATIONS */ 
  union
    select
      grantee,
      privilege
    from
      dba_sys_privs
  )
start with grantee is null
connect by grantee = prior granted_role;

REVOKE role from user:

REVOKE role FROM {user, | role, |PUBLIC}
REVOKE ALL FROM {user, | role, |PUBLIC}
REVOKE object_priv [(column1, column2..)] ON [schema.]object FROM {user, | role, |PUBLIC} [CASCADE CONSTRAINTS] [FORCE]

DROP a user:

-------------------------------------------------------------------------------------------

Happy to Help !!!


Comments

Popular posts from this blog

EXPDP/IMPDP Export/Import dumpfile to a Remote Server Using Network_Link.

EXPDP/IMPDP Export/Import dumpfile to a Remote Server Using Network_Link. Step 1:   First you have to create a TNS entry at destination database which will be used to connect to the remote target database. pumplink =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.1.171)(PORT = 1521))     )     (CONNECT_DATA =       (SERVER = DEDICATED)       (SERVICE_NAME = Ultimus)     )   ) Step 2:   Connect to SQL plus: --Issue the following command to create db link on destination database: CREATE PUBLIC DATABASE LINK pumplink    connect to scott identified by tiger USING 'pumplink'; Step 3:   Issue the expdp command on the destination server using Network_link parameter: expdp scott/tiger directory= dumpdir logfile=impi_temp.log network_link= pumplink  schemas=scott dump...

All Dictionary View Tables:

All Dictionary View Tables: TABLE_NAME COMMENTS ALL_ALL_TABLES Description of all object and relational tables accessible to the user ALL_APPLY Details about each apply process that dequeues from the queue visible to the current user ALL_APPLY_CONFLICT_COLUMNS Details about conflict resolution on tables visible to the current user ALL_APPLY_DML_HANDLERS Details about the dml handler on tables visible to the current user ALL_APPLY_ENQUEUE Details about the apply enqueue action for user accessible rules where the destination queue exists and is visible to the user ALL_APPLY_ERROR Error transactions that were generated after dequeuing from the queue visible to the current user ALL_APPLY_EXECUTE Details about the apply execute action for all rules visible to the user ALL_APPLY_KEY_COLUMNS Alternative key columns for a STREAMS table visible to the current user ALL_APPLY_PARAME...

Solution of problem: Resultset Exceeds the Maximum Size (100 MB)

Solution of problem: Resultset Exceeds the Maximum Size (100 MB) I was running a select statement in PL/SQL Developer. it was a short query but the data volume that the query was fetching was huge. But when ever i Click the button Fetch Last Page or press 'ALT+End' button a message box comes after a while saying: Then I started looking for the exact reason of this sort of problem in Google. When I realized there was no direct solution in the web, I started looking the PL/SQL Developer Software menu and found the ultimate solution. The reason of this problem is there is a parameter of maximum result set size in PL/SQL Developer Software which is by default set to 100 MB. To change this parameter you have to go to the following location: 1. Goto Edit Menu and click ' PL/SQL Beautifier Options '. A new window will open. 2. Click SQL Window of " Window Types ". 3. Now Change the value of "Maximum Result Set Size( 0 is unlimited)"  ...