linux下oracle經常使用命令大全

參看主機名:$hostname

打開圖形化窗口:
1)Database Configuration Assistant windows    (添加數據庫實例)
$ dbca
2)Oracle Net Configuration Assistant windows  (配置監聽)
$ netca
3)打開EM
$ oemapp dbastudio                            (打開企業管理器圖形界面)
$ opemapp console                             (打開企業管理器圖形界面(和上面的命令效果同樣))


經常使用命令:
$ lsnrctl start|stop|status                  (啓動|中止|活動狀態 監聽)
$ isqlplusctl start|stop                      (啓動|中止 isqlplus 能夠在瀏覽器登陸 5560端口)
$ sqlplus /nolog                              (以不鏈接數據庫的方式啓動sqlplus)
$ sqlplus system/manager @ file.sql           (執行sql腳本文件)
$ sqlplus system/manager                      (使用system用戶登陸sqlplus)
$ imp system/manager file=/tmp/expfile.dmp log=/tmp/implogfile.log ignore=y fromuser=expuser touser=impuser  (用戶模式表數據導入,若是沒有特別指定值,就使用默認的值)     
$ exp username/password file=/tmp/expfile.dmp log=/tmp/proV114_exp.log                                       (用戶模式表數據導出,這是最簡單的導出方法)


SQL> conn / as sysdba                                  (以sysdba用戶鏈接)
SQL> startup
SQL> shutdown
SQL> shutdown immediate                                (當即關閉實例)
SQL> desc dba_users;                                   (查詢dba_users表結構)
SQL> select username from dba_users;                   (查詢當前sid下的全部用戶的username)
SQL> select count(*) from username.tablename;          (查詢tablename表的行數)
SQL> drop user username cascade;                       (刪除名稱爲username的oracle用戶)
SQL> select distinct table_name from user_tab_columns; (查看當前user模式下全部表名)







1、ORACLE的啓動和關閉
  一、在單機環境下
  要想啓動或關閉ORACLE系統必須首先切換到ORACLE用戶,以下
  su - oracle
  
  a、啓動ORACLE系統
  oracle>svrmgrl
  SVRMGR>connect internal
  SVRMGR>startup
  SVRMGR>quit
  
  b、關閉ORACLE系統
  oracle>svrmgrl
  SVRMGR>connect internal
  SVRMGR>shutdown
  SVRMGR>quit
  
  啓動oracle9i數據庫命令:
  $ sqlplus /nolog
  
  SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 13:53:53 2003
  
  Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
  
  SQL> connect / as sysdba
  Connected to an idle instance.
  SQL> startup^C
  
  SQL> startup
  ORACLE instance started.
  
  
  二、在雙機環境下
  要想啓動或關閉ORACLE系統必須首先切換到root用戶,以下
  su - root
  
  a、啓動ORACLE系統
  hareg -y oracle
  
  b、關閉ORACLE系統
  hareg -n oracle
  
  Oracle數據庫有哪幾種啓動方式
  
  
  說明:
  
  有如下幾種啓動方式:
  一、startup nomount
  非安裝啓動,這種方式啓動下可執行:重建控制文件、重建數據庫
  
  讀取init.ora文件,啓動instance,即啓動SGA和後臺進程,這種啓動只須要init.ora文件。
  
  
  二、startup mount dbname
  安裝啓動,這種方式啓動下可執行:
  數據庫日誌歸檔、
  數據庫介質恢復、
  使數據文件聯機或脫機,
  從新定位數據文件、重作日誌文件。
  
  執行「nomount」,而後打開控制文件,確認數據文件和聯機日誌文件的位置,
  但此時不對數據文件和日誌文件進行校驗檢查。
  
  
  三、startup open dbname
  先執行「nomount」,而後執行「mount」,再打開包括Redo log文件在內的全部數據庫文件,
  這種方式下可訪問數據庫中的數據。
  
  
  四、startup,等於如下三個命令
  startup nomount
  alter database mount
  alter database open
  
  
  五、startup restrict
  約束方式啓動
  這種方式可以啓動數據庫,但只容許具備必定特權的用戶訪問
  非特權用戶訪問時,會出現如下提示:
  ERROR:
  ORA-01035: ORACLE 只容許具備 RESTRICTED SESSION 權限的用戶使用
  
  
  六、startup force
  強制啓動方式
  當不能關閉數據庫時,能夠用startup force來完成數據庫的關閉
  先關閉數據庫,再執行正常啓動數據庫命令
  
  
  七、startup pfile=參數文件名
  帶初始化參數文件的啓動方式
  先讀取參數文件,再按參數文件中的設置啓動數據庫
  例:startup pfile=E:Oracleadminoradbpfileinit.ora
  
  
  八、startup EXCLUSIVE
  2、用戶如何有效地利用數據字典
   ORACLE的數據字典是數據庫的重要組成部分之一,它隨着數據庫的產生而產生, 隨着數據庫的變化而變化,
  體現爲sys用戶下的一些表和視圖。數據字典名稱是大寫的英文字符。
  
   數據字典裏存有用戶信息、用戶的權限信息、全部數據對象信息、表的約束條件、統計分析數據庫的視圖等。
  咱們不能手工修改數據字典裏的信息。
  
   不少時候,通常的ORACLE用戶不知道如何有效地利用它。
  
   dictionary 所有數據字典表的名稱和解釋,它有一個同義詞dict
   dict_column 所有數據字典表裏字段名稱和解釋
  
   若是咱們想查詢跟索引有關的數據字典時,能夠用下面這條SQL語句:
  
   SQL>select * from dictionary where instr(comments,'index')>0;
  
   若是咱們想知道user_indexes表各字段名稱的詳細含義,能夠用下面這條SQL語句:
  
   SQL>select column_name,comments from dict_columns where table_name='USER_INDEXES';
  
   依此類推,就能夠輕鬆知道數據字典的詳細名稱和解釋,不用查看ORACLE的其它文檔資料了。
  
   下面按類別列出一些ORACLE用戶經常使用數據字典的查詢使用方法。
  
   一、用戶
  
   查看當前用戶的缺省表空間
   SQL>select username,default_tablespace from user_users;
  
   查看當前用戶的角色
   SQL>select * from user_role_privs;
  
   查看當前用戶的系統權限和表級權限
   SQL>select * from user_sys_privs;
   SQL>select * from user_tab_privs;
  
   二、表
  
   查看用戶下全部的表
   SQL>select * from user_tables;
  
   查看名稱包含log字符的表
   SQL>select object_name,object_id from user_objects
   where instr(object_name,'LOG')>0;
  
   查看某表的建立時間
   SQL>select object_name,created from user_objects where object_name=upper('&table_name');
  
   查看某表的大小
   SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
   where segment_name=upper('&table_name');
  
   查看放在ORACLE的內存區裏的表
   SQL>select table_name,cache from user_tables where instr(cache,'Y')>0;
  
   三、索引
  
   查看索引個數和類別
   SQL>select index_name,index_type,table_name from user_indexes order by table_name;
  
   查看索引被索引的字段
   SQL>select * from user_ind_columns where index_name=upper('&index_name');
  
   查看索引的大小
   SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
   where segment_name=upper('&index_name');
  
   四、序列號
  
   查看序列號,last_number是當前值
   SQL>select * from user_sequences;
  
   五、視圖
  
   查看視圖的名稱
   SQL>select view_name from user_views;
  
   查看建立視圖的select語句
   SQL>set view_name,text_length from user_views;
   SQL>set long 2000; 說明:能夠根據視圖的text_length值設定set long 的大小
   SQL>select text from user_views where view_name=upper('&view_name');
  
   六、同義詞
  
   查看同義詞的名稱
   SQL>select * from user_synonyms;
  
   七、約束條件
  
   查看某表的約束條件
   SQL>select constraint_name, constraint_type,search_condition, r_constraint_name
   from user_constraints where table_name = upper('&table_name');
  
   SQL>select c.constraint_name,c.constraint_type,cc.column_name
   from user_constraints c,user_cons_columns cc
   where c.owner = upper('&table_owner') and c.table_name = upper('&table_name')
   and c.owner = cc.owner and c.constraint_name = cc.constraint_name
   order by cc.position;
  
   八、存儲函數和過程
  
   查看函數和過程的狀態
   SQL>select object_name,status from user_objects where object_type='FUNCTION';
   SQL>select object_name,status from user_objects where object_type='PROCEDURE';
  
   查看函數和過程的源代碼
   SQL>select text from all_source where owner=user and name=upper('&plsql_name');
  
  
  3、查看數據庫的SQL
  一、查看錶空間的名稱及大小
  
   select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size
   from dba_tablespaces t, dba_data_files d
   where t.tablespace_name = d.tablespace_name
   group by t.tablespace_name;
  
  二、查看錶空間物理文件的名稱及大小
  
   select tablespace_name, file_id, file_name,
   round(bytes/(1024*1024),0) total_space
   from dba_data_files
   order by tablespace_name;
  
  三、查看回滾段名稱及大小
  
   select segment_name, tablespace_name, r.status,
   (initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent,
   max_extents, v.curext CurExtent
   From dba_rollback_segs r, v$rosql

相關文章
相關標籤/搜索