談笑有鴻儒,往來無(wú)白丁

          在恰當(dāng)?shù)臅r(shí)間、地點(diǎn)以恰當(dāng)?shù)姆绞奖磉_(dá)給恰當(dāng)?shù)娜?..  閱讀的時(shí)候請(qǐng)注意分類,佛曰我日里面是談笑文章,其他是各個(gè)分類的文章,積極的熱情投入到寫博的隊(duì)伍中來,支持blogjava做大做強(qiáng)!向dudu站長(zhǎng)致敬>> > 我的微博敬請(qǐng)收聽

          要了解oracle體系結(jié)構(gòu)必須先了解兩個(gè)基本的概念: 數(shù)據(jù)庫(kù)和實(shí)例.
          ?? 一: 數(shù)據(jù)庫(kù)
          ??????? 數(shù)據(jù)庫(kù)(database)是一個(gè)數(shù)據(jù)集合.
          ??????? 無(wú)論數(shù)據(jù)庫(kù)是采用關(guān)系結(jié)構(gòu)還是面向?qū)ο蠼Y(jié)構(gòu), oracle數(shù)據(jù)庫(kù)都將
          ??????? 其數(shù)據(jù)存放在數(shù)據(jù)文件中. 在其內(nèi)部, 數(shù)據(jù)庫(kù)結(jié)構(gòu)數(shù)據(jù)對(duì)文件的邏輯
          ??????? 映射, 使不同的數(shù)據(jù)分開存儲(chǔ), 這些邏輯劃分稱為表空間.???????
          ??????? 表空間和文件介紹:
          ??????? 1: 表空間
          ???????????????? 表空間(tablespace)是數(shù)據(jù)庫(kù)的邏輯劃分, 每個(gè)數(shù)據(jù)庫(kù)至少有一個(gè)
          ?????????? 表空間,叫做系統(tǒng)表空間(system 表空間). 一個(gè)表空間只能屬于一個(gè)數(shù)據(jù)庫(kù).
          ?????????? 每個(gè)表空間由同一個(gè)磁盤上的一個(gè)或多個(gè)文件組成, 這些文件稱為數(shù)據(jù)文件.

          ?????????? 表空間的特性:
          ??????????????? 1)控制數(shù)據(jù)庫(kù)數(shù)據(jù)磁盤分配
          ??????????????? 2)限制用戶在表空間中可以使用的磁盤空間大小
          ??????????????? 3)表空間具有 online, offline, readonly, readwrite屬性
          ??????????????????????? 修改表空間的屬性:
          ????????????????????????? SQL> alter tablespace 表空間名稱 屬性;
          ??????????????????????? 查詢表空間狀態(tài):
          ????????????????????????? SQL> select tablespace_name, status from dba_tablespaces;
          ??????????????????????? 注意: system, undo, temp表空間不能設(shè)為offline屬性.
          ??????????????? 4)完成部分?jǐn)?shù)據(jù)庫(kù)的備份與恢復(fù)
          ??????????????? 5)表空間通過數(shù)據(jù)文件來擴(kuò)大, 表空間的大小等于構(gòu)成該表空間的所以數(shù)據(jù)文件的大小只和.
          ???????????? 查詢表空間與數(shù)據(jù)文件對(duì)應(yīng)關(guān)系:
          ????????????????? SQL> select tablespace_name, bytes, file_name from dba_data_files;
          ?????????? 基于表空間的幾個(gè)操作:
          ??????????????? 1)查詢用戶缺省表空間:
          ??????????????????? SQL> select username, default_tablespace from dba_users;
          ??????????????? 2)查詢表與存儲(chǔ)該表的表空間:
          ??????????????????? SQL> select table_name, tablespace_name from user_tables;
          ??????????????? 3)修改用戶缺省表空間:
          ??????????????????? SQL> alter user username default tablespace tablespace_name;
          ??????????????? 4)將數(shù)據(jù)從一個(gè)表空間移動(dòng)到另一個(gè)表空間:
          ??????????????????? SQL> alter table table_name move tablespace tablespace_name;

          ??????? 2: 數(shù)據(jù)文件
          ???????? 每個(gè)表空間由同一個(gè)磁盤上的一個(gè)或多個(gè)文件組成, 這些文件叫做數(shù)據(jù)文件(datafile),
          ???? 數(shù)據(jù)文件只能屬于一個(gè)表空間. 數(shù)據(jù)文件創(chuàng)建后可以改變大小. 創(chuàng)建新的表空間需要?jiǎng)?chuàng)建新的
          ???? 數(shù)據(jù)文件. 數(shù)據(jù)文件一旦加入到表空間中, 就不能從表空間中移走, 也不能與其他表空間發(fā)生聯(lián)系.
          ???? 數(shù)據(jù)庫(kù)必須的三類文件是 data file, control file, redolog file. 其他文件 prameter file,
          ??????????? password file, archived log files并不是數(shù)據(jù)庫(kù)必須的, 他們只是輔助數(shù)據(jù)庫(kù)的.

          ??????????????? 查看數(shù)據(jù)庫(kù)的物理文件組成:
          ????????????????? 1)查看數(shù)據(jù)文件: SQL> select * from v$datafile;
          ????????????????? 2)查看控制文件: SQL> select * from v$controlfile;
          ????????????????? 3)查看日志文件: SQL> select * from v$logfile;
          ?? 二: 實(shí)例
          ??????????? 通俗的講實(shí)例就是操作oracle數(shù)據(jù)庫(kù)的一種手段.
          ??????????? 數(shù)據(jù)庫(kù)實(shí)例也稱作服務(wù)器, 是用來訪問數(shù)據(jù)庫(kù)文件集的存儲(chǔ)結(jié)構(gòu)及后臺(tái)進(jìn)程的集合.
          ??????????? 一個(gè)數(shù)據(jù)庫(kù)可以被多個(gè)實(shí)例訪問(稱為真正的應(yīng)用群集選項(xiàng)).
          ??????????????? 決定實(shí)例的大小及組成的各種參數(shù)或者存儲(chǔ)在名稱init.ora的初始化文件中, 或者隱藏
          ??????????? 在數(shù)據(jù)庫(kù)內(nèi)部的服務(wù)器參數(shù)文件中. 通過spfile引用該文件, spfile存儲(chǔ)在spfile.ora文件中.
          ???????????????? 實(shí)例啟動(dòng)時(shí)讀取初始化文件, 數(shù)據(jù)庫(kù)系統(tǒng)管理員可以修改該文件, 對(duì)初始化文件的修改只有
          ??????????? 在下次啟動(dòng)時(shí)才有效.

          ??????? Instance分為兩部分:
          ??????????????? 1: memory structure(內(nèi)存結(jié)構(gòu))
          ??????????????????????? memory structure分為兩部分:SGA(System Global Area)區(qū)是用于存儲(chǔ)數(shù)據(jù)庫(kù)信息的內(nèi)存區(qū),
          ??????????????????????????????????????????????????????? 該信息為數(shù)據(jù)庫(kù)進(jìn)程所共享。它包含Oracle 服務(wù)器的數(shù)據(jù)和控制信息,
          ??????????????????????????????????????????????????????? 它是在Oracle 服務(wù)器所駐留的計(jì)算機(jī)的實(shí)際內(nèi)存中得以分配,如果實(shí)際內(nèi)
          ??????????????????????????????????????????????????????? 存不夠再往虛擬內(nèi)存中寫。
          ??????????????????????????????????????????????????????????????? 包括:
          ??????????????????????????????????????????????????????????????? .share pool
          ??????????????????????????????????????????????????????????????? .datafase buffer cache
          ??????????????????????????????????????????????????????????????? .redo log buffer
          ??????????????????????????????????????????????????????????????? .other structures
          ??????????????????????????????????????????????????????? PGA(Program Global Area)區(qū)包含單個(gè)服務(wù)器進(jìn)程或單個(gè)后臺(tái)進(jìn)程的
          ??????????????????????????????????????????????????????? 數(shù)據(jù)和控制信息,與幾個(gè)進(jìn)程共享的SGA 正相反PGA 是只被一個(gè)進(jìn)程使
          ??????????????????????????????????????????????????????? 用的區(qū)域,PGA 在創(chuàng)建進(jìn)程時(shí)分配在終止進(jìn)程時(shí)回收
          ???????????????????????????????????????????????????????
          ??????????????? 2: background process(后臺(tái)進(jìn)程)
          ??????????????????????? 包括: .PMON? 負(fù)責(zé)在一個(gè)Oracle 進(jìn)程失敗時(shí)清理資源
          ????????????????????????????? .SMON? 檢查數(shù)據(jù)庫(kù)的一致性如有必要還會(huì)在數(shù)據(jù)庫(kù)打開時(shí)啟動(dòng)數(shù)據(jù)庫(kù)的恢復(fù)
          ????????????????????????????? .DBWR? 負(fù)責(zé)將更改的數(shù)據(jù)從數(shù)據(jù)庫(kù)緩沖區(qū)高速緩存寫入數(shù)據(jù)文件
          ????????????????????????????? .LGWR? 將重做日志緩沖區(qū)中的更改寫入在線重做日志文件
          ????????????????????????????? .CKPT? 負(fù)責(zé)在每當(dāng)緩沖區(qū)高速緩存中的更改永久地記錄在數(shù)據(jù)庫(kù)中時(shí),更新控制文件和數(shù)據(jù)文件中的數(shù)據(jù)庫(kù)狀態(tài)信息。
          ????????????????????????????? .OTHER

          posted on 2006-09-15 15:10 壞男孩 閱讀(407) 評(píng)論(0)  編輯  收藏 所屬分類: ORACLE篇章
          主站蜘蛛池模板: 新巴尔虎右旗| 荃湾区| 彝良县| 安远县| 太谷县| 龙山县| 正蓝旗| 大邑县| 库伦旗| 金乡县| 山丹县| 淳安县| 临武县| 雷州市| 乡宁县| 容城县| 扎赉特旗| 青岛市| 德保县| 咸宁市| 平和县| 深州市| 沙河市| 阳春市| 浦城县| 西和县| 河池市| 徐州市| 星座| 洪湖市| 昌吉市| 自贡市| 怀来县| 南部县| 灵丘县| 浮梁县| 崇阳县| 璧山县| 崇信县| 伊宁市| 普洱|