You are on page 1of 6

Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.

net/chu-de/21385/Toi-hoc-ORACLE/

Trang chủ Diễn đàn chính Lưu trữ web Tên miền Nhập từ khóa cần tìm

Giải trí trực tuyến | Thư viện | Trợ giúp | Thành viên | Lịch ghi nhớ

Tài khoản

Mật khẩu

Quên m ật k hẩu

Đăng ký m ới

:: TRANG CHỦ | Diễn đàn khoa học kỹ thuật > CÔNG NGHỆ THÔNG TIN > Cơ Sở Dữ Liệu > Oracle

Tôi học ORACLE

Outline · [ Standard ] · Linear+ Theo đõi chủ đề này Gửi email về chủ đề này Tạo bản in

muathubuon Sep 14 2004, 11:36 AM Gửi vào: #1

Phần 1: Giới thiệu

Oracle là cơ sở dữ liệu hàng đầu thế giới, đó là điều mà chúng ta không cần phài bàn cãi. Tuy nhiên, ở Việt Nam Oracle vẫn chưa được
dùng nhiều.

Trong loạt bài viết này, tôi sẽ lần lượt trình bày nguyên nhân tại sao chúng ta chọn Oracle, sau đó sẽ đến các bài về Setup Oracle,
Create Database và một số hàm-lệnh cơ bản của Oracle, PLSQL.

Hạ Sĩ Tôi không có tham vọng rằng sau loại bài viết này các bạn sẽ sử dụng thành thạo Oracle, cũng không dám múa rìu qua mắt thợ.
Chỉ mong giúp các bạn bước đầu làm quen với Oracle được dễ dàng hơn và có cơ sở để so sánh chọn cho mình một sảm phẩm thích hợp.
Nhóm: Thành Viên Tích Cực
Bài viết: 117 Với khả năng kiến thức còn rất nhiều hạn chế, nên khi trình bày có thể có nhiều sai sót, mong các bạn cùng trao đổi đóng góp ý kiến.
Tham gia: 12-June 04
------------------------------------
Thành viên thứ.: 9,566
Tài Khoản: $ 11788
Tại Sao chúng ta chọn Oracle ?

Nhiều người cho rằng Oracle chỉ sử dụng cho những Doanh Nghiệp (DN) lớn nên không thích hợp ở Việt Nam.

Điều này, theo tôi, là hoàn toàn sai lầm. Oracle không chỉ nhắm tới những DN lớn mà còn nhắm tới những DN trung bình và cho cả
những DN nhỏ.
Cụ thể là Oracle Server có đủ các phiên bản thương mại từ Personal, Standard đến Enterprise (ngoài ra còn có Oracle lite nữa).

- Về phía các DN: Oracle tỏ ra rất có ưu điểm như tính bảo mật cao, tính an toàn dữ liệu cao, dễ dàng bảo trì-nâng cấp, cơ chế quyền
hạn rỏ ràng, ổn định,...
Oracle cũng không quá đắc như các bạn nghĩ, nếu DN đã từng mua lisence của MSSQLServer thì sẽ thấy giá của Oracle cũng không
chênh lệch là bao, nhưng lợi ích có được lại rất lớn.
Còn nếu bạn "mua license" ở Tôn thất Tùng thì ..không có gì phải bàn !

- Về phía những nhà phát triển: Oracle cũng tỏ ra rất có ưu điểm như dễ cài đặt(?), dễ triển khai và dễ nâng cấp lên phiên bản mới.
Hơn nữa Oracle còn tích hợp thêm PL/SQL, là một ngôn ngữ lập trình có cấu trúc - Structure Language. Tạo thuận lợi cho các lập trình
viện viết các Trigger, StoreProcedure, Package. Đây là điểm rất mạnh so với các CSDL hiện có trên thị trường.
Oracle, ngoài các kiểu dữ liệu thông thường còn có các kiểu dữ liệu đặc biệt khác góp phần mang lại sức mạnh cho Oracle như Blob,
clob, Bfile, ...
Nếu bạn chỉ chạy thử, bạn cũng không cần lo đến vấn đề lisence vì có thể download Oracle từ trang của Oracle (technet.oracle.com).

- Ngoài ra, bạn có thể triển khai Oracle trên nhiều OS khác nhau (Window,Solaris, Linux,...) mà không cần phải viết lại code.
Có thể import một dumpFile (backupFile) từ một version thấp lên một version cao hơn mà không gặp bất cứ trở ngại nào ! (việc ngược
lại cũng có thể thực hiện được nếu như bạn không xài các newFeature so với version trước đó).

Mỗi người sẽ có sự lựa chọn riêng phù hợp với yêu cầu của mình, nhưng theo tôi, bạn sẽ không bao giờ phải hối hận khi đã chọn Oracle

muathubuon Sep 14 2004, 11:40 AM Gửi vào: #2

Phần 2: Setup and Create Oracle Database[/color]


Trong phần này chúng ta sẽ bàn về việc cài đặt Oracle 8.1.7 Server và tạo Database trên window NT.

-----------------------------------------------------------
[color=darkred]Chuẩn bị

Để cài đặt Oracle 8.1.7 Server for window NT chúng ta chuẩn bị:

Hạ Sĩ - Máy PC: cấu hình tàm tạm cở PIII 800Mhz, 256 Mb Ram, 10Gb HDD, CDRom. Nếu máy yếu hơn cũng không sao, chỉ chạy chậm hơn
một chút.
Nhóm: Thành Viên Tích Cực Cần khoảng 4 Gb trống.
Bài viết: 117
Tham gia: 12-June 04 - Hệ điều hảnh (OS): WinNTsvr_sp6/win2000/winXP
Thành viên thứ.: 9,566
Tài Khoản: $ 11788
- Đỉa chương trình Oracle 8.1.7 Enterprise Edition
Bbạn có thể download từ technet.oracle.com hoặc từ ... Tôn thất Tùng nếu ở Sài Gòn. Lưu ý nếu máy PIV bạn không xài được Oracle
8.1.7 bạn nên tìn bản 8.1.5

-----------------------------------------------------------
SETUP Oracle 8.1.7 Server

- Login vào OS bằng Administrator hoặc một user thuộc group Administrator.

- Bỏ CD vào, nếu máy không có autorun thì chọn và run file <cd>\setup.exe
Oracle viết chương trình setup bằng java, tuy nhiên chúng ta không cần quan tâm vì Oracle đã tính hợp sẳn jre trên CD rồi.

- Chúng ta bắt đầu setup với cửa sổ Welcome của universal installer
click next -->

- File Locations bạn gỏ vào:


HOME: OraHome81
Path : c:\Oracle\ORA81 (hoặc ổ đỉa khác nếu còn trống)
click next -->

- Available Product
Chọn option đầu tiên Oracle Enterprise Edition 8.1.7.0.0
click next -->

- Installation Types
Chọn Custom
Mudim v0.8 Tắt VNI Telex Viqr Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

1 of 6 12/11/2009 10:15 AM
Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.net/chu-de/21385/Toi-hoc-ORACLE/

click next -->

- Available Product Components


click next -->

- Component Location
click next -->

- Authentication Methols
click next -->

- Create Database
Chọn NO - chúng ta sẽ tạo database sau.
click next -->

- Summary
click Install

......... Chúng ta sẽ chờ vài ... chục phút để Oracle cài lên máy.
- Install
click next -->

Sau đó bạn có thể CANCEL tất cả các cửa sổ linh tinh khác và click Exit khỏi Installer

Bây giờ chúng ta đã cài đặt xong Oracle 8.1.7 Server, nhiệm vụ tiếp theo của chúng ta là tạo một database.

-----------------------------------------------------------
Create Oracle Database

Nhìn chung việc cài đặt cũng không có gì phức tạp, nó cũng giống như chúng ta cài MsOffice hay Age of King thôi. Điều chúng ta quan
tâm là tạo Database.
Những tham số nào chúng tôi không nói tới, bạn nên để nguyên đừng sửa lại.

- Vào Start\program\Oracle-OraHome81\Database Administration\Database Configuration Assistant

- Chọn Create a Database


click next -->

- Chọn Custom
click next -->

- Chọn Multipurpose
click next -->

- Chọn số connect tối đa tới Database của bạn trong cùng một thời điểm, nếu bạn để lớn quá Oracle sẽ hiểu là 1 !
click next -->

- Chọn Shared Server Mode


click next -->

- Select Option: Các Option này ít khi xài tới, tốt nhất là nên bỏ hết cho nhẹ.
click next -->

- Đặt tên Database và SID là ORAEDU (giống nhau)


Chọn compatible Parameter = 8.1.0
click next -->

- Đặt password cho user INTERNAL = oracle (sẽ không user INTERNAL nếu bạn cài Oracle 9i)
click next -->

- Các thông số về controlfile, datafile, ... giữ nguyên.


click next -->

- Dung lượng của các TableSpace (system, tools, ..) giữ nguyên.
Check vào Unlimited trong tất cả các tabs.

- click next cho tất cả 6 bước tiếp theo.

- click Finish để tạo Database.

... Chúng ta sẽ tiếp tục ngồi chờ trong vài ... chục phút nữa !

Khi tạo xong database, Oracle sẽ báo finish và cho chúng ta một số thông tin về database như SID, các user admin và password, ghi lại
các giá trị này.

-----------------------------------------------------------
Hoàn thành việc tạo Database

Để chắc chắn rằng Database của chúng ta đã được tạo, hãy vào
Start\control panel\services (hoặc vào ..control panel\Administrative Tools\Services nêu là win2000/XP)

Tìm Services: OracleServiceORA và chắc rằng nó đã được started.

Như vậy chúng ta đã tạo xong Database, bây giờ bạn có thể mở sqlplus và gỏ vào system\manager để connect vào Oracle.
Gỏ lệnh:
SQL> select 'Bay gio la ' || to_char(sysdate,'hh24 "gio" mi "phut"') tictac from dual;

kiên trì chờ nhé 01.gif

Chúc các bạn thành công.

9i coi bài của comaynz.

muathubuon Sep 14 2004, 11:42 AM Gửi vào: #3

Phần 3: Connect to Oracle Database


Ở bài trước chúng ta đã tạo được Oracle Database,
trong bài này chúng ta sẽ bàn về cách để kết nối với Database của Oracle, bao gồm:

- Oracle Net8
- Tạo Listener
- Tạo TNS Name

Hạ Sĩ --------------------------------------------------
Net8 là gì ?
Nhóm: Thành Viên Tích Cực
Bài viết: 117 - Net8 là một sản phẩm do Oracle cung cấp, sử dụng TNS (Transparent Network Substrate) và những
Tham gia: 12-June 04
giao thức mạng cơ bản để tạo kết nối giữa Client với Server và thiết lập một Oracle session.
Thành viên thứ.: 9,566
Tài Khoản: $ 11788
Mudim v0.8 Tắt VNI Telex Viqr Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

2 of 6 12/11/2009 10:15 AM
Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.net/chu-de/21385/Toi-hoc-ORACLE/

- Net8 hổ trợ các Protocol như: TCP/IP, Novell SPX/IPX, IBM LU6.2 và DECnet. Tuy nhiên, trong

phạm vi bài này, chúng ta chỉ bàn đến TCP/IP vì tính phổ biến của chúng.

- Net8 không phục thuộc vào Platform, nghĩa là từ máy PC chạy window của chúng ta có thể sử dụng

Net8 để connect ngon lành vào một máy xài Linux hay Solaris...

- Các nhiệm vụ chính của Net8 là:


+ Connection: Đóng mở connection giữa Client và Server dựa trên Network Protocol.
+ Data Transport: chuyễn các gói tin giữa Client và Server
+ Exception Handing

--------------------------------------------------
Các đối tượng tham gia Connect

+---------------------------------+
| SERVER |
+--------+ Net8 +----------+ +----------+ |
| CLIENT | ------------> | Listener | ----> | Database | |
+--------+ +----------+ +----------+ |
tnsname.ora | listener.ora |
+---------------------------------+

Để kết nối được từ Client tới Server chúng ta cần phải có:

- Tại Server: Tạo và khởi động listener để lắng nghe các connect từ client.
- Tại Client: Tạo TNS name (tên khác :alias, hostring) chỉ tới Server, Database cần connect.

---------------------------------------------------
Tạo LISTENER

Chúng ta sẽ tạo listener tại máy Server.


Vào
Start\programs\Oracle-OraHome81\Network Administration\Net8 Configuration Assistant

Khi cửa sổ config hiện ra, chúng ta sẽ chọn mục đầu tiên
Listener Configuration
kế tiếp, chúng ta cũng chọn Option: ADD

Các bước tiếp theo chúng ta sẽ chọn:


+ Listener: LISTENER (tên của Listener)
+ Network Protocol: TCP
+ Port: 1521 (default của Oracle-bạn cũng có thể chọn port khác nếu chưa có ai dùng)

Chúng ta đã tạo xong Listener cho Oracle


thông tin này được lưu trữ trong file listener.ora đặt trong thư mục:
<OracleHome>\NETWORK\ADMIN\listener.ora
(ở bài trước chúng ta đã chọn <OracleHome> là C:\Oracle\ORA81)

-----------------------------------------------
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.50.100)(PORT = 1521))
)
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\Oracle\ORA81)
(PROGRAM = extproc)
)
)

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

Để chắc chắn là Lisener đã được tạo, chúng ta vào trong SERVICES của Window để tìm
OracleOraHome81TNSlistener

Nếu service này chưa start, bạn chịu khó start nó lên,
cho nó startup Automatic để lần sau khỏi phải vào start lại.

Như vậy là chúng ta tạo được một Listener để Listen tại


Port: 1521
Server IP: 192.168.50.100 #đây là IP của máy chúng ta (cài Oracle Server)
Protocol: TCP

---------------------------------------------------
Tạo TNSNAME

-Trước khi tạo TNSname tại máy client, chúng ta phải cài lên đó Oracle Client.
Oracle Client nằm chung trên đĩa CD Oracle 8.1.7 Enterprise Edition chúng ta đã dùng để cài Oracle Server.
Tuy nhiên, khi cài đặt chúng ta sẽ chọn Option thứ 2 trong cửa sổ Available Product.
- Ở client, tối thiểu chúng ta phải cài Net8, Net8 Configuration Assistant, sqlplus.
Ngoài ra nên cài DBAStudio (tool để quản trị)

Nếu như chỉ có một máy cài Oracle Server, chúng ta sẽ tạo luôn TNSname trên đó mà không cần phải cài Oracle Client vì nó đã có sẳn
(coi như 2 trong 1 dzậy !)

Start Net8 Assistant giống như khi tạo Listener


Start\programs\Oracle-OraHome81\Network Administration\Net8 Configuration Assistant

Chúng ta sẽ chọn Option thứ 3: Local Net Service Name configuration


Tiếp theo, chọn Option ADD

Các bước tiếp theo chúng ta sẽ lần lượt chọn:


+ Service Name: ORAEDU (tên của SID chúng ta đã tạo trên Server)
+ Protocol: TCP
+ Hostname: 192.168.50.100 (Ip của máy server)
+ Port: 1521

Bạn có thể chọn Yes, Perform a test sau đó nhập vào system/manager, nếu các thông số khai báo đúng, chúng ta sẽ có kết quả
"connect success"

+ Net Service Name: EDU (đây chính là Alias/tnsname)

Sau khi hoàn thành các bước khai báo,


chúng ta đã có được một TNSName tên là EDU để connect tới Oracle Server

Thông tin về TNSName được lưu trong file tnsname.ora trong thư mục
<OracleHome>\NETWORK\ADMIN\tnsname.ora
Mudim v0.8 Tắt VNI Telex Viqr Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

3 of 6 12/11/2009 10:15 AM
Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.net/chu-de/21385/Toi-hoc-ORACLE/

Thông tin trong tnsname có dạng như sau


---------------------------------------------------
EDU =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.50.100)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ORAEDU)
)
)

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

Ghi chú:
- Trong file tnsname.ora chứa nhiều TNSname trỏ tới nhiều chổ chứ không riêng gì EDU.
- Chúng ta có thể tạo nhiều TNSname như EDU1, EDU2, EDU_A, EDU_B,... cùng trỏ tới ORAEDU.
- Để tạo một TNSname mới, chúng ta chỉ cần Copy và Paste nguyên đoạn trên xuống cuối file tnsname.ora, sau đó sửa chữ EDU thành
chữ khác là xong, thay vì phải mở Tool lên và làm lại các bước như trên.

---------------------------------------------------
Kết quả

Các bước chuẩn bị bên trên của chúng ta chỉ phục vụ cho một mục đích duy nhất:
Connect to Oracle Database

Bây giờ chúng ta sẽ xem thành quả của mình.


Mở SQLPlus:
Start\programs\Oracle-OraHome81\Application development\SQL Plus

Nhập vào
Username: system (đây là admin user)
Password: manager (defauld password)
Host String: EDU (đây là cái mà chúng ta làm từ đầu đến giờ)

Ghi chú:
- Tnsname EDU không phải chỉ để dùng riêng cho SQLPlus mà dùng chung cho tất cả các ứng dụng (có sử dụng chung Home tạo
tnsname) Connect tới Database của Oracle.
- Trong cửa sổ Login, có thề nhập 3 tham số cùng trong 1 ô text Username system/manager@EDU

---------------------------------------------------
Ngoài lề

- Chúng ta có thể connect tới Database mà không cần tạo Listener và Alias.
Tuy nhiên, điều này chỉ thực hiện được khi chúng ta ngồi ngay trên máy tạo Database.
- Để connect thay vì nhập đủ 3 tham số, chúng ta chỉ cần nhập Username\password.
- Nếu trên máy có 2 SID, thì khi connect bằng cách này, Oracle sẽ connect tới SID hiện hành.
- Có dùng thay cho dùng SQLplus trên Command Prompt, chạy file sqlplus.exe

Trong phần tiếp theo chúng ta sẽ xem xét tới các Objects của Oracle, tạo và quản lý user, sử dụng Tool DBAStudio.

--------------------
No sight is free of sadness. When one is sad, no sight is cheerful

Đau khổ mãi khi đã từng đau khổ,


Yêu không ngừng khi đã trót yêu thương

muathubuon Sep 14 2004, 11:44 AM Gửi vào: #4

Phần 4: Các Component của Database - sử dụng DBAStudio


Chúng ta lại tiếp tục với "Tôi học Oracle", trong phần này chúng ta sẽ bàn về cách tổ chức Database của Oracle, một số object cơ bản
và cách sử dụng chương trình DBAStudio để quản trị.

-----------------------------------
Oracle tổ chức Database như thế nào ?

- Trên mỗi máy (computer) có thể có nhiều SID nhưng không được trùng tên nhau.
Hạ Sĩ Ở phần trước chúng ta đã tạo được một SID tên là EDU.

Nhóm: Thành Viên Tích Cực


Bài viết: 117 +------------+
Tham gia: 12-June 04 | COMPUTER |
+------------+
Thành viên thứ.: 9,566
Tài Khoản: $ 11788
+---------------------|------------...
+---------+ +---------+
(RDBMS) | SID1 | | SID2 |
+---------+ +---------+
+-------------|---------- ...
+-------+ +-------+
| User1 | | User2 | (Database)
+-------+ +-------+

- Trên mỗi SID có nhiều Schema, mỗi Schema chứa trong một User, và đó là một mô hình ER có table, view, proc,...
Chúng ta thường quen gọi một SID là một Database của Oracle, nhưng đúng ra một User mới là một Database. Nếu bạn nào đã làm
quen với SQLServer thì 1 DATABASE trên SQLSERVER tương đương với 1 USER của Oracle.

- Trong khi SQLSERVER tách biệt rỏ ràng giữa 2 khái niệm "USER" và "DATABASE", nhiều người (user) sẽ cùng sở hửu và có quyền trên
1 tài sản chung (database) tuy quyền mỗi người có khác nhau.

- Trong Oracle đó chỉ là một, giống như một người (user) thì sẽ có những tài sản (database) riêng của họ.
Nếu USER2 muốn sử dụng tài sản của USER1 thì phải được USER1 cấp quyền, chúng ta sẽ bàn đến vấn đề phân quyền trong phần sau.

Sau khi chúng ta tạo Oracle Database (SID), Oracle sẽ tự tạo ra 2 user quản trị trên SID đó với tên và password được gán mặc nhiên. 2
user đó là:
1)
User: SYSTEM
Password: MANAGER

2)
User: SYS
Password: CHANGE_ON_INSTALL

Ngoài 2 user trên Oracle còn có 1 user để lấy dữ liệu demo


User: SCOTT
Password: TIGER

Lưu ý:
- Oracle không phân biệt chữ hoa và chữ thường đối với Username và Password
- Kể từ Tắt
Mudim v0.8 Oracle9i,
VNIOracle đã bỏ điViqr
Telex User SYS
Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

4 of 6 12/11/2009 10:15 AM
Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.net/chu-de/21385/Toi-hoc-ORACLE/

Chúng ta sẽ lần lượt làm quen với các Object của Oracle song song với tool DBAStudio.

----------------------------------------------
DBAStudio là gì ?

-Oracle hổ trợ cho chúng ta hầu hết các thao tác để quản trị DATABASE thông qua các câu lệnh DCL, DDL thông tin trong Dictionary
views. Tuy nhiên, việc viết các câu lệnh với 1 loạt các tham số đi kèm, có khi đến nửa trang giấy, không phải là chuyên dễ dàng.

Chính vì lý do đó mà Oracle đã làm một số tool để tiện cho việc quản trị Database, trong số đó có DBAStudio.

- DBAStudio và một số tool khác của Oracle được viết bằng Java, do đó chúng ta không cần phải lo lắng khi thao tác trên các OS khác vì
chúng không có sự khác nhau đáng kể nào.

- Điểm bất lợi của việc dùng tool là chúng ta phải tốn không gian đỉa cứng để cài đặt chúng, và khi thực hiện những thao tác đơn giản gỏ
lệnh sẽ nhanh hơn dùng tool.
Việc lựa chọn cách nào là tùy ở chúng ta, tuy nhiên, lúc mới làm quen với Oracle, tốt nhất nên xài tool cho tiện !

DBAStudio sẽ được tự động cài đặt theo Oracle ngay cả khi bạn cài đặt Server hoặc Client, trừ khi bạn chọn Custom và bỏ nó đi.

----------------------------------------------
Khởi động DBAStudio

Để khởi động chúng ta sẽ vào:


Start\program\Oracle - OraHome81\Database Administration\DBA Studio

Chúng ta sẽ chọn khởi động DBA Studio ở mode STANDALONE trong cửa sổ Manager Login.
Vì là lần đầu tiên ta mở DBA Studio, nên chúng ta sẽ nhận được cửa sổ "Add Database to Tree", mặc nhiên tên những Alias trong file
tnsname.ora sẽ được đọc lên đây (ở bài trước chúng ta đã tạo được một Alias tên EDU), chọn EDU và nhấn OK.

Trên Tree bên trái của chúng ta đã có tên EDU, double click vào để login vào Database, chúng ta sẽ login vào bằng user
SYSTEM/manager

----------------------------------------------
Sử dụng DBA Studio

Sau khi login, trên Tree sẽ có các mục như:


1. Instance: quản lý các Session, resource cho Session, ...
2. Schema: quản lý các table, view, store procedure, ...
3. Sercurity: quản lý user, role
4. Storage: quản tablespace, datafile, controlfile, ...
5. ...

Trong phạm vi bài này, chúng ta sẽ lần lượt xem các chức năng thường dùng trong các mục 1, 3 và 4

1. Instance:

- Khi bất kỳ một ứng dụng nào kết nối với database, ngay sau khi login chúng đã bắt đầu một SESSION và thời gian sống của SESSION
sẽ kéo dài cho đến khi logout khỏi database hoặc Session bị Timeout.

Vì một lý do này đó mà ứng dụng của chúng ta chết giữa chừng mà không logout, session sẽ không được giải phóng cho đến khi
timeout.

Khi vào trong mục này (Instance\sessions) chúng ta sẽ biết được có bao nhiêu session hiện đang mở, ai mở và dùng ứng dụng nào.
Ngoài ra chúng ta cũng có thể "KILL" bất kỳ session nào nếu cần.

2. Schema:

- (chúng ta sẽ bàn tới phần này trong các bài sau)

3. Sercurity:

Như đã nói ở trên, mỗi DATABASE (SID) của Oracle có nhiều USER, mỗi user có username/password sở hữu một schema và có các
quyền khác nhau.

Có 2 loại quyền: "System Privileges" và "Object Privileges"

+ System Privileges: Các quyền để truy xuất tới DATABASE


+ Object Privileges: Các quyền thao tác trên các Database Objects như Table, View, Store Procedure, ...

- Một nhóm các quyền được tập họp lại chung trong một group gọi là ROLE.
- Một ROLE có thể chứa trong nó nhiều quyền và nhiều ROLE khác.

- Khi một user được tạo ra, ít nhất phải có quyền CREATE SESSION (System Privilege) thì mới login vào được.
Thông thường khi tạo một user để "làm việc được" người ta sẽ gán (grant) cho nó 2 Role là CONNECT, RESOURCE
2 Role này sẽ bao gồm các quyền như CREATE SESSION, UNLIMITED TABLESPACE, CREATE TABLE, CREATE VIEW, ...

-Chúng ta sẽ tạo user bằng cách right click vào note USER (Sercurity\user), chọn Create
và nhập vào tên user và password (vd: user1/user1pwd)
ở tab tiếp theo chúng ta chọn thêm role Resource cùng với role Connect có sẳn.

- Tất cả các thao tác này của chúng ta tương đương với các câu lệnh DDL, để xem các câu lệnh này click vào button "SHOW SQL".
Chúng ta có thể chọn OK, hoặc copy các câu lệnh này ra SQLplus để chạy, kết quả hoàn toàn không có gì khác nhau.

- Để thay đổi thông tin của 1 user nào đó, chúng ta sẽ click chọn user đó và chọn lại các thông tin, để thực tập bạn hãy đổi lại Password
cho user SYSTEM và SYS (nhớ ghi lại password mới !)

- Tương tự, bạn hãy tìm hiểu thêm việc grant các quyền Object.

- Để chắc chắn rằng mình đã tạo được một user, bạn hãy mở SQLPlus lên nhập và username/password (user1/user1pwd) cùng với alias
EDU.

4. Storage

- Oracle chứa dữ liệu trong các "kho" chứa được gọi là TABLESPACE.
- Mỗi TABLESPACE chứa ít nhất 1 hoặc nhiều DATAFILE.
- Mỗi DATAFILE là một file của Hệ Điều Hành được chứa trên HDD, các file này thường có phần extention là .ORA hoặc .DBF

- Mặc nhiên, Oracle phải có các Tablespace như SYSTEM, RBS, TMP, INDEX, USERS.

-Chúng ta nhớ lại ở phần trước, khi Create DATABASE, Oracle đã hỏi chúng ta định các option cho các TABLESPACE này.

- Chúng ta có thể sử dụng các TABLESPACE có sẳn hoặc cũng có thể tạo thêm các TABLESPACE khác, nhưng dù sao cũng đừng "liều" xóa
đi các TABLESPACE đó !

- Để tạo Tablespace, bạn right click lên mục storage\tablespace

- Nếu Tablespace của chúng ta bị đầy, hoặc sắp đầy, chúng ta có thể mở rộng chúng.
Có 2 cách để mở rộng, thứ nhất là tăng kích thước của Datafile hiện có lên, thứ 2 là tạo thêm một datafile mới
(right click storage\tablespaces\<tbname>\datafiles)

Có một số option cho datafiles như:


- online/offline : sử dụng hoặc tạm ngưng sử dụng datafile này
- filesize : kích thước của datafile (Kb/Mb)
- autoextend : tự động mở rộng nếu tablespace bị đầy và còn đỉa trống
- increment:
Mudim v0.8 Tắt kínhVNI thước mỗi lần Viqr
Telex auto extend
Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

5 of 6 12/11/2009 10:15 AM
Tôi học ORACLE | Diễn đàn khoa học kỹ thuật http://www.khkt.net/chu-de/21385/Toi-hoc-ORACLE/

- maximum size: kích thươc tối đa cho datafile

Ở phần trước, khi chúng ta tạo USER, có option để chọn default tablespace và temporary tablespace nhưng chúng ta đã bỏ qua, bây giờ
thì chúng ta có thể quay ngược lại để xem chúng rồi !

-Ngoài các Tablespace còn có các Controlfiles, redolog group , rollback segment, ... các bạn có thể tìm hiểu thêm.

- Oracle còn có một file quang trọng nửa, nhưng không có trong đây, đó chính là file init, nằm trong thư mục
<oraclehome>\admin\<sid>\pfile\init<sid>.ora
trong trường hợp của chúng ta là:
c:\Oracle\ORA81\admin\ORAEDU\pfile\initoraedu.ora

--------------------
No sight is free of sadness. When one is sad, no sight is cheerful

Đau khổ mãi khi đã từng đau khổ,


Yêu không ngừng khi đã trót yêu thương

Điên vào từ khóa Tìm chủ đề « Chủ đề cũ hơn Oracle Chủ đề mới hơn »

1 Thành viên đang xem chủ đề (1 khách và 0 người giấu mặt)

0 Thành viên:

|---- Oracle Chuyển

Quảng cáo: iphone | Quảng bá website | Thiết kế website | Dieu Hoa | Vietnam Holidays | Giải trí | Công nghệ số | Phim | Thời trang | Điện hoa,hoa tươi | Game flash

Bản rút gọn: Tôi học ORACLE Time is now: 11th December 2009 - 10:12 AM

Diễn đàn KTCN được phát triển bởi BabyWolf


Dựa trên nền Invision Power Board(Trial) v2.0.0 © 2009 IPS, Inc.

Mudim v0.8 Tắt VNI Telex Viqr Tổng hợp Tự động Chính tả Bỏ dấu kiểu mới [ Bật/Tắt (F9) Ẩn/Hiện (F8) ]

6 of 6 12/11/2009 10:15 AM

You might also like