新しいOracleデータベースに出会った時のやること

 あくまで個人の経験談であって、人によって異なると思いますので、
参考までにどうぞ^^

1、Oracleのバージョンと関連プラットホームの情報

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

SQL> select * from dba_registry_database;(Oracle 11gの場合)

SQL> select dbid, name, open_mode, database_role, platform_name from v$database;

      DBID NAME      OPEN_MODE  DATABASE_ROLE    PLATFORM_NAME
---------- --------- ---------- ---------------- ------------------------------
1204647702 ORCL      READ WRITE PRIMARY          Linux IA (32-bit)

SQL> select dbms_utility.port_string from dual;

PORT_STRING
-------------------------------------------------------------------------------
Linuxi386/Linux-2.0.34-8.1.0

SQL> set serveroutput on
declare
ver VARCHAR2(100);
compat VARCHAR2(100);
begin
dbms_utility.db_version(ver, compat);
dbms_output.put_line('Version: ' || ver ||' Compatible: ' || compat);
end;
/

Version: 10.2.0.1.0 Compatible: 10.2.0.1.0

PL/SQL procedure successfully completed.

2、どんなコンポーネントが実装されたか

SQL> select COMP_NAME,VERSION,STATUS from dba_registry;

COMP_NAME                                          VERSION                        STATUS
-------------------------------------------------- ------------------------------ -------
Oracle Database Catalog Views                      10.2.0.1.0                     VALID
Oracle Database Packages and Types                 10.2.0.1.0                     VALID
Oracle Workspace Manager                           10.2.0.1.0                     VALID
JServer JAVA Virtual Machine                       10.2.0.1.0                     VALID
Oracle XDK                                         10.2.0.1.0                     VALID
Oracle Database Java Packages                      10.2.0.1.0                     VALID
Oracle Expression Filter                           10.2.0.1.0                     VALID
Oracle Data Mining                                 10.2.0.1.0                     VALID
Oracle Text                                        10.2.0.1.0                     VALID
Oracle XML Database                                10.2.0.1.0                     VALID
Oracle Rules Manager                               10.2.0.1.0                     VALID
Oracle interMedia                                  10.2.0.1.0                     VALID
OLAP Analytic Workspace                            10.2.0.1.0                     VALID
Oracle OLAP API                                    10.2.0.1.0                     VALID
OLAP Catalog                                       10.2.0.1.0                     VALID
Spatial                                            10.2.0.1.0                     VALID
Oracle Enterprise Manager                          10.2.0.1.0                     VALID

17 rows selected.

3、この環境はスタンドアロンRAC

 確認方法いろいろあるけど、ここではdbms_utilityを使いましょう。
SQL> 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;
/

Not A Clustered Database

PL/SQL procedure successfully completed.

4、DataGuard利用されているか

SQL> select protection_mode, protection_level, remote_archive, database_role, dataguard_broker,guard_status
 from v$database;

PROTECTION_MODE      PROTECTION_LEVEL     REMOTE_A DATABASE_ROLE    DATAGUAR GUARD_S
-------------------- -------------------- -------- ---------------- -------- -------
MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE  ENABLED  PRIMARY          DISABLED NONE

5、アーカイブREDOログモードか

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     5
Next log sequence to archive   7
Current log sequence           7


SQL> select log_mode from v$database;

LOG_MODE
------------
ARCHIVELOG

6、Flashback Database機能は有効か

SQL> select flashback_on from v$database;

FLASHBACK_ON
------------------
YES

YESの場合さらにフラッシュ リカバリ領域(FRA)を確認する。
V$RECOVERY_FILE_DEST:Flash Recovery Area領域使用状況
V$FLASH_RECOVERY_AREA_USAGE:ファイルタイプ別の領域使用状況

SQL> show parameter db_recovery_file_dest

NAME                         TYPE        VALUE
---------------------------- ----------- ------------------------------
db_recovery_file_dest        string      /u01/oracle/app/flash_recovery
                                         _area
db_recovery_file_dest_size   big integer 2G

7、Force loggingとsupplemental logは有効か

SQL> 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;

FOR SUPPLEME SUP SUP SUP SUP
--- -------- --- --- --- ---
NO  NO       NO  NO  NO  NO

8、制御ファイルの構成情報

SQL> select * from v$controlfile;

9、ログファイルの構成情報

SQL> 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;

10、パラメータファイルの構成情報

SQL> show parameter spfile

NAME       TYPE        VALUE
---------- ----------- ------------------------------
spfile     string      /u01/oracle/app/oracle/product
                       /10.2.0/db_1/dbs/spfileorcl.ora                                                 a

その他:
 create spfile from pfile...
 create pfile from spfile...
 create spfile from memory...
 create pfile from memory...

11、インスタンスに関する情報

SQL> select instance_name, host_name, status, archiver, database_status, instance_role, active_state
 from v$instance;

INSTANCE_NAME    HOST_NAME                 STATUS ARCHIVE DATABASE_STATUS   INSTANCE_ROLE      ACTIVE_ST
---------------- ------------------------- ------ ------- ----------------- ------------------ ---------
orcl             CentOS52.Oracle.Desktop   OPEN   STARTED ACTIVE            PRIMARY_INSTANCE   NORMAL

12、ユーザとパスワードに関する情報

(1)デフォルトパスワード使用したか
(2)プロファイル使用したか
(3)パスワード検証関数使用したか
(4)ユーザの認証方法は?
(5)パスワードは大文字小文字区別か

SQL> select name, value from gv$parameter where name = 'resource_limit';

NAME             VALUE
---------------- -----------
resource_limit   FALSE

SQL> select profile, resource_name, limit from dba_profiles order by 1,2;

PROFILE                        RESOURCE_NAME                    LIMIT
------------------------------ -------------------------------- ----------------------------------------
DEFAULT                        COMPOSITE_LIMIT                  UNLIMITED
DEFAULT                        CONNECT_TIME                     UNLIMITED
DEFAULT                        CPU_PER_CALL                     UNLIMITED
DEFAULT                        CPU_PER_SESSION                  UNLIMITED
DEFAULT                        FAILED_LOGIN_ATTEMPTS            10
DEFAULT                        IDLE_TIME                        UNLIMITED
DEFAULT                        LOGICAL_READS_PER_CALL           UNLIMITED
DEFAULT                        LOGICAL_READS_PER_SESSION        UNLIMITED
DEFAULT                        PASSWORD_GRACE_TIME              UNLIMITED
DEFAULT                        PASSWORD_LIFE_TIME               UNLIMITED
DEFAULT                        PASSWORD_LOCK_TIME               UNLIMITED
DEFAULT                        PASSWORD_REUSE_MAX               UNLIMITED
DEFAULT                        PASSWORD_REUSE_TIME              UNLIMITED
DEFAULT                        PASSWORD_VERIFY_FUNCTION         NULL
DEFAULT                        PRIVATE_SGA                      UNLIMITED
DEFAULT                        SESSIONS_PER_USER                UNLIMITED
MONITORING_PROFILE             COMPOSITE_LIMIT                  DEFAULT
MONITORING_PROFILE             CONNECT_TIME                     DEFAULT
MONITORING_PROFILE             CPU_PER_CALL                     DEFAULT
MONITORING_PROFILE             CPU_PER_SESSION                  DEFAULT
MONITORING_PROFILE             FAILED_LOGIN_ATTEMPTS            UNLIMITED
MONITORING_PROFILE             IDLE_TIME                        DEFAULT
MONITORING_PROFILE             LOGICAL_READS_PER_CALL           DEFAULT
MONITORING_PROFILE             LOGICAL_READS_PER_SESSION        DEFAULT
MONITORING_PROFILE             PASSWORD_GRACE_TIME              DEFAULT
MONITORING_PROFILE             PASSWORD_LIFE_TIME               DEFAULT
MONITORING_PROFILE             PASSWORD_LOCK_TIME               DEFAULT
MONITORING_PROFILE             PASSWORD_REUSE_MAX               DEFAULT
MONITORING_PROFILE             PASSWORD_REUSE_TIME              DEFAULT
MONITORING_PROFILE             PASSWORD_VERIFY_FUNCTION         DEFAULT
MONITORING_PROFILE             PRIVATE_SGA                      DEFAULT
MONITORING_PROFILE             SESSIONS_PER_USER                DEFAULT

32 rows selected.

SQL> select username, profile from dba_users where account_status = 'OPEN' order by 1;

USERNAME                       PROFILE
------------------------------ ------------------------------
DBSNMP                         MONITORING_PROFILE
MGMT_VIEW                      DEFAULT
SPOTLIGHT                      DEFAULT
SYS                            DEFAULT
SYSMAN                         DEFAULT
SYSTEM                         DEFAULT

6 rows selected.

11gの場合
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;

13、Block Change Trackingは有効か

SQL> select filename, status, bytes from v$block_change_tracking;

FILENAME STATUS   BYTES
-------------------------
         DISABLED

14、ほかに何か機能を利用されているか

11gの場合はDBMS_FEATURE_USAGE_REPORTを利用しましょう。

15、表領域とデータファイルの構成情報

select * from dba_tablespaces;
select * from v$tablespace;
select * from v$datafile;

16、文字コードに関する情報

select * from database_properties;

17、システム上Invalidオブジェクト存在するか

SQL> select owner, object_type, COUNT(*)
 from dba_objects
 where status = 'INVALID'
 group by owner, object_type;

no rows selected

18、ASMを利用されているか

19、現在のバックアップ・リストアのソリューションは何か

20、ネットワークの構成情報

21、最近のAlart.logをチェックし、運用状況を把握する

22、Statspack、RDA、OSWレポートを収集する

以上はパッと思い出した情報で、これらを把握することで
新たな環境を分析できると思います。