Anton TopurovIT-DB 23 April 2013 Introduction to Oracle2
23 April 2013 Introduction to Oracle3
23 April 2013 Introduction to Oracle4
IT manager 23 April 2013 Introduction to Oracle5
App Developer 23 April 2013 Introduction to Oracle6
Database Administrator 23 April 2013 Introduction to Oracle7
System Administrator 23 April 2013 Introduction to Oracle8
IT manager 23 April 2013 Introduction to Oracle9
23 April 2013 Introduction to Oracle10
23 April 2013 Introduction to Oracle11
Introduction to Oracle12
23 April 2013 Introduction to Oracle13
Oracle Database Internals 23 April 2013 Introduction to Oracle14
23 April 2013 Introduction to Oracle15 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database
23 April 2013 Introduction to Oracle16 23 April 2013 Introduction to Oracle16
Oracle Database Server 23 April 2013 Introduction to Oracle17
Simplified view 23 April 2013 Introduction to Oracle18 System Global Area (SGA) Background Processes Data Files Control Files Online Redo Logs Server Processes PGA
Database Physical Layout 23 April 2013 Introduction to Oracle19 Data FilesControl FilesOnline Redo Logs
Physical to Logical 23 April 2013 Introduction to Oracle20 Data Files
Logical Layout 23 April 2013 Introduction to Oracle21 Block The smallest logical unit of data storage Extent Continios set of blocks Segment Type (table, index,..) Within a tablespace Tablespace Maps to one or more datafiles
23 April 2013 Introduction to Oracle22 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database
Oracle Instance 23 April 2013 Introduction to Oracle23 System Global Area (SGA) Background Processes Data Files Control Files Online Redo Logs
SGA contents 23 April 2013 Introduction to Oracle24 Buffer cache holds copies of data blocks server processes manipulate data from buffer cache (not directly from data files) managed using LRU algorithm (Least Recently Used) Shared pool shared memory constructs like shared SQL areas most recently executed SQL statements most recently used data definitions
Backup Background Processes 23 April 2013 Introduction to Oracle25 System Monitor Process Monitor Diagnosability Process Data FilesControl FilesOnline Redo Logs Database Writer Archived Redo Logs Redo Log ArchiverRedo Log WriterCheckpointer Buffer Cache System Global Area (SGA) Redo Log Buffer
23 April 2013 Introduction to Oracle26 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database
Real Application Clusters 23 April 2013 Introduction to Oracle27 Data Files Control Files Online Redo Logs SGA PGA SGA PGA Clusterware SGA PGA Clusterware
23 April 2013 Introduction to Oracle28 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database
Database Account Database user username/password to connect to database Privileges System and object privileges / roles CREATE SESSION, CREATE TABLE, CREATE PROCEDURE, CREATE JOB,… EXECUTE ON DBMS_LOCK, SELECT ON HR.EMPLOYEES, … Profiles CERN_DEV_PROFILE: 10 concurrent sessions CERN_APP_PROFILE: 400 concurrent sessions Space quota on tablespaces 23 April 2013 Introduction to Oracle29
Database vs Schema A Schema? Collection of objects Owned by a database user and has the same name as that user Each user owns a single schema. Good programming practice is to prefix objects by schema name 23 April 2013 Introduction to Oracle30 select name from hr.employees where id=7;
Connecting to Oracle Database 23 April 2013 Introduction to Oracle31 Listener port sqlplus ’(DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=node1.cern.ch) (PORT=10121)) (CONNECT_DATA= (SID=DEVDB11)))’ SGA Instance SID: DEVDB11 PGA node1 Data FilesControl FilesOnline Redo Logs
node2-v Connecting to RAC Database 23 April 2013 Introduction to Oracle32 Data FilesControl Files Online Redo Logs SGA PGA sqlplus ( DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=node2-v.cern.ch) (PORT=10121)) (ADDRESS= (PROTOCOL=TCP) (HOST=node1-v.cern.ch) (PORT=10121)) (LOAD_BALANCE=off) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=CERN_SRV1.cern.ch) ))’ Listener SGA PGA Listener CERN_SRV1 CERN_SRV3 CERN_SRV2 node1.cern.ch node2.cern.ch node1-v Clusterware
Local naming method Based on tnsnames.ora /afs/cern.ch/project/oracle/admin \\cern.ch\dfs\Applications\Oracle\ADMIN 23 April 2013 Introduction to Oracle33 ( DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=node2-v.cern.ch) (PORT=10121)) (ADDRESS= (PROTOCOL=TCP) (HOST=node1-v.cern.ch) (PORT=10121)) (LOAD_BALANCE=off) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=CERN_SRV1.cern.ch) ))’ cerndb1 = sqlplus
23 April 2013 Introduction to Oracle34 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database
SQL Statements Processing 23 April 2013 Introduction to Oracle35 SQL Statement Syntax Check Semantic Check Shared Pool Check Optimization Row Source Generation Execution Parsing Soft Parse Hard Parse select * from hr.employees; sql_id = 8k3hpjw6yjup5 select name from hr.employees where id=:id_val;
Summary 23 April 2013 Introduction to Oracle36
Documentation Oracle Database Concepts Oracle 11g documentation Architecture poster 23 April 2013 Introduction to Oracle37
23 April 2013 Introduction to Oracle38
Agenda 23 April 2013 Introduction to Oracle39 Oracle Database Oracle Instance Real Application Clusters (RAC) SQL statements processing Working with Oracle Database