Upload
vaibhavta
View
223
Download
0
Embed Size (px)
Citation preview
8/16/2019 oracle data base administrator.pdf
1/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 1
AboutExpertsRed Gate Oracle ToolsLog in
Search ATO...
All Things Oracle
Full ArticlesWebinarsExpertsDatabase DevApp DevDBAPL/SQLAPEXPuzzles
Data Guard Physical Standby Database Best Practices – Part I
Wissem El Khlifi on 07 August 2012 with 30 comments
Introduction
Oracle Data Guard is one of the software solutions provided by Oracle Corporation to maximize high availability of Oracle databases. Oracle DataGuard maintains one or many secondary databases as alternatives to the primary production database.
Data Guard Architecture
Oracle Data Guard supports both physical standby and logical standby sites.
Physical Standby: When the primary database transactions generate redo entries, a redo apply process keeps up the secondary databases with theexact block copies of the primary database.
Logical Standby: SQL apply processes read the redo and convert it to SQL transactions. These are then applied to the secondary database.
Data Guard Modes
Oracle Data Guard can operate in 3 different modes:
Maximum Protection: Transactions are not allowed to commit until all redo data are written to the online redo logs and propagated to at leastone synchronized secondary database. If for any reason, the primary database cannot propagate its redo stream to one secondary database, th
primary will shutdown to ensure maximum protection mode. Maximum Performance: Transactions are not allowed to commit as soon as the redo are written to the online redo logs. The redo stream isasynchronously propagated to the secondary databases to ensure maximum performance mode.
Maximum Availability: Transactions are not allowed to commit until all redo data are written to the online redo logs and propagated to at leaone synchronized secondary database. If for any reason, the primary database cannot propagate its redo stream to one secondary database, th
primary will NOT shutdown and operates as it it were in maximum performance mode until issues are fixed.
Glossary
Role transition: Changing the role of each database component from primary database to the secondary database or from secondary databaseto the primary database.
http://allthingsoracle.com/author/wissem-el-khlifi/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://allthingsoracle.com/topics/application-development/http://www.red-gate.com/oraclehttp://allthingsoracle.com/experts/http://allthingsoracle.com/about/http://allthingsoracle.com/topics/puzzles/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://allthingsoracle.com/topics/application-development/apex/http://allthingsoracle.com/wp-adminhttp://allthingsoracle.com/experts/http://allthingsoracle.com/experts/http://allthingsoracle.com/topics/application-development/http://www.red-gate.com/products/oracle-development/source-control-for-oracle/?utm_source=allthingsoracle&utm_medium=pubad&utm_content=allthingsoracle-header-ad&utm_campaign=sourcecontrolforforaclehttp://allthingsoracle.com/topics/pl-sql/http://allthingsoracle.com/http://allthingsoracle.com/topics/all-things-oracle-exclusives/http://allthingsoracle.com/author/wissem-el-khlifi/http://allthingsoracle.com/feed/http://allthingsoracle.com/topics/database-administration/http://allthingsoracle.com/topics/webinar/http://allthingsoracle.com/topics/database-development/http://www.red-gate.com/oracle
8/16/2019 oracle data base administrator.pdf
2/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 2
Switchover: Planned role transition for testing. Manual intervention. Fail Over: Unplanned failure. Manual or Automatic intervention. Automatic role transition is the recommended. Primary database: Where the users are connected to access to the database.Standby database: Exists in the the disaster recovery (DR) site. Where the users are connected in the case of planned role transition(Switchover) or in the case of unplanned failure (Fail Over).
Data Guard Observer: Process monitors both primary and standby databases and performs an automatic fail over when necessary.The Broker: The management framework for Oracle Data Guard. It comes integrated into the oracle database enterprise edition.
Fast Start Fail Over (FSFO): Automatic fail over to the standby database occurs in case of failure. FSFO requires the broker.
The Environment
I have 3 VM with version of Oracle Enterprise Linux 5 installed.I will use the Oracle Database 11g Enterprise Edition Release 2; 11.2.0.1.0 on the primary database and the standby database.Oracle software is installed and a database is already created on the primary site.Oracle software is installed and the database will be created during this demonstration for the standby site.On the third host, I have installed a version of Oracle database 11g Client with administrator option; 11.2.0.1.0. This is the Data GuardObserver host.The Oracle Home is on identical path on both nodes: primary database and the standby database.Primary database server name is dg1 with a database name dg1.Standby database server name is dg2 with a database name dg2.The Data Guard Observer server name is dg3.
For the rest of the document, I am going to implement a physical Data Guard environment in maximum performance mode. The whole documentwill be split in 2 parts:
1. Prepare the Data Guard environment.
2. Create the standby database and verity the physical standby database. I will then Configure the Data Guard Broker, enable Fast Start FailOver (FSFO) and run a Data Guard Observer.
Implementation notes
These are the steps to follow:
1. Enable forced logging2. Create a password file3. Configure a standby redo log4. Enable archiving5. Set up the primary database initialization parameters6. Configure the listener and tnsnames to support the database on both nodes
Note: It is recommended to apply all patches on the primary and the standby before setting up the Data Guard environment.
Prepare the primary and the physical Standby Environments
Primary Server: Step 1
Oracle Data Guard requires the primary database to be run in FORCE LOGGING mode. This means that statements using the NOLOGGINGoption will still generate redo information to maintain the Data Guard standby databases.
[oracle@dg1 ~]$ sqlplus / as sysdba
SQL> select force_logging from v$database;
FOR‐‐‐NO
SQL> alter database force logging;
Database altered.
SQL>
The standby log files are required to store redo received from the primary database. Standby redo logs must be equal or larger to the largest redo lofile in the primary database. The standby redo log must have at least one more redo log group than the redo log on the primary database. It isrecommended that the standby redo log is created on the primary database and propagated to the standby for any switch over or fail over operations
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TI‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐ 1 1 7 52428800 512 2 YES INACTIVE 828952 15‐JAN‐12 849105 16‐JAN
8/16/2019 oracle data base administrator.pdf
3/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 3
2 1 8 52428800 512 2 NO CURRENT 849105 16‐JAN‐12 2.8147E+14
3 1 6 52428800 512 2 YES INACTIVE 822304 15‐JAN‐12 828952 15‐JAN
SQL> alter database add standby logfile size 50M;
Database altered.
SQL>SQL> alter database add standby logfile size 50M;
Database altered.
SQL> alter database add standby logfile size 50M;
Database altered.
SQL> alter database add standby logfile size 50M;
Database altered.
SQL>
SQL> select * from v$logfile;
Next, set the LOG_ARCHIVE_CONFIG parameter. The LOG_ARCHIVE_CONFIG parameter enables or disables the sending of redo streams tothe standby sites. The DB_UNIQUE_NAME of the primary database is dg1 and the DB_UNIQUE_NAME of the standby database is dg2. The
primary database is configured to ship redo log stream to the standby database. In this example, the standby database service is dg2.
Next, STANDBY_FILE_MANAGEMENT is set to AUTO so that when Oracle files are added or dropped from the primary database, thesechanges are made to the standby databases automatically. The STANDBY_FILE_MANAGEMENT is only applicable to the physical standbydatabases.
Setting the STANDBY_FILE_MANAGEMENT parameter to AUTO is is recommended when using Oracle Managed Files (OMF) on the primarydatabase. Next, the primary database must be running in ARCHIVELOG mode.
SQL> show parameter db_name
NAME TYPE VALUE‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐db_name string dg1SQL> show parameter db_unique_name
NAME TYPE VALUE‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐db_unique_name string dg1SQL> alter system set log_archive_config='dg_config=(dg1,dg2)';
System altered.
SQL> alter system set log_archive_dest_2= 2 'service=dg2 async valid_for=(online_log file,primary_role) db_unique_name=dg2';
System altered.
SQL> alter system set standby_file_management=AUTO;
System altered.
SQL>
SQL> archive log list;Database log mode Archive ModeAutomatic archival EnabledArchive destination USE_DB_RECOVERY_FILE_ DEST
Oldest online log sequence 7Next log sequence to archive 9Current log sequence 9SQL> exit;
Ensure the Oracle Net Services aliases for both the primary database and standby database are added to the tnsnames.ora file.
[oracle@dg1 ~]$ cat $ORACLE_HOME/network/admin/tnsnames.oradg1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dg1.localdomain)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = dg1) ) )dg2 = (DESCRIPTION =
8/16/2019 oracle data base administrator.pdf
4/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 4
6Like Tweet
(ADDRESS = (PROTOCOL = TCP)(HOST = dg2.localdomain)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = dg2) ) )
[oracle@dg1 ~]$
Copy the updated tnsnames.ora file to the standby site (host).
Standby Server: Step 2
The Oracle database binaries have already been installed at this location ($ORACLE_HOME). The new standby database will have dg2 as the SID
The listener on the standby site must be configured with a static service entry for the standby database. Restart the listener after modification.
[oracle@dg2 admin]$ cat listener.oraLISTENER = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=dg2.localdomain)(PORT=1521)) (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=dg2) (SID_NAME=dg2)
(ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1) ) )
[oracle@dg2 admin]$ lsnrctl start
Create audit directory files under $ORACLE_BASE/admin/$ORACLE_SID/adump. In my example, I will also create the Fast recover area and theoradata directories.
[oracle@dg2 ~]$ mkdir ‐p $ORACLE_BASE/admin/dg2/adump[root@dg2 ~]# mkdir ‐p /opt/oradata[root@dg2 ~]# mkdir ‐p /opt/fast_recovery_area
Next, create a simple parameter file on the standby hist with the DB_NAME value.
[oracle@dg2 dbs]$ echo DB_NAME=dg2 > initdg2.ora[oracle@dg2 dbs]$ cat initdg2.oraDB_NAME=dg2[oracle@dg2 dbs]$
The primary database password file must be copied to the standby system for redo authentication.
[oracle@dg2 dbs]$ scp dg1:$ORACLE_HOME/dbs/orapwdg1 orapwdg2
In the next part of the document, we will create the standby database, verity the physical standby database. We will then configure the Broker, setup the Fast Start failover and the Data Guard Observer.
References:
docs.oracle.com/cd/E11882_01/server.112/e25608/toc.htm
en.wikipedia.org/wiki/Oracle_Data_Guard
Tags: Oracle Data Guard
Wissem El Khlifi
12c Dataguard : Recover from Service
6 Comments11g, 12c, All Things Oracle Full Articles, Database Administration, Database Development, Oracle Database, Troubleshooting
Share
http://allthingsoracle.com/topics/database-development/http://allthingsoracle.com/topics/database-administration/http://allthingsoracle.com/topics/all-things-oracle-exclusives/http://docs.oracle.com/cd/E11882_01/server.112/e25608/toc.htmhttp://allthingsoracle.com/author/wissem-el-khlifi/http://allthingsoracle.com/rolling-forward-a-physical-standby-database-using-the-recover-command/#commentshttp://allthingsoracle.com/tag/oracle-data-guard/http://allthingsoracle.com/topics/oracle-database/http://allthingsoracle.com/topics/oracle-database/12c/http://allthingsoracle.com/topics/oracle-database/11g/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-ii/http://allthingsoracle.com/rolling-forward-a-physical-standby-database-using-the-recover-command/http://allthingsoracle.com/topics/troubleshooting/http://en.wikipedia.org/wiki/Oracle_Data_Guard
8/16/2019 oracle data base administrator.pdf
5/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 5
Gaining maximum benefits from Oracle Data Guard
6 Comments11g, All Things Oracle Full Articles, Database Administration
CommentsTrackbacks
30 Comments
1.
Vicky Bartholo
17/08/2012 · Reply
This was very useful. It helped me validate my setup. Where can I see the section regarding Data Guard Broker, enable Fast Start Fail Over (FSFO) and run a Data Guard Observer?
ashu
28/05/2013 · Reply
hii this is ashu,i had a dout.could we convert logical standby to physical standby..actually what happen i try it..but it is not come back it previous stage..
please send. Thanks & Reply Ashu
2.
All Things Oracle
20/08/2012 · Reply
Hi Vicky,
Thank you for your comment - I'm pleased the article has helped you. Part 2 will will published on here soon.
Thanks,
James
3.
Muhammad Ikram
22/08/2012 · Reply
Wisem, It was really nice step by step guide, waiting for the second part.
http://allthingsoracle.com/gaining-maximum-benefits-from-oracle-data-guard/http://allthingsoracle.com/topics/oracle-database/11g/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3780#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3699#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3615#respondhttp://allthingsoracle.com/gaining-maximum-benefits-from-oracle-data-guard/#commentshttp://allthingsoracle.com/topics/all-things-oracle-exclusives/http://allthingsoracle.com/topics/database-administration/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=88116#respond
8/16/2019 oracle data base administrator.pdf
6/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 6
4.
Wissem
22/08/2012 · Reply
Hello, Thank you for your comment. The Broker set up will be published in the part 2, soon.
Best regards,Wissem
5.
Gaetano
22/08/2012 · Reply
Wissem,Thanks a lot for sharing this article.Waiting the next part(s).BR,Gaetano
6.
Rafael
23/08/2012 · Reply
Nice article, I will use it for my next Data Guard setup. thank you Sir and hope to see your second part soon.Rafael
7.
Wissem
23/08/2012 · Reply
Muhammad,Thank you for your nice comment.Best regards,Wissem
8.
Eric
28/08/2012 · Reply
Wassem,Shouldn't this statment have the NOT removed.
Maximum Performance: Transactions are not allowed to commit as soon as the redo are written to the online redo logs. The redo stream isasynchronously propagated to the secondary databases to ensure maximum performance mode.
thanks,Eric
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3811#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3876#respondhttp://www.oracle-class.com/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3789#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3800#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3812#respond
8/16/2019 oracle data base administrator.pdf
7/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 7
9.
goutham
28/08/2012 · Reply
Hi Nice document .good explanation
thanks
10.
dheeraj
29/08/2012 · Reply
when can we expect part-2 ? any estimated date ?
11.
oracleman consulting
30/08/2012 · Reply
greatwhen will part2 be available?
12.
Wissem
31/08/2012 · Reply
Hello,Thank you all for your comments. Hopefully, I can publish the second part in 2 weeks.Wissem
13.
Mahir M. Quluzade
03/09/2012 · Reply
Hi Wissem
Very thanks for interesting article. Waiting you article's part II.I created videos on Oracle Data Guard 11g and I used Broker.
I shall very glad, please visit my Oracle Data Guard 11g channel on youtube:http://www.youtube.com/playlist?list=PLBE4B252DFE0F757F&feature=plcp
Best RegardsMahir
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3878#respondhttp://www.mahir-quluzade.com/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=4043#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3902#respondhttp://www.youtube.com/playlist?list=PLBE4B252DFE0F757F&feature=plcphttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3944#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=3964#respondhttp://www.oracle-class.com/
8/16/2019 oracle data base administrator.pdf
8/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 8
14.
Marc Vandermeiren
03/09/2012 · Reply
@Eric : correct ,
Maximum Performance: Transactions are not allowed to commit as soon as the redo are written to the online redo logs. The redo stream is
asynchronously propagated to the secondary databases to ensure maximum performance mode.
should be
Maximum Performance: Transactions are allowed to commit as soon as the redo are written to the online redo logs. The redo stream isasynchronously propagated to the secondary databases to ensure maximum performance mode.
best regards ,Marc
15.
dheeraj
25/09/2012 · Reply
Still awaiting for part-II .... :(
All Things Oracle
25/09/2012 · Reply
Hi Dheeraj,
Part 2 will be published next week - sorry for the delay. If you are subscribed to receive notifications about new comments for this postyou will be sent an email when the article is published.
Thanks,
James
16.
All Things Oracle
27/09/2012 · Reply
Part 2 has now been published: http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-ii/
17.
Trevor North
14/04/2013 · Reply
For dataguard you will need two servers, ideally located in different geographic locations and having the same configuration so that in theevent of a failover , the standby can support the same number of users as the primary database.
But this means you have doubled up on your hardware. What kind of overhead does the failover have in terms of applying the redo logs ?
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=4929#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=5016#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-ii/http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=4047#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=80347#respondhttp://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=4928#respond
8/16/2019 oracle data base administrator.pdf
9/13
8/16/2019 oracle data base administrator.pdf
10/13
8/16/2019 oracle data base administrator.pdf
11/13
Submit Comment
Notify me of followup comments via e-mail. You can also subscribe without commenting.
Submit comment
Cary Millsap’s latest book
Learn all about Oracle extended SQL trace data from Cary Millsap. Includes a full chapter of case studies using Method R software.
Buy now
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/?replytocom=229240#respondhttp://allthingsoracle.com/comment-subscriptions?srp=2608&srk=&sra=shttp://amzn.to/173bpzghttp://amzn.to/173bpzg
8/16/2019 oracle data base administrator.pdf
12/13
8/24/2015 Data Guard Physical Standby Database Best Practices – Part I – All Things Oracle
http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/ 12
OakTable News
Windows 10 AgainPresenting in Perth on 9 September and Adelaide on 11 September (Stage)Avoiding public embarrassment with triggersMessed-Up App of the Day: Crux CCH-01WPython Pass the Pigs
RMOUG News
Come Learn and Play QEW – August 7th at Elitch GardensMay 2015 Quarterly Educational WorkshopCall for Nominations for the RMOUG Board Of Directors 2015-2016
RMOUG Big Data Special Interest Group MeetupThank You for Attending RMOUG Training Days 2015!
ODTUG News
2016 ODTUG Leadership Program Class AnnouncedODTUG Database TwitChat - Revisited
New Tech Journal Article Now AvailableODTUG Member Series: A Man and His Hot Sauce
ODTUG Database Community Newsletter
http://oaktable.net/http://method-r.com/http://oaktable.net/content/windows-10-againhttp://www.odtug.com/p/bl/et/blogaid=491&source=1http://allthingsoracle.com/data-guard-physical-standby-database-best-practices-part-i/http://oaktable.net/content/messed-app-day-crux-cch-01whttp://www.odtug.com/p/bl/et/blogaid=489&source=1http://www.enkitec.com/http://oaktable.net/oakienewshttp://www.rmoug.org/2015/04/10/call-for-nominations-for-the-rmoug-board-of-directors-2015-2016/http://www.rmoug.org/http://oaktable.net/feed/blog-rss.xmlhttp://www.rmoug.org/2015/03/31/rmoug-big-data-special-interest-group-meetup/http://www.rmoug.org/2015/06/23/come-learn-and-play-qew-august-7th-at-elitch-gardens/http://www.rmoug.org/feed/rss/http://www.rmoug.org/2015/04/25/may-2015-quarterly-educational-workshop/http://www.odtug.com/http://www.odtug.com/f/bl/1http://oaktable.net/content/presenting-perth-9-september-and-adelaide-11-september-stagehttp://www.red-gate.com/products/oracle-development/source-control-for-oracle/?utm_source=allthingsoracle&utm_medium=pubad&utm_content=allthingsoracle-sidebar-ad&utm_campaign=sourcecontrolforforaclehttp://www.odtug.com/p/bl/et/blogaid=482&source=1http://www.odtug.com/p/bl/et/blogaid=490&source=1http://oaktable.net/content/python-pass-pigshttp://www.rmoug.org/2015/03/21/thank-you-for-attending-rmoug-training-days-2015/http://oaktable.net/content/avoiding-public-embarrassment-triggershttp://www.odtug.com/p/bl/et/blogaid=492&source=1http://www.rmoug.org/
8/16/2019 oracle data base administrator.pdf
13/13