<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 188,comments - 176,trackbacks - 0

    Oracle數據庫常用的操作命令

    常用的數據字典表:tab,user_tables,user_objects,user_catalog,user_constraints,user_cons_columns
    1、視圖在所有存儲過程(數據字典表)中查詢是否有某一字符串的SQL語句
          select * from all_source where type='PROCEDURE' and lower(text) like '%student %'
          select * from user_source where lower(text) like '%dbms_%'
          select   tname,cname,coltype,width from col where tname='STUDENT'
          select * from all_tables where owner ='OEMS'
          select * from all_constraints where constraint_name = 'JWTHESIS_R_THESISWRITEBATCH_ID'

    2、sqlplus連接oracle
          Oracle安裝后默認密碼: sys(change_on_install),system(manager),internal(oracle),scott(tiger)
          connect system/manager as sysdba;(as sysoper)
          connect internal/oracle AS SYSDBA;(scott/tiger)
          connect sys/change_on_install as sysdba;

    3、查看當前連接數:select * from v$license
          查看當前的所有數據庫:     select * from v$database;
          查看當前所有的數據庫實例: select * from v$instance  
          查看當前庫的所有數據表all_tables(用戶表user_tables):
          select * from all_tables where table_name like 'T%' and owner='SYS';
          查看當前數據庫連接用戶    sqlplus Show user;或者select uid,user from dual;
          查看當前數據庫系統時間    select sysdate from dual;
          查看數據庫表結構字段:     desc v$database;
          查看哪些用戶擁有SYSDBA、SYSOPER權限: select * from v_$PWFILE_USERS;

    4. 怎樣刪除用戶會話
          SELECT * FROM v$session WHERE lower(USERNAME) = 'oems';
          ALTER SYSTEM KILL SESSION 'SID, SERIAL#';

    5、改變一個對象的名字,執行RENAME語句,改變一個表、視圖、序列或同義詞
          RENAME dept TO detail_dept;

    6、檢查用戶是否將SYSTEM 表空間作為缺省表空間
          SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS WHERE          DEFAULT_TABLESPACE ='SYSTEM';

    7、怎樣查找產生鎖的SQL 語句
          select s.username username,a.sid sid,a.owner||'.'||a.object object,s.lockwait,t.sql_text SQL
          from v$sqltext t,v$session s,v$access a
          where t.address=s.sql_address and t.hash_value=s.sql_hash_value and s.sid = a.sid and a.owner != 'SYS'

    and upper    (substr(a.object,1,2)) != 'V$'

    8、添加注釋到表中,用COMMENT語句添加注釋到一個表或列中
          (注釋通過數據字典視圖查看CALL_COL_COMMENTS,CUSER_COL_COMMENTS,CALL_TAB_COMMENTS,CUSER_TAB_COMMENTS)
        COMMENT ON TABLE employees IS 'Employee Information'

    9、系統日期sysdate顯示,環境變量nls_date_format設置日期顯示格式
          alter session set nls_date_format='yyyy"天"mm"月"dd"日"' --'yyyy-mm-dd hh24:mi:ss'

    10、日期顯示的類型
          Select sysdate,to_char(sysdate,'yyyy.mm.dd')col1,to_char(sysdate,'dd-mon-yyyy hh24:mi:ss day')col2

    from dual
          Select trunc(sysdate) + 0.5 col from dual
          Select trunc(sysdate) ||' 12:00:00' col From dual

    11、DBA權限
    --典型的DBA權限--
    --系統權限--                   
    --授權的操作--
    create user          受讓人可以創建其他 oracle 用戶 (需要有DBA角色權限)。
    drop user            受讓人可以刪除另一個用戶。
    drop any table       受讓人可以刪除在任意方案中的表。
    backup any table     受讓人用導出實用程序可以備份在任何方案中的任何表。
    select any table     受讓人可以查詢在任何方案中的表、視圖或快照。
    create any table     受讓人可以在任何方案中創建表。
    1.create user   創建用戶(通常由DBA執行)
    2.create role   創建一個權限的集合(通常由DBA執行)
    3.grant         給予其他用戶權限來訪問本用戶的對象
    4.alter user    改變用戶口令
    5.revoke        刪除在用戶對象上的權限

    (1)DBA用create user語句創建用戶:   
          create user scott identified by tiger
          create user scott identified by tiger default tablespace users Temporary TABLESPACE Temp;
          用sys以sysdba的身份來進行登錄,在sys狀態是locked的時候也是能登錄的.然后再使用:鎖定alter user scott

    account lock;解鎖alter user sys account unlock
    (2)創建角色并且授予權限給角色,角色是命名的可以授予用戶的相關權限的組,該方法使得授予、撤回和維護權限容易的多
          首先,DBA必須創建角色,然后,DBA可以分配角色給角色和用戶,創建角色:create role manager;
    (3)DBA授予指定的系統權限
    <1>授予指定系統權限給一個用戶
        grant create session, create table, create sequence, create view to scott;
    <2>授予權限給一個角色
        grant create table, create view to manager;
        grant connect,resource,dba to scott;grant sysdba to scott;
    <3>授予一個角色給用戶
        grant manager to alice, lily;
    <4>授予對象權限,授予查詢權限到employees表上
        grant select on employees to sue, rich;
    <5>授予權限到以更新指定的列到用戶和角色
        grant update (department_name, location_id) on departments to scott, manager;
    <6>給一個用戶授權以級聯權限授予
        grant select, insert on departments to scott with grant option
    <7>允許所有在系統上的用戶從alice 的departments 表中查詢數據:
        grant select on alice.departments to public

    --確認已授予的權限
    --數據字典視圖--           
    --說明--
    ROLE_SYS_PRIVS         授予角色的系統權限
    ROLE_TAB_PRIVS         授予角色的表權限
    USER_ROLE_PRIVS        可由用戶訪問的角色
    USER_TAB_PRIVS_MADE    授予用戶的對象上的對象權限
    USER_TAB_PRIVS_RECD    授予用戶的對象權限
    USER_COL_PRIVS_MADE    授予用戶對象的列上的對象權限
    USER_COL_PRIVS_RECD    授予用戶在指定列上的對象權限
    USER_SYS_PRIVS         授予用戶的系統權限

    (4)改變口令,DBA創建用戶帳號并且初始化其口令,用alter user語句用戶可以改變口令:
        alter user scott identified by tiger;
        alter user system identified by test;

    (5)撤消對象權限
        用REVOKE語句撤消授予其他用戶的權限,通過WITH GRANT OPTION子句授予其他用戶的權限也被撤消
        REVOKE select,insert ON departments FROM scott;

    創建數據庫鏈接,USING子句指出了一個遠程數據庫的服務名。寫使用數據庫鏈接的SQL 語句
          CREATE PUBLIC DATABASE LINK hq.sina.com USING 'sales'
          CREATE PUBLIC SYNONYM HQ_EMP FOR emp@hq.sina.com;

    系統權限和對象權限
          授予對象權限時語句應該是WITH GRANT OPTION子句,而在授予系統權象時語句是WITH ADMIN OPTION
          對象權限就是指在表、視圖、序列、過程、函數或包等對象上執行特殊動作的權利.有九種不同類型的權限可以授予

    給用戶或角色。
          系統權限需要授予者有進行系統級活動的能力,如連接數據庫,更改用戶會話、建立表或建立用戶等等
     

    待續...

    posted on 2009-12-26 15:54 cheng 閱讀(1399) 評論(1)  編輯  收藏 所屬分類: Oracle

    FeedBack:
    # re: Oracle數據庫常用的操作命令[未登錄]
    2012-04-12 11:09 | ccc
    收藏了 謝謝樓主分享  回復  更多評論
      
    主站蜘蛛池模板: 亚洲乱码日产精品a级毛片久久| 亚洲男人的天堂在线播放| 亚洲制服丝袜第一页| 精品熟女少妇av免费久久| 永久免费毛片在线播放| 亚洲一区二区三区精品视频 | 国产精品免费久久久久影院| 久久久精品免费视频| 久久香蕉国产线看免费| 亚洲av无码不卡| 免费可以看黄的视频s色| 中国亚洲女人69内射少妇| a级黄色毛片免费播放视频| 亚洲国产精品成人精品无码区 | 黄页免费视频播放在线播放| 亚洲av麻豆aⅴ无码电影| 亚洲视频一区在线观看| 成人免费毛片内射美女APP| 亚洲AV无码久久| 91精品国产免费久久久久久青草| 亚洲综合激情五月色一区| 污污网站18禁在线永久免费观看| 久久久亚洲裙底偷窥综合| 免费v片在线观看视频网站| 亚洲成亚洲乱码一二三四区软件| 久久免费公开视频| 亚洲欧洲国产综合AV无码久久| 又粗又黄又猛又爽大片免费| 中文字幕免费人成乱码中国| 亚洲精品视频久久| 久久午夜夜伦鲁鲁片免费无码| 精品久久久久久亚洲精品| 亚洲成av人在片观看| 久久免费观看国产精品88av| 亚洲日产乱码一二三区别| 亚洲欧洲日产国码无码久久99| 免费一级毛片在线播放放视频 | 精品免费久久久久久成人影院| 亚洲精品国产日韩无码AV永久免费网| 亚洲国产综合精品中文第一区| 成年在线网站免费观看无广告|