學習 第3章:專項練習之一

mengzhaoliang發表於2008-05-26

/* 2008/05/26
*Oracle 備份與恢復培訓教程 Kenny Smith,Stephan Haisley著 周琪、韓岷、李渝琳等譯
*第3章:專項練習之一
*/

練習3.1:安裝Oracle軟體
   略


練習3.2:建立jxfgw資料庫
1、啟動資料庫的配置助手
   Windows>G:\oracle\product\10.2.0\db_1\BIN\launch.exe G:\oracle\product\10.2.0\db_1\a
ssistants\dbca dbca.cl
   Linux>/oracle/10.2.0/bin/dbassist &
2、配置資料庫配置助手
   按預設操作
3、建立資料庫


練習3.3:檢視資料庫
連線方式:
本地連線:
SQL> connect sys/mzl as sysdba
已連線。

Net8連線:
SQL> connect as sysdba
ERROR:
ORA-12154: TNS: 無法解析指定的連線識別符號


警告: 您不再連線到 ORACLE。

   出現上面的錯誤,如果$ORACLE_HOME/network/admin/下的tnsnames.ora和listener.ora配置正確,則是環境變數出的問題,在$ORACLE_HOME/bin/下執行即可。
如:
G:\oracle\product\10.2.0\db_1\BIN>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 3月 30 18:01:59 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.


SQL> connect as sysdba
已連線。

 

註釋:連線命令中的@符號指示資料庫連線使用Net8,如果沒有指定Net8連線字元,連線命令將連線到由Oracle_SID環境變數定義的資料庫。


查資料庫名稱和歸檔日誌模式:
SQL> select name,log_mode from v$database;

NAME      LOG_MODE
--------- ------------
JXFGW     ARCHIVELOG


查版本:
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 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production


查資料檔案及大小:
SQL> select name,bytes/1024/1024 "MB" from v$datafile;

NAME                                                               MB
---------------------------------------------------------- ----------
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\SYSTEM01.DBF              1070
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\UNDOTBS01.DBF              120
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\SYSAUX01.DBF               280
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\USERS01.DBF              88.75
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\RISENET.ORA                300
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\RISENET_JXFGW.ORA          992
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\PERFSTAT.DBF               500

已選擇7行。

或者:
SQL> select file_name,bytes/1024/1024 "MB" from dba_data_files;

FILE_NAME                                                          MB
---------------------------------------------------------- ----------
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\USERS01.DBF              88.75
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\SYSAUX01.DBF               280
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\UNDOTBS01.DBF              120
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\SYSTEM01.DBF              1070
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\RISENET.ORA                300
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\RISENET_JXFGW.ORA          992
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\PERFSTAT.DBF               500

已選擇7行。

   許多v$動態檢視在資料庫控制檔案載入而資料庫未開啟時可用。

表空間:
SQL> select ts#,name from v$tablespace;

       TS# NAME
---------- ----------------------------------------------------------
         0 SYSTEM
         1 UNDOTBS1
         2 SYSAUX
         4 USERS
         3 TEMP
         6 RISENET
         7 RISENET_JXFGW
        10 PERFSTAT

已選擇8行。


SQL> select tablespace_name,block_size from dba_tablespaces

TABLESPACE_NAME                BLOCK_SIZE
------------------------------ ----------
SYSTEM                               8192
UNDOTBS1                             8192
SYSAUX                               8192
TEMP                                 8192
USERS                                8192
RISENET                              8192
RISENET_JXFGW                        8192
PERFSTAT                             8192

已選擇8行。


聯機線上重做日誌
SQL> select group#,status,member from v$logfile;

    GROUP# STATUS  MEMBER
---------- ------- --------------------------------------------------
         3 STALE   G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO03.LOG
         2         G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO02.LOG
         1 STALE   G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO01.LOG

聯機線上重做日誌位置和大小:
SQL> select member,bytes/1024/1024 "MB" from v$logfile lf,v$log l
  2  where lf.group#=l.group#;

MEMBER                                                     MB
-------------------------------------------------- ----------
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO03.LOG          50
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO02.LOG          50
G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\REDO01.LOG          50


控制檔案:
SQL> select status,name,block_size/1024 "block_size KB" from v$controlfile;

STATUS  NAME                                                       block_size KB

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

        G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\CONTROL01.CTL                  16

        G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\CONTROL02.CTL                  16

        G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\CONTROL03.CTL                  16

 

注意:動態檢視的名稱從不使用複數,資料字典名稱通常使用複數。
1、資料庫資訊:v$database,v$instance
2、資料庫引數資訊:v$parameter
3、表空間資訊:v$tablespace,dba_tablespaces
4、資料檔案資訊:v$datafile,v$tempfile,v$datafile_header,dba_data_files,dba_temp_files
5、重做日誌檔案資訊:v$log,v$logfile,v$log_history
6、控制檔案資訊:v$controlfile
7、資料庫恢復資訊:v$recovery_file_status,v$recovery_log,v$recovery_progress,v$recovery_log,v$recover_file


一些重要檔案:
1、引數檔案init.ora.2212008135755位於$ORACLE_BASE/admin/jxfgw/pfile目錄下
2、告警日誌alert_JXFGW.log位於$ORACLE_BASE/admin/jxfgw/bdump目錄下
3、口令檔案:在windows下%ORACLE_HOME%\database\PWDjxfgw.ora,在linux下$ORACLE_HOME/dbs/PWDjxfgw.ora,檔案為二進位制,無法檢視。

 

 

練習3.4:修改jxfgw資料庫
1、更改口令
SQL> alter user sys identified by practice;

使用者已更改。

2、新增資料檔案
SQL> alter tablespace users add datafile
  2  'G:\ORACLE\PRODUCT\10.2.0\ORADATA\JXFGW\user02.dbf' size 10M;

表空間已更改。

3、建立scott使用者
SQL> @G:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlsampl

4、建立tina使用者
SQL> grant connect,resource,unlimited tablespace to tina
  2  identified by panda;

授權成功。

SQL> alter user tina default tablespace risenet;

使用者已更改。

SQL> alter user tina temporary tablespace temp;

使用者已更改。


5、建立tina的物件
SQL> connect tina/panda
已連線。
SQL> drop table date_log;
SQL> create table date_log
  2  (create_date date constraint create_date_pk primary key);

表已建立。

SQL> create or replace procedure create_date_log_row
  2  is
  3  --Purpose:insert a row with the current date/time into date_log.
  4  begin
  5     insert into date_log(create_date) values(sysdate);
  6  end;
  7  /

過程已建立。

6、生產資料庫行為

SQL> insert into tina.date_log values(sysdate);

已建立 1 行。

SQL> select * from date_log;

CREATE_DATE
--------------
31-3月 -08

SQL> execute tina.create_date_log_row;

PL/SQL 過程已成功完成。

SQL> select * from date_log;

CREATE_DATE
--------------
31-3月 -08
31-3月 -08

建立和安排任務:
SQL> variable jobno number;
SQL> begin
  2  --Run the job every 10 minutes
  3  dbms_job.submit(:jobno,'create_date_log_row;',sysdate,'(sysdate+1/(24*6))
;
  4  commit;
  5  end;
  6  /

PL/SQL 過程已成功完成。

SQL> print jobno

     JOBNO
----------
        41

 

SQL> alter system set job_queue_processes=2;

系統已更改。

引數job_queue_processes啟動兩個oracle排程程式

SQL> connect tina/panda
已連線。

SQL> select job,what from user_jobs;

       JOB WHAT
---------- --------------------------------------------------
        41 create_date_log_row;

中斷停止任務:
SQL> execute dbms_job.broken(41,true);

PL/SQL 過程已成功完成。


oracle不再執行該項任務,直到你使用下面程式碼改變它的中斷狀態:
SQL> execute dbms_job.broken(41,false,sysdate);

PL/SQL 過程已成功完成。

 


動態檢視和資料字典檢視的區別是什麼?
A、大多數動態檢視在資料庫載入而未開啟時使用;字典檢視不是這樣
B、動態檢視顯示當前控制檔案或記憶體結構中的資訊;字典檢視顯示system表空間的資訊
C、所有的動態檢視都以字元v$開頭;大多數字典檢視以DBA_、ALL_或USER_開頭
D、動態檢視有一個單數名;大多數字典檢視有一個複數名。
答案:ABCD

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

相關文章