轉:面對一個全新的oracle環境,首先應該瞭解什麼?

jx_yu發表於2012-05-30
   檢視資料庫版本
   select * from v$version;   
  
   檢視資料庫平臺
   select * from dba_registry_database;
  
   檢視資料庫名字、開啟的模式、角色、平臺
   select dbid,name,open_mode,database_role,platform_name from v$database;
  
   函式port_string返回作業系統和資料庫的協議版本
   select dbms_utility.port_string from dual;
  
  檢視資料庫中裝了哪些元件
   select comp_name,status from dba_registry;
 
   搞清楚這個環境是單機還是叢集?
   方法1:show parameter cluster
       show parameter instance_number
   方法2: select * from v$option where parameter='Real Application Clusters';
   方法3:
   set serveroutput on
   declare
     inst_tab dbms_utility.instance_table;
     inst_cnt NUMBER;
   begin
     if dbms_utility.is_cluster_database then
        dbms_utility.active_instances(inst_tab, inst_cnt);
        dbms_output.put_line('-' || inst_tab.FIRST);
        dbms_output.put_line(TO_CHAR(inst_cnt));
     else
        dbms_output.put_line('Not A Clustered Database');
     end if;
   end;
   /
 
   檢視是否配置了DataGuard?
   select protection_mode,protection_level,remote_archive,database_role,dataguard_broker,guard_status   from v$database;
  
   是否起用了歸檔模式?
   conn /as sysdba
   archive log list;
   select log_mode from v$database;
 
  是否起用了flashback database特性?
   select flashback_on from v$database;
   如果是,再進一步檢視FRA的配置情況
 
   是否起用了force logging和補充日誌?
   select force_logging,supplemental_log_data_min,supplemental_log_data_pk,supplemental_log_data_ui,
          supplemental_log_data_fk,supplemental_log_data_all
   from v$database;
 
  瞭解控制檔案的組成
   select * from v$controlfile;
 
   瞭解日誌檔案的組成
   select l.group#, lf.type, lf.member, l.bytes, l.status LOG_STATUS, lf.status LOGFILE_STATUS
   from v$log l, v$logfile lf
   where l.group# = lf.group#
   order by 1,3;
 
   瞭解引數檔案的組成和位置
    show parameter spfile
    create spfile from pfile...
    create pfile from spfile;
    create spfile from memory;
    create pfile from memory;
 
   瞭解instance的相關資訊
    select instance_name,host_name,status,archiver,database_status,instance_role,active_state
    from v$instance;
   
    使用者和密碼相關
    是否使用了預設密碼?
    是否使用了profile?
    是否起用了密碼驗證函式?
    使用者身份驗證的方法?
    密碼是否區分大小寫等。
    select name,value from gv$parameter where name = 'resource_limit';
    select profile,resource_name, limit from dba_profiles order by 1,2;
    select username, profile from dba_users where account_status = 'OPEN' order by 1;
 
    select d.username, u.account_status
    from dba_users_with_defpwd d, dba_users u
    where d.username = u.username and account_status = 'OPEN'
    order by 2,1;
 
   是否開啟了BLOCK CHANGE TRACKING
    select filename,status,bytes from v$block_change_tracking;
    當這個特性開啟後,ORACLE會建立一個trace檔案,並起用後臺程式CTWR記錄變化的資料塊,當需要增量備份的時候,就直接讀這個檔案獲得要備份的資料塊,
  Block change tracking 會記錄data file裡每個block的update 資訊,這些tracking資訊儲存在tracking 檔案裡。
  當啟動block change tracking 後,RMAN 使用trackingfile裡的資訊,只讀取改變的block資訊,而不用在對整個data file進行掃描,從而提高了RMAN 備份的效能。

   起用了那些特性(Feature)?
    DBMS_FEATURE_USAGE_REPORT
 
 
   字符集相關
    select * from database_properties;
 
   系統中是否存在invalid物件
    select owner,object_type, COUNT(*)
    from dba_objects
    where status = 'INVALID'
    group by owner, object_type;
   更進一步的
    是否使用了ASM?
    當前系統的備份方法和策略是什麼?
    網路檔案的配置是如何的?
 
  檢視一下最近的alert日誌,獲取一些有用的資訊
   跑幾個效能分析報告,看看最近系統的執行狀態如何
   跑一個RDA報告,收集完整的系統狀態報告

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27000195/viewspace-731460/,如需轉載,請註明出處,否則將追究法律責任。

相關文章