標籤:類型 clu 查看 resource 單元 串連 公司 int 檢查點
1.Oracle資料庫簡介
資料庫系統和資料庫管理系統的區別?
解析:資料庫系統=資料庫的管理系統+oper+操作員+硬體
Oracle資料庫管理系統
Oracle公司的核心產品
目前最流行的資料庫
主要版本Oracle8i/9i(internet)、Oracle10g/11g(grid)
基於C/S系統結構
2.
Oracle主要組件
PGA:
SGA: System global area 系統全域區
DBWR(資料檔案的讀寫)
LGWR (日誌的讀寫)
PMON (監控資料的運行狀態)異常中斷之後的清理,處理和釋放資源
SMON (清理暫存資料表空間)
CKPT checkpoint(檢查點 保證資料庫的一致性,這是指將髒資料寫入到硬碟,保證記憶體和硬碟上的資料是一樣的)
資料庫
磁碟上儲存的資料的集合
在物理上表現為資料檔案、記錄檔和控制檔案等
在邏輯上以資料表空間形式存在
必須首先建立資料庫,然後才能使用Oracle
資料庫執行個體
每個啟動的資料庫都對應一個資料庫執行個體,由這個執行個體來訪問和控制資料庫
為了運行資料庫,Oracle系統所啟動並執行所有進程和分配的記憶體結構的組合體
資料檔案
副檔名是.DBF,用於儲存資料庫資料的檔案
資料庫表和資料檔案不存在一對一對應關係
控制檔案
副檔名是.CTL,是資料庫啟動及運行所必需的檔案
預設包含3個控制檔案,各個控制檔案內容相同
記錄檔
副檔名是.LOG,它記錄了對資料的所有更改資訊
多個記錄檔組之間迴圈使用
2.
執行個體和資料庫的關係
解析:
執行個體:資料庫服務啟動後,在記憶體中的單元
資料庫:硬碟上的檔案
4.Oracle安裝注意是事項
路徑不要有中文 特殊字元 空格 (任何路徑)
5.監聽檔案的位置
6.
啟動Oracle服務
開啟順序:先開啟監聽服務,後開啟Oracle服務
TNSListener 監聽服務
OracleServiceORCL Oracle服務
串連資料庫:
常用的串連方式:
6.
資料庫使用者
sys:超級管理員 管理普通的管理員和普通使用者
System:普通管理員
Scott:普通使用者
7.
資料類型
6.
角色和許可權
注意:Oracle中是根據使用者來隔離表的
每個使用者只能看到自己建立的表
建立使用者和授權
1 --建立一個使用者2 create user liutao identified by 1233 4 --授權5 grant connect to liutao 6 grant RESOURCE to liutao
Oracle包括兩大類許可權(Privileges),一種是系統許可權,另外一種是對象許可權。
CONNECT角色: --是授予終端使用者的典型權利,最基本的
CREATE SESSION --建立會話
RESOURCE角色: --是授予開發人員的
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立過程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立觸發器
CREATE TYPE --建立類型
CREATE OPERATOR --建立操作者
CREATE INDEXTYPE --建立索引類型
DBA: 擁有全部特權,是系統最高許可權,只有DBA才可以建立資料庫結構。
RESOURCE:擁有Resource許可權的使用者只可以建立實體,不可以建立資料庫結構。
CONNECT:擁有Connect許可權的使用者只可以登入Oracle,不可以建立實體,不可以建立資料庫結構。
對於普通使用者:授予connect, resource許可權。
對於DBA系統管理使用者:授予connect,resource, dba許可權。
7.如何查看該使用者管理著的所有表
1 --如何查看該使用者管理著的所有表2 select * from all_tables where owner=‘LIUTAO‘
6.
偽列
什麼是偽列?
Oracle中偽列就像表中的列但是它並沒有儲存在表中,偽列可以在表中查詢,但是不能增加,刪除,和修改。
常用的偽列有ROWID 和 ROWNUM
1. ROWID
2.ROWNUM
ROWNUM 是查詢返回的結果集中行的序號,可以使用它來限制查詢返回的行數
問題一:
資料表
--查詢自然順序查詢第記錄
1 select * from 2 (3 select STUDENT.*,ROWNUM rn from STUDENT4 )temp5 where rn=5
--分頁查詢第二頁的4-5條記錄
1 select * from2 (3 select temp.*,ROWNUM rn from 4 (5 select * from STUDENT6 )temp7 where ROWNUM<=68 )9 where rn>=4
--between and寫法
1 SELECT * FROM 2 (3 SELECT A.*, ROWNUM RN 4 FROM (SELECT * FROM STUDENT) A 5 )6 WHERE RN BETWEEN 4 AND 6
Oracle資料庫基礎