Appendix A. Scenarios and Examples – A Hands-on Lab
The main idea of this hands-on appendix is to allow you to practice some of the scenarios you saw in this book (step-by-step) and learn by practice. If you have any doubt about a command of what it will be doing, for more information please refer to the corresponding chapter in this book for the scenario.
To be able to execute the exercises in this appendix, you should first create a test environment performing the following steps:
Download the Oracle VirtualBox (free virtualization tool) at https://www.virtualbox.org/wiki/Downloads.
Download Oracle Enterprise Linux 6.4 (https://edelivery.oracle.com/linux) and Oracle 12c database for Linux at http://www.oracle.com/technetwork/database/enterprise-edition/downloads/database12c-linux-download-1959253.html.
Note
You do not need to use explicitly Linux to be able to run this lab. You can also use Solaris (SPARK and x86) or even Windows 64 bits. The use of VirtualBox with Linux is just a suggestion.
Follow the instructions in my blog to do the installation of the products you downloaded (http://oraclenz.org/?p=3069).
Create the following directories for the examples:
$ mkdir /data/pdborcl $ mkdir /data/pdborcl/backups $ mkdir /data/pdborcl/backups/controlfile $ mkdir /data/pdborcl/backups/archivelogs $ mkdir /data/orcl/fast_recovery_area $ mkdir /data/orcl/redologs $ chown -R oracle:oinstall /data/pdborcl $ chown -R oracle:oinstall /data/orcl
Create a test user and tablespace test.
Note
Because this is an Oracle 12c book, all scenarios will be for Oracle 12c in this appendix.
$ sqlplus / as sysdba SQL> ALTER SESSION SET CONTAINER=pdborcl; SQL> CREATE TABLESPACE test DATAFILE '/data/pdborcl /test_01_tbs.dbf' SIZE 100m; SQL> CREATE USER test IDENTIFIED BY test DEFAULT TABLESPACE test QUOTA UNLIMITED ON test; SQL> GRANT connect, resource TO test;
Create a table employee and load data on the schema test using the following command:
SQL> CREATE TABLE TEST.EMPLOYEE ( EMP_ID NUMBER(10) NOT NULL, EMP_NAME VARCHAR2(30), EMP_SSN VARCHAR2(9), EMP_DOB DATE ); SQL> INSERT INTO test.employee VALUES (101,'Francisco Munoz',123456789,'30-JUN-73'); SQL> INSERT INTO test.employee VALUES (102,'Gonzalo Munoz',234567890,'02-OCT-96'); SQL> INSERT INTO test.employee VALUES (103,'Evelyn Aghemio',659812831,'02-OCT-79'); SQL> COMMIT;
Now that you are all set, please perform the following hands-on exercises.
Note
Explanation of the examples is out of the scope of this appendix. These are only practical examples to be executed by the reader to understand how each one works.