I have been playing with Oracle Streams again lately. My goal is to capture changes in 10g and send them to a 9i database.

Size: px
Start display at page:

Download "I have been playing with Oracle Streams again lately. My goal is to capture changes in 10g and send them to a 9i database."

Transcription

1 I have been playing with Oracle Streams again lately. My goal is to capture changes in 10g and send them to a 9i database. Below is the short list for setting up Change Data Capture using Oracle Streams. These steps are mostly from the docs with a few tweaks I have added. This entry only covers setting up the local capture and apply. I'll add the propagation to 9i later this week or next weekend. First the set up: we will use the HR account's Employee table. We'll capture all changes to the Employee table and insert them into an audit table. I'm not necessarily saying this is the way you should audit your database but it makes a nice example. I'll also add a monitoring piece to capture process. I want to be able to see exactly what is being captured when it is being captured. You will need to have sysdba access to follow along with me. Your database must also be in archivelog mode. The changes are picked up from the redo log. So, away we go! The first step is to create out streams administrator. I will follow the guidelines from the oracle docs exactly for this: Connect as sysdba: sqlplus as sysdba Create the streams tablespace (change the name andor location to suit): create tablespace streams_tbs datafile 'c:\temp\stream_tbs.dbf' size 25M reuse autoextend on maxsize unlimited; Create our streams administrator: create user strmadmin identified by strmadmin default tablespace streams_tbs quota unlimited on streams_tbs; I haven't quite figured out why, but we need to grant our administrator DBA privs. I think this is a bad thing. There is probably a work around where I could do some direct grants instead but I haven't had time to track those down.

2 grant dba to strmadmin; We also want to grant streams admin privs to the user. DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE( grantee => 'strmadmin', grant_privileges => true); The next steps we'll run as the HR user. conn hrhr Grant all access to the employee table to the streams admin: grant all on hr.employees to strmadmin; We also need to create the employee_audit table. Note that I am adding three columns in this table that do not exist in the employee table. CREATE TABLE employee_audit( employee_id NUMBER(6), first_name VARCHAR2(20), last_name VARCHAR2(25), VARCHAR2(25), phone_number VARCHAR2(20), hire_date DATE, job_id VARCHAR2(10), salary NUMBER(8,2), commission_pct NUMBER(2,2), manager_id NUMBER(6), department_id NUMBER(4), upd_date DATE, user_name VARCHAR2(30), action VARCHAR2(30)); Grant all access to the audit table to the streams admin user: grant all on hr.employee_audit to strmadmin;

3 We connect as the streams admin user: conn strmadminstrmadmin We can create a logging table. You would NOT want to do this in a high-volume production system. I am doing this to illustrate user defined monitoring and show how you can get inside the capture process. CREATE TABLE streams_monitor ( date_and_time TIMESTAMP(6) DEFAULT systimestamp, txt_msg CLOB ); Here we create the queue. Unlike AQ, where you have to create a separate table, this step creates the queue and the underlying ANYDATA table. DBMS_STREAMS_ADM.SET_UP_QUEUE( queue_table => 'strmadmin.streams_queue_table', queue_name => 'strmadmin.streams_queue'); This just defines that we want to capture DML and not DDL. DBMS_STREAMS_ADM.ADD_TABLE_RULES( table_name => 'hr.employees', streams_type => 'capture', streams_name => 'capture_emp', queue_name => 'strmadmin.streams_queue', include_dml => true, include_ddl => false, inclusion_rule => true); Tell the capture process that we want to know who made the change: DBMS_CAPTURE_ADM.INCLUDE_EXTRA_ATTRIBUTE( capture_name => 'capture_emp',

4 attribute_name => 'username', include => true); We also need to tell Oracle where to start our capture. Change the source_database_name to match your database. DECLARE iscn NUMBER; iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER(); DBMS_APPLY_ADM.SET_TABLE_INSTANTIATION_SCN( source_object_name => 'hr.employees', source_database_name => 'ORCL', instantiation_scn => iscn); And the fun part! This is where we define our capture procedure. I'm taking this right from the docs but I'm adding a couple steps. CREATE OR REPLACE PROCEDURE emp_dml_handler(in_any IN ANYDATA) IS lcr SYS.LCR$_ROW_RECORD; rc PLS_INTEGER; command VARCHAR2(30); old_values SYS.LCR$_ROW_LIST; -- Access the LCR rc := in_any.getobject(lcr); -- Get the object command type command := lcr.get_command_type(); -- I am inserting the XML equivalent of the LCR into the monitoring table. insert into streams_monitor (txt_msg) values (command DBMS_STREAMS.CONVERT_LCR_TO_XML(in_any) ); -- Set the command_type in the row LCR to INSERT lcr.set_command_type('insert'); -- Set the object_name in the row LCR to EMP_DEL lcr.set_object_name('employee_audit'); -- Set the new values to the old values for update and delete IF command IN ('DELETE', 'UPDATE') THEN -- Get the old values in the row LCR

5 old_values := lcr.get_values('old'); -- Set the old values in the row LCR to the new values in the row LCR lcr.set_values('new', old_values); -- Set the old values in the row LCR to NULL lcr.set_values('old', NULL); END IF; -- Add a SYSDATE for upd_date lcr.add_column('new', 'UPD_DATE', ANYDATA.ConvertDate(SYSDATE)); -- Add a user column lcr.add_column('new', 'user_name', lcr.get_extra_attribute('username') ); -- Add an action column lcr.add_column('new', 'ACTION', ANYDATA.ConvertVarChar2(command)); -- Make the changes lcr.execute(true); commit; Create the DML handlers: DBMS_APPLY_ADM.SET_DML_HANDLER( object_name => 'hr.employees', object_type => 'TABLE', operation_name => 'INSERT', error_handler => false, user_procedure => 'strmadmin.emp_dml_handler', apply_database_link => NULL, apply_name => NULL); DBMS_APPLY_ADM.SET_DML_HANDLER( object_name => 'hr.employees', object_type => 'TABLE', operation_name => 'UPDATE', error_handler => false, user_procedure => 'strmadmin.emp_dml_handler', apply_database_link => NULL, apply_name => NULL); DBMS_APPLY_ADM.SET_DML_HANDLER( object_name => 'hr.employees', object_type => 'TABLE', operation_name => 'DELETE',

6 error_handler => false, user_procedure => 'strmadmin.emp_dml_handler', apply_database_link => NULL, apply_name => NULL); Create the apply rule. This tells streams, yet again, that we in fact do want to capture changes. The second calls tells streams where to put the info. Change the source_database_name to match your database. DECLARE emp_rule_name_dml VARCHAR2(30); emp_rule_name_ddl VARCHAR2(30); DBMS_STREAMS_ADM.ADD_TABLE_RULES( table_name => 'hr.employees', streams_type => 'apply', streams_name => 'apply_emp', queue_name => 'strmadmin.streams_queue', include_dml => true, include_ddl => false, source_database => 'ORCL', dml_rule_name => emp_rule_name_dml, ddl_rule_name => emp_rule_name_ddl); DBMS_APPLY_ADM.SET_ENQUEUE_DESTINATION( rule_name => emp_rule_name_dml, destination_queue_name => 'strmadmin.streams_queue'); We don't want to stop applying changes when there is an error, so: DBMS_APPLY_ADM.SET_PARAMETER( apply_name => 'apply_emp', parameter => 'disable_on_error', value => 'n'); Turn on the apply process: DBMS_APPLY_ADM.START_APPLY( apply_name => 'apply_emp');

7 Turn on the capture process: DBMS_CAPTURE_ADM.START_CAPTURE( capture_name => 'capture_emp'); Connect as HR and make some changes to Employees. sqlplus hrhr INSERT INTO hr.employees VALUES(207, 'JOHN', 'SMITH', NULL, '07-JUN-94', 'AC_ACCOUNT', 777, NULL, NULL, 110); COMMIT; UPDATE hr.employees SET salary=5999 WHERE employee_id=206; COMMIT; DELETE FROM hr.employees WHERE employee_id=207; COMMIT; It takes a few seconds for the data to make it to the logs and then back into the system to be appled. Run this query until you see data (remembering that it is not instantaneous): SELECT employee_id, first_name, last_name, upd_date, action FROM hr.employee_audit ORDER BY employee_id; Then you can log back into the streams admin account: sqlplus strmadminstrmadmin View the XML LCR that we inserted during the capture process: set long 9999 set pagesize 0 select * from streams_monitor;

8 That's it! It's really not that much work to capture and apply changes. Of course, it's a little bit more work to cross database instances, but it's not that much. Keep an eye out for a future entry where I do just that. One of the things that amazes me is how little code is required to accomplish this. The less code I have to write, the less code I have to maintain. The entry builds directly on my last entry, Oracle Streams Configuration: Change Data Capture. This entry will show you how to propagate the changes you captured in that entry to a 9i database. NOTE #1: I would recommend that you run the commands and make sure the last entry works for you before trying the code in this entry. That way you will need to debug as few moving parts as possible. NOTE #2: I have run this code windows to windows, windows to linux, linux to solaris and solaris to solaris. The only time I had any problem at all was solaris to solaris. If you run into problems with propagation running but not sending data, shutdown the source database and restart it. That worked for me. NOTE #3: I have run this code 10g to 10g and 10g to 9i. It works without change between them. NOTE #4: If you are not sure of the exact name of your database (including domain), use global_name, i.e. select * from global_name; NOTE #5: Streams is not available with XE. Download and install EE. If you have 1 GB or more of RAM on your PC, you can download EE and use the DBCA to run two database instances. You do not physically need two machines to get this to work. NOTE #6: I promise this is the last note. Merry Christmas andor Happy Holidays! Now for the fun part. As I mentioned above, you need two instances for this. I called my first instance ORCL (how creative!) and I called my second instance SECOND. It works for me! ORCL will be my source instance and SECOND will be my target instance. You should already have the CDC code from the last article running in ORCL. ORCL must be in archivelog mode to run CDC. SECOND does not need archivelog mode. Having two databases running on a single PC in archivelog mode can really beat up a poor IDE drive.

9 You already created your streams admin user in ORCL so now do the same thing in SECOND. The code below is mostly the same code that you ran on ORCL. I made a few minor changes in case you are running both instances on a single PC: sqlplus as sysdba create tablespace streams_second_tbs datafile 'c:\temp\stream_2_tbs.dbf' size 25M reuse autoextend on maxsize unlimited; create user strmadmin identified by strmadmin default tablespace streams_second_tbs quota unlimited on streams_second_tbs; grant dba to strmadmin; Connect as strmadmin. You need to create an AQ table, AQ queue and then start the queue. That's what the code below does. DBMS_AQADM.CREATE_QUEUE_TABLE( queue_table => 'lrc_emp_t', queue_payload_type => 'sys.anydata', multiple_consumers => TRUE, compatible => '8.1'); DBMS_AQADM.CREATE_QUEUE( queue_name => 'lrc_emp_q', queue_table => 'lrc_emp_t'); DBMS_AQADM.START_QUEUE ( queue_name => 'lrc_emp_q'); You also need to create a database link. You have to have one from ORCL to SECOND but for debugging, I like a link in both. So, while you're in SECOND, create a link: CREATE DATABASE LINK orcl.world CONNECT TO strmadmin IDENTIFIED BY strmadmin USING 'orcl.world'; Log into ORCL as strmadmin and run the exact same command there. Most of the setup for this is exactly the same between the two instances.

10 Create your link on this side also. CREATE DATABASE LINK second.world CONNECT TO strmadmin IDENTIFIED BY strmadmin USING 'second.world'; Ok, now we have running queues in ORCL and SECOND. While you are logged into ORCL, you will create a propagation schedule. You DO NOT need to run this in SECOND. DBMS_STREAMS_ADM.ADD_TABLE_PROPAGATION_RULES( table_name => 'hr.employees', streams_name => 'orcl_2_second', source_queue_name => 'strmadmin.lrc_emp_q', destination_queue_name => 'strmadmin.lrc_emp_q@second.world', include_dml => true, include_ddl => FALSE, source_database => 'orcl.world'); This tells the database to take the data in the local lrc_emp_q and send it to the named destination queue. We're almost done with the propagation now. We just need to change the code we wrote in the last article in our DML handler. Go back and review that code now. We are going to modify the EMP_DML_HANDLER so that we get an enqueue block just above the execute statement: CREATE OR REPLACE PROCEDURE emp_dml_handler(in_any IN ANYDATA) IS lcr SYS.LCR$_ROW_RECORD; rc PLS_INTEGER; command VARCHAR2(30); old_values SYS.LCR$_ROW_LIST; -- Access the LCR rc := in_any.getobject(lcr); -- Get the object command type command := lcr.get_command_type(); -- I am inserting the XML equivalent of the LCR into the monitoring table. insert into streams_monitor (txt_msg) values (command

11 DBMS_STREAMS.CONVERT_LCR_TO_XML(in_any) ); -- Set the command_type in the row LCR to INSERT lcr.set_command_type('insert'); -- Set the object_name in the row LCR to EMP_DEL lcr.set_object_name('employee_audit'); -- Set the new values to the old values for update and delete IF command IN ('DELETE', 'UPDATE') THEN -- Get the old values in the row LCR old_values := lcr.get_values('old'); -- Set the old values in the row LCR to the new values in the row LCR lcr.set_values('new', old_values); -- Set the old values in the row LCR to NULL lcr.set_values('old', NULL); END IF; -- Add a SYSDATE value for the timestamp column lcr.add_column('new', 'UPD_DATE', ANYDATA.ConvertDate(SYSDATE)); -- Add a user value for the timestamp column lcr.add_column('new', 'user_name', lcr.get_extra_attribute('username') ); -- Add an action column lcr.add_column('new', 'ACTION', ANYDATA.ConvertVarChar2(command)); DECLARE enqueue_options DBMS_AQ.enqueue_options_t; message_properties DBMS_AQ.message_properties_t; message_handle RAW(16); recipients DBMS_AQ.aq$_recipient_list_t; recipients(1) := sys.aq$_agent( 'anydata_subscriber', 'strmadmin.lrc_emp_q@second.world', NULL); message_properties.recipient_list := recipients; DBMS_AQ.ENQUEUE( queue_name => 'strmadmin.lrc_emp_q', enqueue_options => enqueue_options, message_properties => message_properties, payload => anydata.convertobject(lcr), msgid => message_handle); EXCEPTION WHEN OTHERS THEN insert into streams_monitor (txt_msg) values ('Anydata: ' DBMS_UTILITY.FORMAT_ERROR_STACK ); -- Make the changes lcr.execute(true); commit;

12 The declaration section above created some variable required for an enqueue. We created a subscriber (that's the name of the consumer). We will use that name to dequeue the record in the SECOND instance. We then enqueued our LCR as an ANYDATA datatype. I put the exception handler there in case there are any problems with our enqueue. That's all it takes. Insert some records into the HR.employees table and commit them. Then log into strmadmin@second and select * from the lrc_emp_t table. You should have as many records there as you inserted. There are not a lot of moving parts so there aren't many things that will go wrong. Propagation is where I have the most troubles. You can query DBA_PROPAGATION to see if you have any propagation errors. That's it for moving the data from 10g to 9i. In my next article, I will show you how to dequeue the data and put it into the employee_audit table on the SECOND side. I've been doing quite a bit recently with Oracle Streams. I recently had the need to create some test data in LCR format. If you have manual control of your LCR, you can test specific data issues a lot easier. Anyway, I (and a coworker) searched the web and looked through various documentation but was not able to find a concise description of how to go about creating an LCR manually. So I decided to write one. NOTE: Everything below is specifically for a ROW type LCR as opposed to a DDL type LCR. The concepts would be the same but the specific code would change. First a little definition. An LCR format is the format of data that Oracle uses in the redo logs and is used for Oracle Streams (and probably data guard although I am guessing about that). The LCR has information about what the object is as well as the old and new values. The old and new values are exactly the same as :old and :new in a trigger. You can see the definition of the LCR format by viewing the LCR XML Schema. An LCR is an object type. Actually, it is two table collections of an object type embedded within another object type. You can get the details of that from the documentation in the supplied PLSQL Packages and Types documentation. The short story is that an LCR stored object level information (database, object_name,

13 owner, and command type) at the top level. Beneath that is column and data information in a namevalue pair collection. I tend to think of things like this in a relational format. If I put it in database terms, it might look something like: Excuse the poor diagram. An artiste I am not. You can do a describe to see the methods as well as view the documentation. The important thing to note is the constructor. Normally, a constructor has the same name as the object type. In this case, they chose to name it CONSTRUCT. SQL> desc sys.lcr$_row_record METHOD STATIC FUNCTION CONSTRUCT RETURNS LCR$_ROW_RECORD Argument Name Type InOut Default? SOURCE_DATABASE_NAME VARCHAR2 IN COMMAND_TYPE VARCHAR2 IN OBJECT_OWNER VARCHAR2 IN OBJECT_NAME VARCHAR2 IN TAG RAW IN DEFAULT TRANSACTION_ID VARCHAR2 IN DEFAULT SCN NUMBER IN DEFAULT OLD_VALUES LCR$_ROW_LIST IN DEFAULT NEW_VALUES LCR$_ROW_LIST IN DEFAULT Based on that info, populating the test LCR is relatively straight-forward. Just for your info, the type LCR$_ROW_LIST is a collection of LCR$_ROW_UNIT. Those types are also documented in the reference guide I mentioned above. You will not want to access those directly though. You can use the built-in LCR$_ROW_RECORD methods to populate those fields.

14 One thing to remember is that the data values that you are dealing with are sys.anydata data types. That type has it's own rules and deserves a blog entry all to itself. Here is a function that will create an empty LCR for you automatically for any table. Once you have the LCR you can modify the values to suit. CREATE OR REPLACE FUNCTION create_lcr( p_table_owner IN all_tables.owner%type, p_table_name IN all_tables.table_name%type, p_command IN VARCHAR2 ) RETURN sys.lcr$_row_record AS v_lcr sys.lcr$_row_record; v_database global_name.global_name%type; -- verify the command type IF p_command NOT IN ('INSERT', 'UPDATE', 'DELETE') THEN RETURN v_lcr; END IF; -- Get the database name -- This could be parameterized SELECT global_name INTO v_database FROM global_name; -- Construct the LCR v_lcr := sys.lcr$_row_record.construct( source_database_name => v_database, command_type => p_command, object_owner => p_table_owner, object_name => p_table_name ); -- You can override the values in the constructor by calling these methods v_lcr.set_command_type(p_command); v_lcr.set_object_name(p_table_name); v_lcr.set_object_owner(p_table_owner); v_lcr.set_source_database_name(v_database); -- Loop through the columns and add new and old values FOR c1 IN ( SELECT column_name, data_type FROM all_tab_columns WHERE owner = p_table_owner

15 LOOP AND table_name = p_table_name ORDER BY column_id ) -- Create an anydata based on column data type -- You would expand this for all data types -- I'm going to keep this example fairly simple CASE c1.data_type WHEN 'VARCHAR2' THEN v_lcr.add_column('new', c1.column_name, sys.anydata.convertvarchar2(to_char(null))); v_lcr.add_column('old', c1.column_name, sys.anydata.convertvarchar2(to_char(null))); WHEN 'DATE' THEN v_lcr.add_column('new', c1.column_name, sys.anydata.convertdate(to_date(null))); v_lcr.add_column('old', c1.column_name, sys.anydata.convertdate(to_date(null))); WHEN 'NUMBER' THEN v_lcr.add_column('new', c1.column_name, sys.anydata.convertnumber(to_number(null))); v_lcr.add_column('old', c1.column_name, sys.anydata.convertnumber(to_number(null))); END CASE; END LOOP; RETURN v_lcr; To call this function and manipulate it, you might write something like the following: DECLARE v_lcr sys.lcr$_row_record; v_lcr := create_lcr( 'HR', 'EMPLOYEES', 'INSERT' ); -- Set some values v_lcr.set_value('new', 'first_name', sys.anydata.convertvarchar2('lewis')); v_lcr.set_value('old', 'first_name', sys.anydata.convertvarchar2('george')); -- Display Some Values DBMS_OUTPUT.PUT_LINE( 'Database: ' v_lcr.get_source_database_name() ', Object Owner: ' v_lcr.get_object_owner() ', Object Name: ' v_lcr.get_object_name() ', Command: ' v_lcr.get_command_type() );

16 DBMS_OUTPUT.PUT_LINE( 'New First Name: ' sys.anydata.accessvarchar2(v_lcr.get_value('new', 'first_name')) ', Old First Name: ' sys.anydata.accessvarchar2(v_lcr.get_value('old', 'first_name')) ); The output from this is: Database: XE, Object Owner: HR, Object Name: EMPLOYEES, Command: INSERT New First Name: Lewis, Old First Name: George And that's all there is to it. My book is making good progress. It is due Feb 1 and I am on track for delivery. I will start posting much more often after I get past that milestone.

www.peoug.org 1-2 www.peoug.org

www.peoug.org 1-2 www.peoug.org Implementando Oracle Streams Una solución moderna de replicación de datos Miguel Palacios (miguel.palacios@gbsperu.net) PEOUG Day - 18 de Noviembre 2009 www.peoug.org 1-2 www.peoug.org Mi Perfil: Miguel

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Test: Final Exam Semester 1 Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 1. The following code does not violate any constraints and will

More information

Retrieving Data Using the SQL SELECT Statement. Copyright 2006, Oracle. All rights reserved.

Retrieving Data Using the SQL SELECT Statement. Copyright 2006, Oracle. All rights reserved. Retrieving Data Using the SQL SELECT Statement Objectives After completing this lesson, you should be able to do the following: List the capabilities of SQL SELECT statements Execute a basic SELECT statement

More information

Objectif. Participant. Prérequis. Pédagogie. Oracle Database 11g - Implement Streams Release 2. 5 Jours [35 Heures]

Objectif. Participant. Prérequis. Pédagogie. Oracle Database 11g - Implement Streams Release 2. 5 Jours [35 Heures] Objectif Perform basic troubleshooting of a Streams environment Alter the Streams environment to add, modify and drop new sites or objects Configure conflict handling for data replication Transform the

More information

Data Migration. External Table. jschoi@unioneinc.co.kr. 1 2010 version 1

Data Migration. External Table. jschoi@unioneinc.co.kr. 1 2010 version 1 Data Migration External Table 1 2010 version 1 Methods of moving data across platforms 2010 Version 1 2 External Table Methods of moving data across platforms Method 1 Database Link 2 SQL*Plus spools 3

More information

Oracle. Brief Course Content This course can be done in modular form as per the detail below. ORA-1 Oracle Database 10g: SQL 4 Weeks 4000/-

Oracle. Brief Course Content This course can be done in modular form as per the detail below. ORA-1 Oracle Database 10g: SQL 4 Weeks 4000/- Oracle Objective: Oracle has many advantages and features that makes it popular and thereby makes it as the world's largest enterprise software company. Oracle is used for almost all large application

More information

Page 1 of 7 Welcome brendan ( Account Help Sign Out ) United States Communities I am a... I want to... Secure Search Products and Services Solutions Downloads Store Support Training Partners About Oracle

More information

Oracle Database: SQL and PL/SQL Fundamentals NEW

Oracle Database: SQL and PL/SQL Fundamentals NEW Oracle University Contact Us: 001-855-844-3881 & 001-800-514-06-97 Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals

More information

March 9 th, 2010. Oracle Total Recall

March 9 th, 2010. Oracle Total Recall March 9 th, 2010 Oracle Total Recall Agenda Flashback Data Archive Why we need Historical Data Pre-11g methods for Historical data Oracle Total Recall overview FDA Architecture Creating and Enabling FDA

More information

Modern PL/SQL Code Checking and Dependency Analysis

Modern PL/SQL Code Checking and Dependency Analysis Modern PL/SQL Code Checking and Dependency Analysis Philipp Salvisberg Senior Principal Consultant BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MUNICH STUTTGART VIENNA

More information

Once the schema has been designed, it can be implemented in the RDBMS.

Once the schema has been designed, it can be implemented in the RDBMS. 2. Creating a database Designing the database schema... 1 Representing Classes, Attributes and Objects... 2 Data types... 5 Additional constraints... 6 Choosing the right fields... 7 Implementing a table

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. est: Final Exam Semester 1 Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 1. How can you retrieve the error code and error message of any

More information

Oracle 10g PL/SQL Training

Oracle 10g PL/SQL Training Oracle 10g PL/SQL Training Course Number: ORCL PS01 Length: 3 Day(s) Certification Exam This course will help you prepare for the following exams: 1Z0 042 1Z0 043 Course Overview PL/SQL is Oracle's Procedural

More information

Oracle 11gR2 : Recover dropped tablespace using RMAN tablespace point in time recovery

Oracle 11gR2 : Recover dropped tablespace using RMAN tablespace point in time recovery Oracle 11gR2 : Recover dropped tablespace using RMAN tablespace point in time recovery Mohamed Azar Oracle DBA http://mohamedazar.wordpress.com 1 Mohamed Azar http://mohamedazar.wordpress.com This is new

More information

D12C-AIU Oracle Database 12c: Admin, Install and Upgrade Accelerated NEW

D12C-AIU Oracle Database 12c: Admin, Install and Upgrade Accelerated NEW D12C-AIU Oracle Database 12c: Admin, Install and Upgrade Accelerated NEW Duration: 5 Days What you will learn This Oracle Database 12c: Admin, Install and Upgrade Accelerated course will provide you with

More information

Oracle Database 10g Express

Oracle Database 10g Express Oracle Database 10g Express This tutorial prepares the Oracle Database 10g Express Edition Developer to perform common development and administrative tasks of Oracle Database 10g Express Edition. Objectives

More information

Database security tutorial. Part I

Database security tutorial. Part I Database security tutorial Part I Oracle Tutorials, June 4 th 2012 Daniel Gómez Blanco Agenda Authentication Roles and privileges Auditing 2 Authentication Basis of any security model Process of confirming

More information

DBMS Questions. 3.) For which two constraints are indexes created when the constraint is added?

DBMS Questions. 3.) For which two constraints are indexes created when the constraint is added? DBMS Questions 1.) Which type of file is part of the Oracle database? A.) B.) C.) D.) Control file Password file Parameter files Archived log files 2.) Which statements are use to UNLOCK the user? A.)

More information

RMAN BACKUP & RECOVERY. Recovery Manager. Veeratteshwaran Sridhar

RMAN BACKUP & RECOVERY. Recovery Manager. Veeratteshwaran Sridhar RMAN Recovery Manager BACKUP & RECOVERY Veeratteshwaran Sridhar Why Backup & Recovery? The purpose of a backup and recovery strategy is to protect the database against data loss and reconstruct the database

More information

Figure 1. Accessing via External Tables with in-database MapReduce

Figure 1. Accessing via External Tables with in-database MapReduce 1 The simplest way to access external files or external data on a file system from within an Oracle database is through an external table. See here for an introduction to External tables. External tables

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1. You are creating the EMPLOYEES

More information

SQL. Short introduction

SQL. Short introduction SQL Short introduction 1 Overview SQL, which stands for Structured Query Language, is used to communicate with a database. Through SQL one can create, manipulate, query and delete tables and contents.

More information

How To Create A Table In Sql 2.5.2.2 (Ahem)

How To Create A Table In Sql 2.5.2.2 (Ahem) Database Systems Unit 5 Database Implementation: SQL Data Definition Language Learning Goals In this unit you will learn how to transfer a logical data model into a physical database, how to extend or

More information

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP) Audience Data Warehouse Administrator Database Administrators Database Designers Support Engineer Technical Administrator Related Training Required Prerequisites Working knowledge of SQL and use of PL/SQL

More information

If you have not multiplexed your online redo logs, then you are only left with incomplete recovery. Your steps are as follows:

If you have not multiplexed your online redo logs, then you are only left with incomplete recovery. Your steps are as follows: How to Recover lost online redo logs? Author A.Kishore If you lose the current online redo log, then you will not be able to recover the information in that online redo log. This is one reason why redo

More information

All About Oracle Auditing A White Paper February 2013

All About Oracle Auditing A White Paper February 2013 A White Paper February 2013 Sr Staff Consultant Database Specialists, Inc http:www.dbspecialists.com mdean@dbspecialists.com Many organizations keep their most sensitive and valuable information in an

More information

A basic create statement for a simple student table would look like the following.

A basic create statement for a simple student table would look like the following. Creating Tables A basic create statement for a simple student table would look like the following. create table Student (SID varchar(10), FirstName varchar(30), LastName varchar(30), EmailAddress varchar(30));

More information

1 Triggers. 2 PL/SQL Triggers

1 Triggers. 2 PL/SQL Triggers 1 Triggers Triggers are simply stored procedures that are ran automatically by the database whenever some event (usually a table update) happens. We won t spend a great deal of time talking about how to

More information

news from Tom Bacon about Monday's lecture

news from Tom Bacon about Monday's lecture ECRIC news from Tom Bacon about Monday's lecture I won't be at the lecture on Monday due to the work swamp. The plan is still to try and get into the data centre in two weeks time and do the next migration,

More information

Handling Exceptions. Copyright 2008, Oracle. All rights reserved.

Handling Exceptions. Copyright 2008, Oracle. All rights reserved. Handling Exceptions Handling Exceptions What Will I Learn? In this lesson, you will learn to: Describe several advantages of including exception handling code in PL/SQL Describe the purpose of an EXCEPTION

More information

11. Configuring the Database Archiving Mode.

11. Configuring the Database Archiving Mode. 11. Configuring the Database Archiving Mode. Abstract: Configuring an Oracle database for backup and recovery can be complex. At a minimum, you must understand the archive process, the initialization parameters

More information

Virtual Private Database Features in Oracle 10g.

Virtual Private Database Features in Oracle 10g. Virtual Private Database Features in Oracle 10g. SAGE Computing Services Customised Oracle Training Workshops and Consulting. Christopher Muir Senior Systems Consultant Agenda Modern security requirements

More information

Developing SQL and PL/SQL with JDeveloper

Developing SQL and PL/SQL with JDeveloper Seite 1 von 23 Developing SQL and PL/SQL with JDeveloper Oracle JDeveloper 10g Preview Technologies used: SQL, PL/SQL An Oracle JDeveloper Tutorial September 2003 Content This tutorial walks through the

More information

Integration Service Database. Installation Guide - Oracle. On-Premises

Integration Service Database. Installation Guide - Oracle. On-Premises Kony MobileFabric Integration Service Database Installation Guide - Oracle On-Premises Release 6.5 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title

More information

ORACLE DATABASE 11G: COMPLETE

ORACLE DATABASE 11G: COMPLETE ORACLE DATABASE 11G: COMPLETE 1. ORACLE DATABASE 11G: SQL FUNDAMENTALS I - SELF-STUDY COURSE a) Using SQL to Query Your Database Using SQL in Oracle Database 11g Retrieving, Restricting and Sorting Data

More information

SaaS Data Architecture. An Oracle White Paper Oct 2008

SaaS Data Architecture. An Oracle White Paper Oct 2008 SaaS Data Architecture An Oracle White Paper Oct 2008 SaaS Data Architecture Introduction... 3 DATA ARCHITECTURE APPROACHES... 3 Separate Databases... 4 Shared Database, Separate Schemas... 4 Shared Database,

More information

Demos - Workshop. -- Configure the RMAN

Demos - Workshop. -- Configure the RMAN Demos - Workshop -- Configure the RMAN configure device type disk backup type to compressed backupset; configure channel 1 device type disk format '/home/oracle/app/oracle/backup/bck_orcl_%u'; configure

More information

RMAN What is Rman Why use Rman Understanding The Rman Architecture Taking Backup in Non archive Backup Mode Taking Backup in archive Mode

RMAN What is Rman Why use Rman Understanding The Rman Architecture Taking Backup in Non archive Backup Mode Taking Backup in archive Mode RMAN - What is Rman - Why use Rman - Understanding The Rman Architecture - Taking Backup in Non archive Backup Mode - Taking Backup in archive Mode - Enhancement in 10g For Rman - 9i Enhancement For Rman

More information

Table Backup and Recovery using SQL*Plus

Table Backup and Recovery using SQL*Plus VIII Konferencja PLOUG Koœcielisko PaŸdziernik 2002 Table Backup and Recovery using SQL*Plus Peter G Robson British Geological Survey Abstract A technique has been developed whereby a complete auditing

More information

Oracle Total Recall with Oracle Database 11g Release 2

Oracle Total Recall with Oracle Database 11g Release 2 An Oracle White Paper September 2009 Oracle Total Recall with Oracle Database 11g Release 2 Introduction: Total Recall = Total History... 1 Managing Historical Data: Current Approaches... 2 Application

More information

Making the Most of Oracle PL/SQL Error Management Features

Making the Most of Oracle PL/SQL Error Management Features Making the Most of Oracle PL/SQL Error Management Features Copyright 2000-2008 Steven Feuerstein - Page 1 Steven Feuerstein PL/SQL Evangelist Quest Software steven.feuerstein@quest.com So...why listen

More information

Oracle Database 11g: Administration Workshop I 11-2

Oracle Database 11g: Administration Workshop I 11-2 Objectives This lesson is a starting point for learning about Oracle Security. Additional information is provided in the following documentation: Oracle Database Concepts 11g Release 1 (11.1) Oracle Database

More information

Oracle Database 12c: Admin, Install and Upgrade Accelerated

Oracle Database 12c: Admin, Install and Upgrade Accelerated Oracle University Contact Us: + 38516306373 Oracle Database 12c: Admin, Install and Upgrade Accelerated Duration: 5 Days What you will learn This Oracle Database 12c: Admin, Install and Upgrade Accelerated

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1. Which SQL statement below will

More information

Oracle 12c New Features For Developers

Oracle 12c New Features For Developers Oracle 12c New Features For Developers Presented by: John Jay King Download this paper from: 1 Session Objectives Learn new Oracle 12c features that are geared to developers Know how existing database

More information

Delivery Method: Instructor-led, group-paced, classroom-delivery learning model with structured, hands-on activities.

Delivery Method: Instructor-led, group-paced, classroom-delivery learning model with structured, hands-on activities. Course Code: Title: Format: Duration: SSD024 Oracle 11g DBA I Instructor led 5 days Course Description Through hands-on experience administering an Oracle 11g database, you will gain an understanding of

More information

Appendix A Practices and Solutions

Appendix A Practices and Solutions Appendix A Practices and Solutions Table of Contents Practices for Lesson I... 3 Practice I-1: Introduction... 4 Practice Solutions I-1: Introduction... 5 Practices for Lesson 1... 11 Practice 1-1: Retrieving

More information

CA DataMinder. Database Guide. Release 14.1. 4th Edition

CA DataMinder. Database Guide. Release 14.1. 4th Edition CA DataMinder Database Guide Release 14.1 4th Edition This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation )

More information

Oracle 12c Recovering a lost /corrupted table from RMAN Backup after user error or application issue

Oracle 12c Recovering a lost /corrupted table from RMAN Backup after user error or application issue Oracle 12c Recovering a lost /corrupted table from RMAN Backup after user error or application issue Oracle 12c has automated table level recovery using RMAN. If you lose a table after user error or get

More information

Setting Up Your Team-SQL Database for ORACLE 8.05

Setting Up Your Team-SQL Database for ORACLE 8.05 Setting Up Your Team-SQL Database for ORACLE 8.05 Once you have your Oracle Server in place, and have the SQL client software installed on all Team Client PCs, you are ready to set up your Team-SQL for

More information

Fine Grained Auditing In Oracle 10G

Fine Grained Auditing In Oracle 10G Fine Grained Auditing In Oracle 10G Authored by: Meenakshi Srivastava (meenaxi.srivastava@gmail.com) 2 Abstract The purpose of this document is to develop an understanding of Fine Grained Auditing(FGA)

More information

The Power Loader GUI

The Power Loader GUI The Power Loader GUI (212) 405.1010 info@1010data.com Follow: @1010data www.1010data.com The Power Loader GUI Contents 2 Contents Pre-Load To-Do List... 3 Login to Power Loader... 4 Upload Data Files to

More information

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks

1 Stored Procedures in PL/SQL 2 PL/SQL. 2.1 Variables. 2.2 PL/SQL Program Blocks 1 Stored Procedures in PL/SQL Many modern databases support a more procedural approach to databases they allow you to write procedural code to work with data. Usually, it takes the form of SQL interweaved

More information

SQL Databases Course. by Applied Technology Research Center. This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases.

SQL Databases Course. by Applied Technology Research Center. This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases. SQL Databases Course by Applied Technology Research Center. 23 September 2015 This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases. Oracle Topics This Oracle Database: SQL

More information

Database Migration : An In Depth look!!

Database Migration : An In Depth look!! Database Migration : An In Depth look!! By Anil Mahadev anilm001@gmail.com As most of you are aware of the fact that just like operating System migrations are taking place, databases are no different.

More information

COMS20700 DATABASES 13 PL/SQL. COMS20700 Databases Dr. Essam Ghadafi

COMS20700 DATABASES 13 PL/SQL. COMS20700 Databases Dr. Essam Ghadafi 13 PL/SQL COMS20700 Databases Dr. Essam Ghadafi PL/SQL - OVERVIEW PL/SQL: Procedure Language/Structured Query Language. Provides programming languages features: IF, Loops, subroutines,... Code can be compiled

More information

Multimedia im Netz Online Multimedia Winter semester 2015/16

Multimedia im Netz Online Multimedia Winter semester 2015/16 Multimedia im Netz Online Multimedia Winter semester 2015/16 Tutorial 04 Minor Subject Ludwig-Maximilians-Universität München Online Multimedia WS 2015/16 - Tutorial 04 (NF) - 1 Today s Agenda Repetition:

More information

Oracle Database Cross Platform Migration Lucy Feng, DBAK

Oracle Database Cross Platform Migration Lucy Feng, DBAK Delivering Oracle Success Oracle Database Cross Platform Migration Lucy Feng, DBAK RMOUG QEW November 19, 2010 Business Requirements Migrate all Oracle databases to IBM zseries based Linux The database

More information

Oracle Database 11g Express Edition PL/SQL and Database Administration Concepts -II

Oracle Database 11g Express Edition PL/SQL and Database Administration Concepts -II Oracle Database 11g Express Edition PL/SQL and Database Administration Concepts -II Slide 1: Hello and welcome back to the second part of this online, self-paced course titled Oracle Database 11g Express

More information

Auditing In SQL Server. SQL Saturday #486 - RVA Presented By Brad McKuhen

Auditing In SQL Server. SQL Saturday #486 - RVA Presented By Brad McKuhen Auditing In SQL Server SQL Saturday #486 - RVA Presented By Brad McKuhen Thank You Sponsors About Me SQL Server DBA/Developer 13 years Lead DBA at Clutch Group Contact Me: Info at lakesidedba.com @bradmckuhen

More information

Oracle PL/SQL Language. CIS 331: Introduction to Database Systems

Oracle PL/SQL Language. CIS 331: Introduction to Database Systems Oracle PL/SQL Language CIS 331: Introduction to Database Systems Topics: Structure of a PL/SQL program Exceptions 3-valued logic Loops (unconditional, while, for) Cursors Procedures Functions Triggers

More information

Oracle Database 12c: New Features for Administrators

Oracle Database 12c: New Features for Administrators Oracle University Contact Us: 67 52 67 24 Oracle Database 12c: New Features for Administrators Duration: 5 Days What you will learn In the Oracle Database 12c: New Features for Administrators course, you

More information

Restore and Recovery Tasks. Copyright 2009, Oracle. All rights reserved.

Restore and Recovery Tasks. Copyright 2009, Oracle. All rights reserved. Restore and Recovery Tasks Objectives After completing this lesson, you should be able to: Describe the causes of file loss and determine the appropriate action Describe major recovery operations Back

More information

Performing Database and File System Backups and Restores Using Oracle Secure Backup

Performing Database and File System Backups and Restores Using Oracle Secure Backup Performing Database and File System Backups and Restores Using Oracle Secure Backup Purpose This lesson introduces you to Oracle Secure Backup which enables you to perform database and file system backups

More information

Installing Oracle 12c Enterprise on Windows 7 64-Bit

Installing Oracle 12c Enterprise on Windows 7 64-Bit JTHOMAS ENTERPRISES LLC Installing Oracle 12c Enterprise on Windows 7 64-Bit DOLOR SET AMET Overview This guide will step you through the process on installing a desktop-class Oracle Database Enterprises

More information

LICENTIA. Nuntius. Magento Email Marketing Extension REVISION: SEPTEMBER 21, 2015 (V1.8.1)

LICENTIA. Nuntius. Magento Email Marketing Extension REVISION: SEPTEMBER 21, 2015 (V1.8.1) LICENTIA Nuntius Magento Email Marketing Extension REVISION: SEPTEMBER 21, 2015 (V1.8.1) INDEX About the extension... 6 Compatability... 6 How to install... 6 After Instalattion... 6 Integrate in your

More information

Oracle Database 12c Recovery Manager New Features

Oracle Database 12c Recovery Manager New Features Oracle Database 12c Recovery Manager New Features Presented by: Andy Colvin February 13, 2013 *DISCLAIMER* Oracle 12c has not been released yet Some features may not be available I believe Oracle has mentioned

More information

The safer, easier way to help you pass any IT exams. Exam : 1Z0-067. Upgrade Oracle9i/10g/11g OCA to Oracle Database 12c OCP.

The safer, easier way to help you pass any IT exams. Exam : 1Z0-067. Upgrade Oracle9i/10g/11g OCA to Oracle Database 12c OCP. http://www.51- pass.com Exam : 1Z0-067 Title : Upgrade Oracle9i/10g/11g OCA to Oracle Database 12c OCP Version : DEMO 1 / 7 1.Which two statements are true about scheduling operations in a pluggable database

More information

Migrate Topaz databases from One Server to Another

Migrate Topaz databases from One Server to Another Title Migrate Topaz databases from One Server to Another Author: Olivier Lauret Date: November 2004 Modified: Category: Topaz/BAC Version: Topaz 4.5.2, BAC 5.0 and BAC 5.1 Migrate Topaz databases from

More information

An Introduction to PL/SQL. Mehdi Azarmi

An Introduction to PL/SQL. Mehdi Azarmi 1 An Introduction to PL/SQL Mehdi Azarmi 2 Introduction PL/SQL is Oracle's procedural language extension to SQL, the non-procedural relational database language. Combines power and flexibility of SQL (4GL)

More information

LICENTIA. Nuntius. Magento Email Marketing Extension REVISION: THURSDAY, JUNE 2, 2016 (V1.9.0.0)

LICENTIA. Nuntius. Magento Email Marketing Extension REVISION: THURSDAY, JUNE 2, 2016 (V1.9.0.0) LICENTIA Nuntius Magento Email Marketing Extension REVISION: THURSDAY, JUNE 2, 2016 (V1.9.0.0) INDEX About the extension... 6 Compatability... 6 How to install... 6 After Instalattion... 6 Integrate in

More information

Oracle(PL/SQL) Training

Oracle(PL/SQL) Training Oracle(PL/SQL) Training 30 Days Course Description: This course is designed for people who have worked with other relational databases and have knowledge of SQL, another course, called Introduction to

More information

Persistent Stored Modules (Stored Procedures) : PSM

Persistent Stored Modules (Stored Procedures) : PSM Persistent Stored Modules (Stored Procedures) : PSM Stored Procedures What is stored procedure? SQL allows you to define procedures and functions and store them in the database server Executed by the database

More information

ORACLE DATABASE 12C: NEW FEATURES FOR ADMINISTRATORS GRADE CURRICULAR. Enterprise Manager Express home page versus Enterprise Manager Database Control

ORACLE DATABASE 12C: NEW FEATURES FOR ADMINISTRATORS GRADE CURRICULAR. Enterprise Manager Express home page versus Enterprise Manager Database Control FACULDADE DE EDUCAÇÃO SUPERIOR DO PARANÁ CURSO DE EXTENSÃO UNIVERSITÁRIA ORACLE DATABASE 12C: NEW FEATURES FOR ADMINISTRATORS GRADE CURRICULAR Enterprise Manager and Other Tools Enterprise Manager (EM)

More information

Oracle Audit Vault Oracle FLEXCUBE Universal Banking Release 12.0.3.0.0 [April] [2014]

Oracle Audit Vault Oracle FLEXCUBE Universal Banking Release 12.0.3.0.0 [April] [2014] Oracle Audit Vault Oracle FLEXCUBE Universal Banking Release 12.0.3.0.0 [April] [2014] Table of Contents 1. INTRODUCTION... 1-1 1.1 SCOPE... 1-1 1.2 INTRODUCTION OF ORACLE AUDIT VAULT... 1-1 1.2.1 Advantages...

More information

Oracle Database Security. Nathan Aaron ICTN 4040 Spring 2006

Oracle Database Security. Nathan Aaron ICTN 4040 Spring 2006 Oracle Database Security Nathan Aaron ICTN 4040 Spring 2006 Introduction It is important to understand the concepts of a database before one can grasp database security. A generic database definition is

More information

StreamServe Persuasion SP5 Oracle Database

StreamServe Persuasion SP5 Oracle Database StreamServe Persuasion SP5 Oracle Database Database Guidelines Rev A StreamServe Persuasion SP5 Oracle Database Database Guidelines Rev A 2001-2011 STREAMSERVE, INC. ALL RIGHTS RESERVED United States patent

More information

Handling Exceptions. Copyright 2006, Oracle. All rights reserved. Oracle Database 10g: PL/SQL Fundamentals 8-1

Handling Exceptions. Copyright 2006, Oracle. All rights reserved. Oracle Database 10g: PL/SQL Fundamentals 8-1 Handling Exceptions Copyright 2006, Oracle. All rights reserved. Oracle Database 10g: PL/SQL Fundamentals 8-1 Objectives After completing this lesson, you should be able to do the following: Define PL/SQL

More information

Spring Data JDBC Extensions Reference Documentation

Spring Data JDBC Extensions Reference Documentation Reference Documentation ThomasRisberg Copyright 2008-2015The original authors Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee

More information

An Esri White Paper February 2011 Best Practices for Storing the ArcGIS Data Reviewer Workspace in an Enterprise Geodatabase for Oracle

An Esri White Paper February 2011 Best Practices for Storing the ArcGIS Data Reviewer Workspace in an Enterprise Geodatabase for Oracle An Esri White Paper February 2011 Best Practices for Storing the ArcGIS Data Reviewer Workspace in an Enterprise Geodatabase for Oracle Esri, 380 New York St., Redlands, CA 92373-8100 USA TEL 909-793-2853

More information

Informatica Data Replication 9.1.1 FAQs

Informatica Data Replication 9.1.1 FAQs Informatica Data Replication 9.1.1 FAQs 2012 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise)

More information

Using AND in a Query: Step 1: Open Query Design

Using AND in a Query: Step 1: Open Query Design Using AND in a Query: Step 1: Open Query Design From the Database window, choose Query on the Objects bar. The list of saved queries is displayed, as shown in this figure. Click the Design button. The

More information

ADO and SQL Server Security

ADO and SQL Server Security ADO and SQL Server Security Security is a growing concern in the Internet/intranet development community. It is a constant trade off between access to services and data, and protection of those services

More information

Introduction to Open Atrium s workflow

Introduction to Open Atrium s workflow Okay welcome everybody! Thanks for attending the webinar today, my name is Mike Potter and we're going to be doing a demonstration today of some really exciting new features in open atrium 2 for handling

More information

Chancery SMS 7.5.0 Database Split

Chancery SMS 7.5.0 Database Split TECHNICAL BULLETIN Microsoft SQL Server replication... 1 Transactional replication... 2 Preparing to set up replication... 3 Setting up replication... 4 Quick Reference...11, 2009 Pearson Education, Inc.

More information

Data Masking. Procedure

Data Masking. Procedure Procedure Author: G S Chapman Date: October 2008 Version: 1.1 Location of Document: DOCUMENT HISTORY Version Date Changed By: Remarks 1.1 20/10/2008 G S Chapman This version DOCUMENT DISTRIBUTION Copy

More information

Setting up SQL Translation Framework OBE for Database 12cR1

Setting up SQL Translation Framework OBE for Database 12cR1 Setting up SQL Translation Framework OBE for Database 12cR1 Overview Purpose This tutorial shows you how to use have an environment ready to demo the new Oracle Database 12c feature, SQL Translation Framework,

More information

Setting up the Oracle Warehouse Builder Project. Topics. Overview. Purpose

Setting up the Oracle Warehouse Builder Project. Topics. Overview. Purpose Setting up the Oracle Warehouse Builder Project Purpose In this tutorial, you setup and configure the project environment for Oracle Warehouse Builder 10g Release 2. You create a Warehouse Builder repository

More information

12. User-managed and RMAN-based backups.

12. User-managed and RMAN-based backups. 12. User-managed and RMAN-based backups. Abstract: A physical backup is a copy of the physical database files, and it can be performed in two ways. The first is through the Recovery Manager (RMAN) tool

More information

Why Not Oracle Standard Edition? A Dbvisit White Paper By Anton Els

Why Not Oracle Standard Edition? A Dbvisit White Paper By Anton Els Why Not Oracle Standard Edition? A Dbvisit White Paper By Anton Els Copyright 2011-2013 Dbvisit Software Limited. All Rights Reserved Nov 2013 Executive Summary... 3 Target Audience... 3 Introduction...

More information

Chain of Command Design Pattern & BI Publisher. Miroslav Samoilenko. Claremont is a trading name of Premiertec Consulting Ltd

Chain of Command Design Pattern & BI Publisher. Miroslav Samoilenko. Claremont is a trading name of Premiertec Consulting Ltd Chain of Command Design Pattern & BI Publisher Claremont is a trading name of Premiertec Consulting Ltd Chain of Command Design Pattern & BI Publisher Statement of the Problem Consider the following simple

More information

Cross Platform Transportable Tablespaces Migration in Oracle 11g

Cross Platform Transportable Tablespaces Migration in Oracle 11g Cross Platform Transportable Tablespaces Migration in Oracle 11g Prepared by ViSolve Migration Team June 2012 Contact ViSolve, Inc. 4010, Moorpark Avenue, #205 San Jose, California 95117 (602) 842 2738

More information

Add an Audit Trail to your Access Database

Add an Audit Trail to your Access Database Add an to your Access Database Published: 22 April 2013 Author: Martin Green Screenshots: Access 2010, Windows 7 For Access Versions: 2003, 2007, 2010 About This Tutorial My Access tutorials are designed

More information

Getting Started with User Profile Data Modeling. White Paper

Getting Started with User Profile Data Modeling. White Paper Getting Started with User Profile Data Modeling White Paper 1 What was old is new again... 3 Fixed schema User Data Pattern 1... 3 Fixed schema on a wide row User Data Pattern 2... 3 Fixed Schema with

More information

<Insert Picture Here> Oracle Database Security Overview

<Insert Picture Here> Oracle Database Security Overview Oracle Database Security Overview Tammy Bednar Sr. Principal Product Manager tammy.bednar@oracle.com Data Security Challenges What to secure? Sensitive Data: Confidential, PII, regulatory

More information

Instant SQL Programming

Instant SQL Programming Instant SQL Programming Joe Celko Wrox Press Ltd. INSTANT Table of Contents Introduction 1 What Can SQL Do for Me? 2 Who Should Use This Book? 2 How To Use This Book 3 What You Should Know 3 Conventions

More information

INTEGRATING MICROSOFT DYNAMICS CRM WITH SIMEGO DS3

INTEGRATING MICROSOFT DYNAMICS CRM WITH SIMEGO DS3 INTEGRATING MICROSOFT DYNAMICS CRM WITH SIMEGO DS3 Often the most compelling way to introduce yourself to a software product is to try deliver value as soon as possible. Simego DS3 is designed to get you

More information

Topics Advanced PL/SQL, Integration with PROIV SuperLayer and use within Glovia

Topics Advanced PL/SQL, Integration with PROIV SuperLayer and use within Glovia Topics Advanced PL/SQL, Integration with PROIV SuperLayer and use within Glovia 1. SQL Review Single Row Functions Character Functions Date Functions Numeric Function Conversion Functions General Functions

More information

Relational Databases. Christopher Simpkins chris.simpkins@gatech.edu

Relational Databases. Christopher Simpkins chris.simpkins@gatech.edu Relational Databases Christopher Simpkins chris.simpkins@gatech.edu Relational Databases A relational database is a collection of data stored in one or more tables A relational database management system

More information

Installing and Configuring Guardium, ODF, and OAV

Installing and Configuring Guardium, ODF, and OAV Installing and Configuring Guardium, ODF, and OAV In this appendix, we will cover the following topics: ff ff ff IBM Infosphere Guardium Database Security Oracle Database Firewall Oracle Audit Vault IBM

More information