|
ISBN
0-9727513-3-5
ISBN 13
978-0972751339 |
Library of Congress Number:
2003097636 |
|
227
pages - Perfect Bind 9x6 |
PD 09 |
|
Shelving:
Databases/Oracle |
Oracle In- Focus Series # 4 |
|
|
Oracle Replication
Expert Methods for Robust Data Sharing
Donald
K. Burleson, John Garmany,
Steve Karam
Technical Editor:
Robert G.
Freeman
Retail Price $27.95 / £17.95
| Order now and get immediate online
access to the code depot! |
Only
$19.95
(30% off) |
 |
|
|
This book is an indispensable reference for any Oracle DBA who must
ensure the consistency of data across distributed platforms. With the
advent of cheap disk and fast worldwide connectivity, many Oracle
professionals recognize the benefits of distributing Oracle data.
However, Oracle multi-master replication is extremely complex and
time-consuming to implant. This book addresses the complexity of Oracle
replication by providing working code examples and illustration from
working systems. The text covers all areas of Oracle replication,
including snapshots, using dbms_job to refresh snapshots, multi-master
replication and conflict resolution mechanisms.
Written by a distinguished graduate of West Point, Col. Garmany
leverages his 20+ years of experience into an indispensable guide for
any Oracle professional who must quickly implement Oracle snapshot and
multimaster replication. A noted instructor, author and lecturer, Col.
John Garmany leverages his ability to explain complex issues in Plain
English into a one-of-a-kind book.
This handy reference contain working examples of snapshot and
multimaster replication to allow you to get started quickly with your
Oracle replication structure. Packed with useful notes and an online
code deport, this reference show every aspect of Oracle snapshot
replication including syntax for refresh intervals, managing snapshot
logs, monitoring Oracle replication refresh timings and much more.
Best of all, this is the only book that describes the intricacies of
Oracle multimaster replication and provides working code examples of
complex multimaster replication. Includes a section on Oracle
replication tuning and monitoring, this is a must-have book for all
Oracle professionals who replicate their data.
|
|
*
Presents working syntax examples for all area of Oracle replication.
* Describes the architecture of Oracle multimaster replication in
simple terms and provides illustrative examples.
* Shows working examples of snapshot creation, refresh, and error
detection scripts.
* Details real-world techniques for implement conflict resolution in
multi-master replication.
* Comes with an online code depot with working code examples.
|
About
the Authors:

Donald Burleson |
|
Donald K. Burleson
is one of the world’s
top Oracle Database experts with more than 20 years of full-time DBA
experience. He specializes in creating database architectures
for very large online databases and he has worked with some of the
world’s most powerful and complex
systems.
A former
Adjunct Professor, Don Burleson has written 30 books, published more
than 100 articles in National Magazines, and serves as Editor-in-Chief
of Rampant TechPress. Don is a popular lecturer and teacher and is a
frequent speaker at Oracle Openworld and other international database
conferences.
|
Steve
Karam

|
|
Steve Karam
is one of the few DBAs worldwide to achieve both the Oracle 10g
Certified Master certification and the Oracle ACE designation, both
of which he received before the age of 26. As both a
production DBA and an instructor, he has a proven track record in
performance and troubleshooting on dozens of high profile Oracle
systems including complex RAC environments.
 |
Additionally, Steve has been
developing against Oracle databases for over twelve years on a variety
of platforms including C, C++, Java, PHP, and Application Express. |
| Steve is also involved heavily in
the Oracle community as the President of the Hampton Roads Oracle Users
Group, Web Chair for the IOUG RAC SIG, and judge for the yearly Oracle
Academy educational competition. |
|
John Garmany
|
|
John Garmany
is a Senior
Oracle DBA with Burleson Consulting. A graduate of
West Point, an Airborne Ranger and a retired Lt. Colonel with 20+ years
of IT experience. John is an OCP Certified Oracle DBA with a Master
Degree in Information Systems, a Graduate Certificate in Software
Engineering, and a BS degree (Electrical Engineering) from West
Point. A respected Oracle expert and author, John serves as a
writer for Oracle Internals, DBAZine, SearchOracle
and SELECT Magazine. John is also the author of four
bestselling Oracle books by Rampant TechPress, Oracle Press and CRC
Press. John also hosts a popular Oracle Application Server
Newsletter.
|
Table of Contents:
|
Using the
Online Code Depot
Conventions Used in this Book
A Survey of Oracle Replication
Small static table replication
Small dynamic table replication
Large static table replication
Large dynamic table replication
An Overview of Multimaster
replication
Conclusion
Chapter
1: Oracle Replication Architecture
What is Replication?
Manual Replication Techniques
The Oracle Replication
Architecture Components
Tables and Replication
Materialized Views
Materialized View Logs
Refresh Methods
Types of Oracle Replication
Updateable Materialized Views
Writeable Materialized Views
Multi-Master Replication
Procedural Replication
Which Form of Replication is Right
for You?
Conclusion
Chapter
2: Preparing to Use Oracle Replication
Determining which Replication Method is right for you
Common Replication Setup
Configuring the Replication User
Accounts
Basic Replication Schemas
Advanced Replication Schemas
Configuring Database links for
Basic Replication
Database Links
Creating Database Links
Creating Database Links
– The Basics
Creating Database Links
– Setup Your Replication Environment
Configuring Objects for Replication
Other Configuration Issues
Overview of Replication Packages
Oracle-Supplied Replication
Packages
Conclusion
Chapter
3:
Read-Only Materialized View Replication
Introduction to Read-only Views
Materialized View Architecture
Primary Key Based MViews
ROWID-Based Mviews
Materialized View Logs
Updating Mview Data
Replicating Schemas with
Materialized Views
Creating Materialized Views using
OEM and DBConsole
Refresh Groups for Materialized
Views
Creating Refresh Groups
Refresh Groups with Oracle
Enterprise Manager
Maintaining Read-only Materialized
Views
Conclusion
Chapter
4: Updatable Materialized Views
Introducing Updatable Materialized Views
Setting-up Updatable Materialized
View Replication
Extra step for Oracle 8i and lower
Step 7.1:
Create the master replication group REP_GP1
Step 7.2: Add
the STORE table from the PUBS schema to the master replication group
Step 7.3:
Generate replication support for the STORE table object
Step 7.4: Add
the remaining two tables to the replication group
Step 7.5:
Notify the master (NAVDB) database to track activity on the REP_GP1
objects by resuming replication activity
Creating
Replication Using OEM
Conclusion
|
Chapter 5: Replication Monitoring
The Oracle Job Scheduler
A Refresher on the Oracle Job
Scheduler
Using dbms_job
Monitoring Replication Jobs
Conclusion
Chapter
6: Multi-Master Replication
An Introduction to Multi-Master Replication
Planning Multi-Master Replication
Configuring Tables for Replication
Setting Up MMR – By
Example
Adding Tables to the Master
Replication Group
Tables without Primary Keys
Adding Additional Master Sites
MMR and OEM
Maintaining Multi-Master
Replication
Monitoring Replication
Deferred Error Queue
Key Conflicts
Export, Import Method
Loading or Re-synchronizing Data
Monitoring Replication with OEM
Conclusion
Chapter
7: Conflict Avoidance and Resolution
What are Conflicts?
Conflict Avoidance
Assigning Blocks of Numbers via
Sequences
Assigning a Prefix Based on Site
Name
Conflict Resolution
Examples of Defining Conflict
Resolutions
Monitoring Conflict Resolution
Using OEM to define Conflict
Resolution methods
Data Mis-convergence
Using the dbms_rectifier_diff
package
Conclusion
Chapter
8: Introduction to Oracle Data Guard
Introduction to Oracle Data Guard
Types of Failures
Unplanned Downtime
Planned Downtime
Oracle High Availability Options
Types of Standby Databases
Physical Standby Database
Logical Standby Database
Benefits and Drawbacks of Data
Guard
Disaster Protection
Load Balancing
Automated Management
Data Guard Downsides
Lifecycle of a Standby Database
Creation of Standby Database
Recovery or read-only mode
Switchover or failover operation
Standby Database in Standard
Edition
Chapter
9: Oracle Streams Replication
Introduction to Streams Replication
Streams replication is the new kid
on the block!!
Data Sharing and Replication
Global Streams Operations
Data Synchronization
Data Replication
What is Oracle Streams?
Where to use Streams Replication
Message Queuing
Event Messaging and Notification
Data Replication with Streams
Streams Advanced Replication
Conclusion
Index
|
Index:
|
A
add_master_site
add_update_resolution
Advanced Queuing
alter_master_repobject
asynchronous replication
C
Change Data
Capture
compatible
Complete Refresh
content based routing
cpu_count
create_master_repgroup
create_master_repobject
D
Data Definition
Language
Data Guard
Data
Manipulation Language
Data Replication
db_domain
dba_extents
dba_jobs
dba_jobs_running
dba_logstdby_unsupported
dba_mview_logs
dba_repcat
dba_repcatlog
dba_repgroup
dba_represolution_statistics
dbms_defer
dbms_defer_query
dbms_defer_sys
dbms_ijob
dbms_job
dbms_mview
dbms_offline_og
dbms_offline_snapshot
dbms_rectifier_diff
dbms_refresh
dbms_repcat
dbms_repcat_admin
dbms_repcat_instantiate
dbms_repcat_rgt
dbms_reputil
DDL
See Data Definition Language
deferred transaction queue
deferred_tran_id
deferror
define_site_priority
delete_master_repobject
differences
Disaster Recovery
distributed_transactions
do_deferred_repcat_admin
E
Earliest
Timestamp Value
Extract, Transform and Load
F
fast refresh
FORCE LOGGING
Force Refresh
G
gateways
generate_replication_support
global_names
Group Priority Value
I
implicit_destroy
initSID.ora
interval
J
job_queue_process
job_queue_processes
L
Latest Timestamp
Value
Logical Change Record
LogMiner
|
M
master
definition site
materialized view
Maximum Value
Message Systems
method
Minimum Value
multi-consumer queues
N
next_date
O
open_links
P
parallel_automatic_tuning
parallel_max_servers
parallel_min_servers
processes
publish and subscribe methodology
purge
purge_log
push
push_deferred
push_deferred_rpc
Q
quiesce
R
Real Application
Cluster
rectify
refresh_after_errors
repadmin
repcat$
repcat_admin
replication_dependency_tracking
replication_off
repproxy
resume_master_activity
rupd$_
S
Scalability
schedule_purge
schedule_push
sequence
shared_pool_size
Site Priority Value
Snapshot based replication
SQL apply mode
Streams AQ
SVRMGRL
switchover operation
T
target master
table
tns_admin
tnsnames.ora
transformations
Transparent Application Failover
U
user_jobs
user_jobs_running
user-enqueued events
V
v$process
v$session
|
|
Reviews:
Jim
from Pittsburgh, PA says:
This is a great reference for Oracle replication and does
an excellent job of explaining the issues, especially
multimaster replication. I have Freemans's Oracle new features
book also, and I enjoy the style and cadence of the writing
style. The text is not preachy and shows with clear examples all
of the ways to set up and use Oracle replication. I highly
recommend this book, and the price is great too!
By
John:
This is a great reference for Oracle replication and does an excellent
job of explaining the issues, especially multimaster replication. I
have Freeman's Oracle new features book also, and I enjoy the style and
cadence of the writing style. The text is not preachy and shows with
clear examples all of the ways to set up and use Oracle replication. I
highly recommend this book, and the price is great too.
Errata (Second Edition):
Errata
(First Edition):
Page 46
At the
beginning of the book mention following
unless otherwise mentioned "local" is
the master site where base table is and "remote" is to where
table is replicated to. eg. whether "remote" is replicated in "local"
or vice versa. eg. Page 46 ch2 begin
Page 52
In the third example near the middle of
the page
Create
materialized view log on employee
tablespace users
with ROWID PRIMAY KEY;
This
should be:
Create
materialized view log on employee
tablespace users
with ROWID PRIMARY KEY;
PRIMARY
KEY is listed as PRIMAY KEY and shouldn't be represented as such
Page 57
sub-topic does not related to what it contains
Page
67
In the 10gR2 PL/SQL packages
documentation we see:
"If you set list_of_gnames to NULL,
then the user is registered for all replication groups, even
replication groups that are not yet known when this procedure is
called. You must use named notation in order to set list_of_gnames to
NULL."
The repproxy user should be able to
see and use OPLINC_MASTER_REPage ROUP.
create_snap_proxy.sql
create user repproxy
identified by repproxy;
alter user repproxy default tablespace users;
alter user repproxy temporary tablespace temp;
grant create session to repproxy;
grant select any table to repproxy;
--
--
BEGIN
dbms_repcat_admin.register_user_rePage roup(
username
=> 'repproxy',
privilege_type => 'proxy_snapadmin',
list_of_gnames => NULL);
Page 84-105
subtopic(even footer) is "Ora8i or lower". Obvious questions comes up
what about "Ora9i" ?
Page 130
3/4para : job_queue_processes : is this noof processes or wake up
interval in seconds ?
typo : tip :
job_queue_processes
Page 131-134
para and Page 137-2/3/4para : some level of repetition
Page 142
Typo : 2nd script starting with "cat ..." : should be "xargs" (replace
e with s)
Page 162
Typo : 3rd row from bottom : "execute any"
Page 163
cmd set to create repprop does not have "grant execute any procedure"
as mentioned in Page 160/161
Page 164
last sentence : not in appendix
Page 168
Contrary to the text, there is a
way to create Push/Purge jobs.
In
the Distribution->Advanced
Replication->Schedule->Push tab,
if the Push job for a database link is not scheduled, you can:
1. Highlight the database link and click Edit
2. Click the 'Periodic Push' radio button
3. Specify the start time, frequency etc
4. Click Ok
5. Click Apply
and this will create the push job.
Create a Purge job with a similar method.
Page 200
Top cannot understand text inside bold section square. does
not make sense. may be wrong context; may be it should come to Page 206
Page 201
2nd para from bottom : last sentence <== something wrong
|