|
|
 |
|
單單了解系統架構,並不一定會使你成為一個很好的
DBA,如果還能使用一些工具來協助,相信能在系統的管理上有很大的助益。除了前面介紹的系統架構外,Oracle
系統本身有些相關的設定與工具,將於下面章節中一一介紹:
|
 |
|
 |
當在 SQL*Plus
的環境下,執行 SQL 指令時,發生錯誤。 |
 |
可直接鍵入“ed”或“edit”進入 SQL*Plus 的內定編輯器,一般內定的編輯器為記事本。 |
 |
在編輯器中可直接修改錯誤,然後儲存後離開,即可回到 SQL*Plus 畫面。 |
 |
在 SQL*Plus
中,直接鍵入“RUN”或“ / ”,即可執行修改後的 SQL 指令。 |
|
 |
|
經由 Oracle 的 Net8 可以讓
Client 端的應用軟體與 Server 端在不同的平台、不同的協定上進行溝通與資料交換。在 Server 端的 Oracle Home
目錄下之 Network\Admin 的 Listener.ora 設定 Oracle
Listener,主要描述資料庫主機所有的名稱、網址與資料庫的 SID。在 Client 端的 Net8\Admin 之目錄下的
Tnsnames.ora 主要描述每個連線主端 Server 端的資訊並給予一個名稱,以便於連線時指名之用。因為 Windows
2000、Windows NT 或其他平台的 Oracle 的 Listener 會因系統啟動時,會自動啟動,但是安裝在 Windows 98
的 Oracle 的 Listener 並不會自動啟動。所以必須利用手動啟動 Windows98 上的 Listener,以便 Client
端連線。
|
 |
啟動 Oracle
Database Instance。 |
 |
在 Oracle Home
目錄下的 BIN 中執行 lsnrctl.exe。 |
 |
執行後會出現下圖,直接鍵入
start 指令來啟動 Listener。 |
 |
我們可以鍵入 status
指令來得知 Oracle Listener 的目前狀況。 |
 |
Oracle Listener
的指令,除了上述的 start 與 status 外,還有其他指令,例如:stop(停止 Listener)。可以利用 help
指令來列出所有的指令。 |
|
|
|
 |
|
經由 Oracle 的 Net8 可以讓
Client 端的應用軟體與 Server 端在不同的平台、不同的協定上進行溝通與資料交換。在 Client 端的 Net8\Admin
目錄下之 tnsnames.ora 設定有遠端連線資料庫主機的資料與連線模式資料,例如:遠端連線資料庫主機的 listener 的位址、SID
等等。一般的使用者並不一定會設定 tnsnames.ora,所以 Oracle 提供 Net8 Easy Config 工具來協助。
|
 |
執行 Net8 Easy
Config。 |
 |
輸入 Net
服務名稱,例如:jp8i,然後再點選下一步。 |
 |
選擇 TCP/IP
通訊協定,然後再點選下一步。 |
 |
在主電腦名稱欄位中輸入主電腦的
Domain name 或
IP,例如:163.26.222.46,連接埠號碼必須與連線的主電腦相同,有關於連接埠號碼可查看主電腦的 Oracle Home
下之 network 目錄中的 Listener.ora 設定,一般用 Oracle 內定的 1521 即可,然後再點選下一步。
|
 |
依照主電腦的版本選擇並輸入
SID,例如:jp8i, 然後再點選下一步。 |
 |
點選測試以驗證設定是否正確,然後再點選下一步。 |
 |
連線測試是以剛才的設定並以系統內定的使用者 SCOTT
登錄,若是成功,可點選“關閉”以結束連線測試,如果欲以其他使用者連線測試,則必須點選變更登入。 |
 |
如果測試成功,則點選“完成”即可。 |
 |
設定好了 Net8 Easy
Config 後,可利用 SQL*Plus 連線。 |
 |
在使用者名稱欄位中輸入使用者名稱與密碼,例如:scott,並在主機字串中輸入剛剛設定的服務名稱,例如:jp8i。 |
 |
成功連線後的畫面。 |
|
|
|
 |
|
有時候,因為版本不同,Oracle系統並沒有提供 NET8 Easy Config 這個工具,而提供 NET8 Configuration
Assistant 工具,它的設定也與 NET8 Easy Config 類似。
|
 |
|
一般在 Windows 98 環境下安裝
Oracle 8i Personal Edition,並沒有一併安裝類似 DBA Studio 或 Enterprise Manager
系統工具來協助使用者管理系統,必須再安裝 Enterprise Manager for Windows98 工具,雖然如此,但是可利用
Oracle 8i Navigator
來作簡易系統操作。它雖然不能做類似建立資料庫、建立表空間等等重大的資料庫動作,但是對於其他系統操作,例如:建立使用者、建立表格、同義字等等資料庫綱要動作卻也相當容易。
|
 |
從開始-->程式集-->Oracle-OraHome81-->Application Development-->選擇進入
Oracle 8i Navigator。 |
 |
進入 Oracle 8i
Navigator 畫面後,從左邊目錄區開啟 Oracle 8i Personal Edition。 |
 |
按下 Local
Database 啟動 Local Database。 |
 |
立即出現啟動連結畫面。 |
 |
連結成功後,Local
Database 的圖示會改變,並出現“+”號。 |
 |
點選 Local
Database,右邊就會出現 Local Database 的內容。 |
 |
點選左邊 Local
Database 底下的 Table,右邊就會出現存在資料庫中所有的表格名稱及表格擁有者,左上角並出現可以自行加入新表格的圖示。 |
 |
除了利用步驟7 的方法外,可由
File-->New Table 建立新的表格。 |
 |
Oracle
系統會提供表格精靈或手動兩種方法,你可以選擇表格精靈並按“OK”。 |
 |
輸入欲建立之表格名稱與選定該表格之擁有者,點選“下一步”。 |
 |
輸入欲建立之欄位名稱(deptno)、型態(NUMBER)、大小
(2) 及欄位比例(0 為自動),完成後點選“Insert”選項,即可建立一個欄位。 |
 |
重覆步驟11,建立所需的欄位。 |
 |
重覆步驟11,建立所需的欄位。若已建立全部欄位時,選取“下一步”。 |
 |
設定個体整合限制中的欄位條件,例如:設定 empno 欄位不得為虛值(null) 及必須是唯一值(Unique)
等等,完成後,選取“下一步”。 |
 |
因為我們設定此新增表格的擁有者為 SCOTT,所以 Oracle 系統要求輸入 SCOTT
密碼,以確保系統的安全性。輸入密碼後,選擇“OK”即可。 |
 |
此步驟為設定參考整合限制,例如:建立候選鍵。 |
 |
此步驟為設定主鍵,點選要建立之主鍵,例如:將 empno 設定為主鍵後,按“下一步”。 |
 |
此步驟為設定欄位的先後順序,設定好後就選取“下一步”。 |
 |
此步驟為詢問使用者是否要立即輸入資料,例如:選擇完成後繼續鍵入表格資料,並按下“完成”。 |
 |
在表格中鍵入各欄位資料,全部資料輸入後,選取右上角的關閉視窗的按鈕。 |
 |
在出現的視窗中,選取“是”,以儲存所建立之資料。 |
 |
回到 Navigator
的畫面中,我們可以在 Table 中發現表格 TEMP,它的擁有者為 SCOTT。如圖所示 |
 |
選取 Local
Database 中之
View,右邊就會出現存在資料庫中所有的視觀表格(VIEW),左上角並出現可以自行加入新的視觀表格(VIEW) 的圖示。 |
 |
除了利用步驟23
的方法外,也可以利用本步驟建立一個新的視觀表格,選取 File-->New View。 |
 |
選取 Local
Database 中之使用者(User),右邊就會出現存在資料庫中所有的使用者,左上角並出現可以自行加入新使用者的圖示。 |
 |
除了利用步驟25
的方法外,可由 File-->New-->New User 建立新的使用者。 |
 |
選擇一般(General)
頁籤,輸入新使用者姓名,(例如:guest)、密碼並在確認一次密碼。 |
 |
選擇角色╱系統權限(Roles╱Privilege) 頁籤,將角色╱系統權限 (例如:RESOURCE) 加入。 |
 |
選定好了系統權限或角色後,選取“確定”。 |
 |
回到 Navigator
的畫面中,我們可以在 User 中發現新的使用者 GUEST。如圖所示 |
 |
點選左邊 Local
Database 底下的角色(Role),右邊就會出現存在資料庫中所有的角色,左上角並出現可以自行加入新角色的圖示。 |
 |
除了利用步驟31
的方法外,可由 File-->New-->New Role 建立新的表格。 |
 |
選擇一般(General)
頁籤,輸入角色名稱,例如:students。 |
 |
選擇角色╱系統權限(Roles╱Privilege) 頁籤,加入所需要的角色或系統權限,例如:CONNECT、RESOURCE
等角色,再選擇“確定”。 |
 |
回到 Navigator
的畫面中,我們可以在 Role 中發現新的角色 STUDENTS。 |
|
|
|
 |
|
Oracle Enterprise
Manager 是 ORACLE 提供的系統管理工具,它以圖解與簡易的精靈幫助使用者管理資料庫系統。它主要分為:Instance
Management、Schema Management、Security Management 與 Storage Management
四大部份。
|
1. 登錄
Oracle Enterprise Manager |
 |
執行 Enterprise
Manager Console,點選“Launch standalone”,然後點選“OK”。 |
 |
在畫面的左上角點選資料庫,然後輸入使用者的名稱與密碼。 |
 |
進入後,所點選的資料庫下會出現
Instance, Schema,Security 與 Storage 四部分,左方為系統的工具列,主要為
Connect、Save list、Refresh、Show Dependencies、Create、Create Link 與
Remove 等操作。 |
|
|
2. Instance Management 主要是用來:(1) 啟動(Start up) 或關閉(Shut down)
資料庫系統,(2) 查詢(View) 或編輯(Edit) 所有的起始變數值,(3) 管理已儲存的 config(設定),(4) 管理使用者的
Session(連線),(5) 監視需要長時間執行的執行運作(Operation)。 |
 |
點選 Instance
Management 的畫面。 |
 |
開啟 Instance
後,分為 Configuration、Sessions、Resource Consumer Groups 與 Resource
Plans 四個項目。點選 Configuration 項目,畫面右方的部分則分為 「一般」、「記憶體」 、「復原」 與
「資源監督器」與「還原」 四個頁籤。其中「一般」則顯示目前資料庫 狀態的資訊。 |
 |
「記憶體」
頁籤顯示目前資料庫的記憶体之狀態的資訊。 |
 |
「復原」
頁籤顯示資料庫備份的資訊。 |
 |
「資源監督器」
頁籤顯示監控資料庫資源的狀態。 |
 |
Session
項目顯示目前的連線(Session),其中 Session id 9 為目前 Oracle Enterprise Manager
連線的 Session,而 Session id 12 則為使用者 student利用 SOL*Plus 連線的
Session。 |
 |
點選其中一個
Session,例如 Student,則畫面右方的部分出現 Session 的詳細資訊,例如:Session
id、使用者名稱、何時登錄(login)、使用的應用軟体等等。 |
 |
Resource
Consumer Groups 項目主要是指定使用者為某個 Resource Consumer Groups 中的一個
Group 的成員或是將某使用者由某個 Resource Consumer Groups 中移除。 |
 |
Resource Plans
項目是將系統資源分配給每個 Resource Consumer Groups。 |
|
|
3. Schema Management 主要是用來管理綱要物件(Schema Object),例如:表格(Table)、索引(Index)、視觀表格(View)
與 Oracle8 物件。使用者可以新增、更改與刪除綱要物件(Schema
Object),並且可以查詢綱要物件間的相依性(Dependency)。 |
 |
點選 schema
項目,會列出資料庫的所有使用者。 |
 |
點選其中一個使用者,畫面的右方會顯示該使用者所擁有的資料庫物件,例如:SCOTT。 |
 |
點選 Table
項目,會顯示使用者所擁有的表格與表空間所在。 |
 |
利用左方的工具列,可以新增表格。 |
 |
點選使用者中的某一表格,畫面右方即顯示該表格詳細資料的 General、Constraints、Storage、Options
與 Statistics 五個頁籤。其中 General 頁籤顯示該表格的欄位資料,例如:使用者 student 的表格
Dept 有 Deptno,Dname 與 Loc 三個欄位。 |
 |
Constraints
頁籤顯示該表格的整合限制,例如:表格 Deptno 中設定了主鍵 Deptno。 |
 |
Storage
頁籤顯示該表格的儲存的詳細情況。 |
 |
其他的 Database
Schema 也與表格(Table) 類似,例如:View。 |
|
|
4. Security Management 主要是用來 (1) 建立使用者(user)、角色(role) 等設定資料,(2)
更改使用者(user)、角色(role) 等設定資料,(3) 刪除使用者(user)、角色(role) 等設定資料,(4)
授權系統權限或角色給予資料庫中的使用者或角色。 |
 |
點選
Security,會展開並顯示 Users、Roles 與 Profiles 三個項目。 |
 |
點選 Users
項目,右方會顯示 Database 的所有使用者資訊。 |
 |
點選其中一個使用者並展開,會出現 Roles Granted、System Privileges Granted 、
Object Privileges Granted 與 Comsumer Groups
Grant,而畫面右方並顯示其詳細資料的頁籤。例如:對使用者 Student 而言,他被給予了 CONNECT、NEWROLE
與 RESOURCE 三個角色,而且被給予了 UNLIMITED TABLESPACE 系統權限,和對於使用者 scott
的表格 Emp 之 INSERT 、SELECT 與 UPDATE 物件權限,而畫面右方的 General
頁籤顯示使用者的一般資訊之詳細資訊,例如:Student 的內定表空間為 USERS 與暫存表空間為 TEMP。 |
 |
Role
頁籤顯示使用者被授予之角色的詳細資訊,例如:Student 被授予的角色有 CONNECT、NEWROLE 與
RESOURCE,並擁有 NEWROLE 的 ADMIN OPTION 權限。 |
 |
System
Privileges 頁籤顯示使用者被授予之系統權限的詳細資訊,例如:Student 被授予的系統權限有 AUDIT
SYSTEM 與 UNLIMITED TABLESPACE 系統權限,並擁有 AUDIT SYSTEM 的 ADMIN
OPTION 權限,其中 UNLIMITED TABLESPACE 的系統權限是因為 Student 被授予 RESOURCE
角色而獲得的。 |
 |
Object
Privileges 頁籤顯示使用者被授予之物件權限的詳細資訊,例如:Student 被授予的物件權限為對於使用者 scott
的表格 Emp 之 INSERT 、SELECT 與 UPDATE 物件權限,並有 SELECT 的 Grant Option
權限。 |
 |
Roles 與
Profiles 兩項目的內容與設定,也與使用者(User) 類似。 |
|
|
5.
Storage Management 主要用來管理資料儲存物件,例如:tablespace、rollback
segments、datafiles 與 redo log。利用 Storage Management 來建立或廢除儲存物件;為
tablespace 建立 datafile 與 rollback segment;使資料儲存物件上線或離線與顯示資料儲存物件之間的相依性。 |
 |
展開 「儲存」 並點選
「控制檔」,畫面右方會顯示目前的控制檔的詳細資訊。 |
 |
點選 「表格空間」
並展開,畫面右方會顯示目前的表空間的詳細資訊。 |
 |
點選其中一個表空間,畫面右方會顯示「一般」與「儲存」二個頁籤,其中「一般」頁籤顯示該表空間的詳細資訊,例如:表空間 Users
的詳細資訊。 |
 |
頁籤「儲存」顯示該表空間的儲存狀態。 |
 |
點選「資料檔」並展開之,畫面右方會顯示目前的 Datafiles 的詳細資訊,例如:表空間(Tablespace)
的使用比例與其對應的 Datafiles。 |
|
|