【文章內(nèi)容簡介】
ce operations, you start an instance and mount a database but do not open the database. For example, the database must be mounted but not open during the following tasks: ? Renaming data files ? Enabling and disabling redo log archiving options ? Performing full database recovery Mounting a database includes the following tasks: ? Associating a database with a previously started instance ? Locating and opening the control files specified in the parameter file ? Reading the control files to obtain the names and status of the data files and redo log files (However, no checks are performed to verify the existence of the data files and online redo log files at this time.) Opening the Database Normal database operation means that an instance is started and the database is mounted and open。 this allows any valid user to connect to the database and perform typical data access operations. Opening the database includes the following tasks: ? Opening the online data files ? Opening the online redo log files If any of the data files or online redo log files are not present when you attempt to open the database, the Oracle server returns an error. During this final stage, the Oracle server verifies that all the data files and online redo log files can be opened and checks the consistency of the database. If necessary, the System Monitor background process (SMON) initiates instance recovery. Starting Up To start up an instance, use the following mand: STARTUP [FORCE] [RESTRICT] [PFILE= filename] [OPEN [RECOVER][ database] |MOUNT |NOMOUNT] To open the database from STARTUP NOMOUNT to a MOUNT stage or from MOUNT to an OPEN stage, use the ALTER DATABASE mand: ALTER DATABASE { MOUNT | OPEN } ALTER DATABASE OPEN [READ WRITE| READ ONLY] Example: – Start up the instance and open the database: STARTUP PFILE=/DISK1/initU15. – Change the state of the database from NOMOUNT to MOUNT: ALTER DATABASE database MOUNT。 – Open the database as a readonly database: ALTER DATABASE database OPEN READ ONLY。 Quick Reference 管理控制文件 課程目標 ? 解釋控制文件的使用 ? 了解控制文件的內(nèi)容 ? 獲取控制文件信息 ? 復(fù)用控制文件 控制文件的作用 是小的二進制文件,在 : 數(shù)據(jù)庫 MOUNT 數(shù)據(jù)庫運行需要使用。 控制文件與一個數(shù)據(jù)庫有關(guān) 應(yīng)該復(fù)用以防止文件丟失 控制文件的內(nèi)容 數(shù)據(jù)庫名 數(shù)據(jù)文件位置 重作日志位置 表空間名 當(dāng)前日志文件順序號 檢查點信息 日志歷史 備分信息 影響控制文件大小的參數(shù) ? 控制文件的大小受下列參數(shù)影響 : – MAXLOGFILES – MAXLOGMEMBERS – MAXLOGHISTORY – MAXDATAFILES – MAXINSTANCES – CONTROL_FILE_RECORD_KEEP_TIME 獲取控制文件的信息 V$CONTROLFILE NAME V$PARAMETER NAME ( control_file) VALUE V$CONTROLFILE_RECORD_SECTION TYPE RECORDS_SIZE RECORDS_TOTAL RECORDS_USED 控制文件使用的原則 –復(fù)用控制文件 –在 CONTROL_FILES 中包含完全路徑 –在數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時備份控制文件 復(fù)用控制文件 control_files=(/DISK1/,/DISK2/) 常見問題 改變控制文件的位置 1. 正常關(guān)閉數(shù)據(jù)庫 2. 將控制文件從當(dāng)前位置依到新的位置 3. 修改 control_file參數(shù) . 4. 啟動數(shù)據(jù)庫 常見問題 一個控制文件丟失 可關(guān)閉數(shù)據(jù)庫復(fù)制好的控制文件 所有控制文件丟失 ,重建控制文件 svrmgrl startup mount svrmgrl alter database backup controlfile to trace 編輯 udump下的 TRACE文件 執(zhí)行文件 管理表空間和數(shù)據(jù)文件 課程目標 了解數(shù)據(jù)庫的邏輯結(jié)構(gòu) 建立表空間 利用幾種方法改變表空間的大小 改變表空間的狀態(tài)和存儲參數(shù) 改變數(shù)據(jù)文件位置 準備需要的表空間 表空間 ? 表空間由一組數(shù)據(jù)文件組成 ? 每個數(shù)據(jù)文件屬于一個表空間 ? 每個表,索引,分區(qū)和所有其他的段均屬于一個表空間但可以跨表空間的多個數(shù)據(jù)文件 SYSTEM 和非 SYSTEM 表空間 SYSTEM 表空間包含 : ? 數(shù)據(jù)字典信息 ? SYSTEM 回滾段 非 SYSTEM表空間包含 : ? 回滾段 ? 臨時段 ? 應(yīng)用數(shù)據(jù) ? 應(yīng)用索引 臨時表空間 用于排序操作 不能包含永久性數(shù)據(jù) CREATE TABLESPACE sort DATAFILE ?DISK2/?SIZE 50M MINIMUM EXTENT 1M DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 500 PCTINCREASE 0) TEMPORARY。 回滾表空間 用于 保存回滾段 不 要包含其他永久性數(shù)據(jù) CREATE TABLESPACE rbs DATAFILE ?DISK2/?SIZE 50M MINIMUM EXTENT 1M DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 500 PCTINCREASE 0) 。 建立表空間 CREATE TABLESPACE app_data DATAFILE ?DISK4/?SIZE 100M, ?DISK5/?SIZE 100M MINIMUM EXTENT 500K DEFAULT STORAGE (INITIAL 500K NEXT 500K MAXEXTENTS 500 PCTINCREASE 0)。 存儲參數(shù) 下述參數(shù)影響段的空間分配 : – INITIAL – NEXT – MAXEXTENTS – MINEXTENTS – PCTINCREASE 表空間管理的一般原則 使用同樣大小的子段 只在表空間上指定存儲參數(shù) 子段大小為 160K, 5120KB, 160MB 監(jiān)視子段個數(shù)超過 1024的段 非常大的表應(yīng)單獨建立表空間 TEMP段應(yīng)放在 TEMP表空間 回滾段應(yīng)單獨放在回滾段的表空間 給表空間增加數(shù)據(jù)文件 ALTER TABLESPACE APP_data ADD DATAFILE ?DISK5/?SIZE 200M。 允許數(shù)據(jù)文件自動擴展 ALTER TABLESPACE app_data ADD DATAFILE ?DISK6/?SIZE 200M AUTOEXTEND ON NEXT 10M MAXSIZE 500M。 Tablespace APP_ DATA ?ALTER DATABASE DATAFILE ?DISK5/?RESIZE 200M。 手工改變數(shù)據(jù)文件的大小 改變存儲參數(shù) ALTER TABLESPACE app_data MINIMUM EXTENT 2M。 ALTER TABLESPACE app_data DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 999)。 將表空間 OFFLINE n不能訪問處于 OFFLINE狀態(tài)的表空間的數(shù)據(jù) n SYSTEM 和包含活動回滾段的表空間不能 OFFLINE ALTER TABLESPACE app_data OFFLINE。 移動數(shù)據(jù)文件 表空間 APP_DATA 必須 OFFLINE 目標文件必須存在 ALTER TABLESPACE app_data RENAME DATAFILE ?DISK4/?TO ?DISK5/? 只讀表空間 ALTER TABLESPACE app_data READ ONLY。 表空間必須在 ONLINE狀態(tài) 表空間中不含活動的 事物 . 表空間中不含活動的 回滾段 表空間中不在作在線備份 刪除表空間 DROP TABLESPACE app_data INCLUDING CONTENTS。 下述命令刪除 APP_DATA表空間及其 中的內(nèi)容 . 獲取表空間有關(guān)的信息 DBA_TABLESPACES ? TABLESPACE_NAME ? NEXT_EXTENT ? MAX_EXTENTS ? PCT_INCREASE ? MIN_EXTLEN ? STATUS ? CONTENTS 獲取數(shù)據(jù)文件有關(guān)的信息 ?DBA_DATA_FILES ? FILE_NAME ? TABLESPACE_NAME ? BYTES ? AUTOEXTENSIBLE ? MAXBYTES ? INCREMENT_BY 一般原則 ? 使用多個表空間 ? 為表空間指定存儲參數(shù) ? 給用戶指定表空間限額 回滾段的管理 課程目標 –回滾段個數(shù)和大小的規(guī)劃 – 使用合適的存儲參數(shù)建立回滾段 –回滾段的維護 –從數(shù)據(jù)字典中獲取回滾段的信息 –回滾段問題的診斷 回滾段的類型 – SYSTEM –非 SYSTEM ? 私用 ? 公用 事物和回滾段 回滾段的增長 讀一致性 介紹回退段的有關(guān)概念 回滾段的回縮 回滾段個數(shù)的規(guī)劃 – OLTP ? 多個小的回滾段 ? 每個回滾段四個事物 ? 《 = N/4 – Batch ? 少量的大回滾段 回滾段個數(shù)的規(guī)劃 –查詢是否有回滾段的競爭 – SVRMGR select * from v$waitstat。 – CLASS COUNT TIME – – data block 0