Oracle Introduction
Transcript of Oracle Introduction
-
Oracle
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
Oracle?OracleOracleOracle9i Server
-
Oracle1977Redwood Shores901452000200053110143http://www.oracle.com/tw http://otn.oracle.com
-
Oracle?
-
Oracle9i Server Data AccessibilityProcedural CapabilitiesDistributed ProcessingParallel QueryEnterprise Manager
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
OracleOracle Oracle Oracle Database instanceDatabase filesOracle
-
OracleOracle Oracle Oracle Database instanceDatabase filesOracle
-
Oracle A databaseA instanceClient ABCB databaseB instanceClient DEFC databaseC instanceClient GHI
-
Oracle Oracle Instance Instance Instance Process DatabaseInstanceDBA
-
Oracle Oracle Oracle DBADBA (SYSSYSTEM)Oracle InstanceTuning
-
Oracle ClientSQLPLUSUser processProcessSQLServer processServer processResultServer processparseSQLSGAData bufferUser process
-
PMONLCKNRECORECOSGAShared PoolDatabase Buffer CacheRedo Log BufferServerUser
-
OracleOracle Oracle Oracle Database instanceDatabase filesOracle
-
Oracle Oracle instanceSGAOracle ProcessDatabase filesDatafile Redo log fileArchived fileControl file
-
Oracle
-
OracleOracle Oracle Oracle Database instanceData filesOracle
-
Database instanceOracle instanceClientServer( SGA, System Global Area ) Server Client Background process Oracle instance
-
Oracle Instance SGAShared PoolDatabase Buffer CacheRedo Log BufferOracle processes
-
Mount Oracle instanceOracleinstancemountmountsession
-
System Global Area (SGA)OracleSystem Global Area (SGA)SGA Background Process ()Oracle Instance ()
-
System Global Area (SGA)SGAShared PoolDatabase Buffer CacheRedo Log BufferShared PoolDatabase Buffer CacheRedo Log Buffer
-
Shared PoolShared Pool Library CacheDictionary Cache(control structures)SQLOracle(parse)(parse treeexecution plan)
-
Library CacheLibrary CacheShared SQL AreaPrivate SQL AreaPL/SQL (Control structures)Library CacheSQLPL/SQLSQLCompileSQL parse tree
-
Data Dictionary CacheData Dictionary Cache(User Process)Oracle9iSQL
-
Database Buffer CacheSQLCacheOracleDatabase Buffer CacheI/OCache
-
Redo Log BufferRedo log bufferRedo log fileRedo Log BufferOracleRedo Log BufferOracle
-
Process()OracleProcess User Process Oracle tools code Application Oracle Process Oracle server code Server process Background process
-
User ProcessSQLPro*COracle ToolsSQL*plusOracle FormOracle User Process
-
Oracle ProcessOracle ProcessServer ProcessBackground Process
-
Server ProcessServer ProcessUser Process(request)OracleUser ProcessServer ProcessServer ProcessUser ProcessSQLUser Process
-
Server Process(1)Parse()SQL(2)DatafileData block()Oracle
-
Background processBackground processServer processBackground ProcessServerProcessOracle(Shutdown)
-
(Background process)(DBWR)(LGWR)(ARCH)(CKPT)(SMON)(PMON)(RECO)
-
(DBWR)Oracle(SGA)DBWRDBWR(Dirty Buffer)Data fileDBWRBuffer cacheDatafileDBWR
-
(LGWR)LGWR (Log Writer)(Commit)LGWRRedo EntriesOracleRedo EntriesRedo Log BufferCommitLGWRRedo EntriesRedo Log Buffer
-
(ARCH)ARCHLGWRARCH(Offline Redo Log)Oracle
-
(CKPT)DBWRCKPTCKPTDBWR(Data Blocks)(Database Buffer Cache)(Data File)CKPTDBWRCKPTCommit
-
(SMON)SMONCrash RecoveryOracle(System Monitor)SMON
-
(PMON)Process Monitor (PMON)ClientUser Process
-
(RECO)OracleOracleRecover (RECO) (Distributed Transaction)
-
OracleOracle Oracle Oracle Database instanceDatabase filesOracle
-
Database FilesDataFileRedo Log FileArchived FileControl File
-
DataFile()Oracle(Data File)(Database)(Table)(Index)(Data Files)Datafile
-
Redo Log Files()(Transaction)Commit()Oracle(Transaction)Redo Log FileCommit OracleCommit
-
Redo Log Files()Redo Log File MirrorCrashOracleRedo Log FileRedo Log FilesRedo Log FileRedo Log FileRedo Log File
-
Archived FilesArchivedRedo log fileRedo log fileOracleLogArchived fileOpen
-
Archived FilesRedo log file 1Redo log file 2Redo log file 3Archived file 1Redo log file 2Redo log file 3Log switching
-
Control Files()Control File(Database Name)(Data File)(Redo Log Files)Control file
-
OracleOracle Oracle Oracle Database instanceDatabase filesOracle
-
Oracle TablespaceData BlockExtentSegmentSchema objects
-
TablespaceTablespace systemTablespaceTablespaceDatabaseProceduresFunctionsPackagesTriggersSYSTEM
-
TablespaceTablespaceData FileData FileDBATablespaceORACLESYSTEM
-
Tablespace?OracleDBATablespaceOffline()TablespaceObject(Table)DBA
-
Tablespace
-
ORACLE(Table)(View)(Privilege)(Role)(Schema)TableViewSnapshotIndexClusterSequenceProcedureFunctionPackageTrigger
-
(Integrity constraint) (Audit)SQL
-
(Table)(View)(Base Table)ORACLEORACLE
-
(User Accessible Views)ORACLESYS
-
ORACLE(Default Tablespace)
-
ORACLESQL(View)ORACLESYSTEM (Tablespace)(Prefix)
-
PrefixUSER(Prefix)USER SQL> SELECT TABLE_NAME,TABLESPACE_NAME 2 FROM USER_TABLES;
-
PrefixALLALLSQL SQL> SELECT TABLE_NAME, TABLESPACE_NAME 2 FROM ALL_TABLES;
-
PrefixDBADBADBADBA(SYSSYSTEM)SYS DBA SQL> SELECT TABLE_NAME, TABLESPACE_NAME 2 FROM SYS.DBA_TABLES;
-
Data Block Data block OracleI/OData blockDB_BLOCK_SIZEO.S. blocks
-
Extent Data blockExtentTableOracle9i Extent
-
Segment ExtentSegmentSegmentObjectTable segmentIndex segment
-
Schema objectsOracleSchemaPeterPeterSchemaSchema objectsTableViewSynonymSequenceIndex
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
OracleNet Service
-
Oracle
-
Dedicated server process()OracleOracle serverClientUser processDedicated server process
-
Dedicated server process
-
MTSUser processDispatcherDispatcherCommon queueServer processshared poolidle shared processqueueserver
-
Multi-threaded server
-
OracleNet serviceNet serviceOracleNet serviceOracle(Transparent)(TNS, Transparent Network Substrate)(API)
-
Net service
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
SQL*PlusSQL*PlusSQL*PlusSQL
-
SQL*PlusSQLSQL*PlusOracleSQLSQLOracleANSIISOSQLSQL*Plus
-
SQL*PlusGUI
-
SQL*Plus
-
SQL*Plus
-
Oracle
-
SQLDescribe (DESC)describe
-
SQLSave save .sql
-
SQLGet Get Start Start SQL:
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
oracleInstance managementSchema managementSecurity managementStorage management
-
oracleInstance managementSchema managementSecurity managementStorage management
-
oracleInstance managementSchema managementSecurity managementStorage management
-
General
-
Memory
-
Recovery
-
oracleInstance managementSchema managementSecurity managementStorage management
-
Schema management TablespaceTableViewSynonymSequenceIndex
-
Tablespace
-
CREATE TABLESPACE DATAFILE SIZE [ DEFAULT STORAGE ] [ { ONLINE | OFFLINE } ] DATAFILE DEFAULT STORAGE INITIAL NEXT MINEXTENTS MAXEXTENTS PCTINCREASE
-
MY_SPACE20M 10K50K 10% 999
-
TablespaceDatafile
-
ALTER TABLESPACE [ ADD DATAFILE SIZE ] [ RENAME DATAFILE TO ] [ DEFAULT STORAGE ] [ {ONLINE | OFFLINE } ] [ {BEGIN | END } BACKUP ]DATAFILE (Online)(Offline)
-
MY_SPACE20M
-
DROP TABLESPACE [ INCLUDING CONTENTS [CASCADE CONSTRAINTS] ]INCLUDING CONTENTSCASCADE CONSTRAINTS
-
Table OracleTableTableRowColumnTableTablerecord
-
TableColumnCREATE TABLE $ # _ ORACLE
-
Oracle
-
CREATE TABLE [NULL|NOT NULL],[NULL|NOT NULL],
-
Example
-
View ()View()SQLView ViewViewTableView
-
View ()View
-
View CREATE VIEW [] AS SELECT [WITH CHECK OPTION]; SELECT [WITH CHECK OPTION] Selectwhere
-
View DROP VIEW ;(VIEW)SALESMAN SQL> DROP VIEW SALESMAN;
-
Synonym()Public()DBA Private(): SCOTT.EMP -> S_EMP [email protected] -> R_EMP
-
CREATE [PUBLIC] SYNONYM FOR [.] ;
SCOTTEMPEMPLOYEE SQL> CREATE SYNONYM EMPLOYEE 2 FOR SCOTT.EMP;
-
DROP [PUBLIC] SYNONYM ;
EMPLOYEE SQL> DROP SYNONYM EMPLOYEE;
-
Sequence()ORACLEORACLE(SEQUENCES)(Counter) CREATE SEQUENCE sequence_name []
-
SequenceORACLE20
sequence_name.CURRVAL sequence_name.NEXTVAL
-
Example (SEQUENCE) s_emp_id SQL> CREATE SEQUENCE s_emp_id 2 MINVALUE 1 3 MAXVALUE 9999999 4 INCREMENT BY 1 5 START WITH 26 6 NOCACHE 7 NOORDER 8 NOCYCLE;
-
Index ()(Unique)OracleB+-Tree
-
Index CREATE [UNIQUE] INDEX ON ( [ASC/DESC] [ , [ASC/DESC]] ); ORACLE [UNIQUE]() SQLORACLE
-
Index()ORACLE YESNO
-
Index()
-
Index()CREATE INDEXORACLE
-
Index()
-
oracleInstance managementSchema managementSecurity managementStorage management
-
ORACLEORACLE(Audit)(View)
-
(Privilege)ORACLE (System Privilege) (Object Privilege)
-
(System Privilege)UserRoleADMIN OPTIONGRANT ANY PRIVILEGEUserRoleORACLEGRANTREVOKE
-
(Object Privilege)
-
(User)quota(Privilege)
-
(CREATE USER) CREATE USER IDENTIFIED BY [ DEFAULT TABLESPACE ] [ TEMPORARY TABLESPACE ] [ QUOTA ON ] DEFAULT TABLESPACETEMPORARY TABLESPACEQUOTA
-
GUESTMY_SPACETEMP
-
ALTER USER IDENTIFIED BY [ DEFAULT TABLESPACE ] [ TEMPORARY TABLESPACE ] [ QUOTA ON ]ALTER USER
-
GUESTUSERS
-
(DROP USER ) DROP USER [ CASCADE ]CASCADE
-
GUEST
-
(Role)ORACLEORACLE
-
(Role)ORACLEDBASYSSYSTEMADMIN OPTIONDBACONNECTCREATE SESSIONORACLERESOURCE Base TableviewindexClusterSequence
-
(CREATE ROLE) CREATE ROLE [ IDENTIFIED BY ] IDENTIFIED BYSET ROLE
-
TESTROLE
-
ALTER ROLE [ IDENTIFIED BY ]ALTER ROLEADMIN OPTION
-
STUDENTS
-
DROP ROLE DROP ROLEADMIN OPTION
-
TESTROLE
-
GRANTGRANT ANY PRIVILEGEADMIN OPTIONGRANT ANY ROLEADMIN OPTION GRANT {|} TO {|| PUBLIC } [WITH ADMIN OPTION]
-
SYSTEMALTER ANY TABLE STUDENTSSTUDENTS
-
REVOKEGRANT ANY PRIVILEGEADMIN OPTIONGRANT ANY ROLE ADMIN OPTIONREVOKE {|} FROM {|| PUBLIC }
-
SYSTEM STUDENTSCREATE SESSIONCREATE TABLE
-
oracleInstance managementSchema managementSecurity managementStorage management
-
Storage managementStorage managementControl fileArchived fileDatafileTablespaceRedo log fileStorage management
-
Storage management
-
Storage management
-
oracleInstance managementSchema managementSecurity managementStorage management
-
Oracle RMAN (Recovery Manager)Online
-
RMAN Database
-
Restore & Recover
-
OutlineOracle?OracleOracleSQL*PlusOracleASPOracle
-
Example Oracle ODBC ora9012.exe
-
Oracle ODBC
-
ODBCODBCdatabaseID
-
ASP