gg_zipfile_chk()
#######################################################
# If the directory exists see if the files is there
#######################################################
{
clear
echo
echo
echo "Checking for the V46695-01.zip file"
echo
echo
echo "Checking /ora01/Oracle_SW/gg121 for zip file ......."
echo
if [ -f /ora01/Oracle_SW/gg121/V46695-01.zip ]; then
echo "..../ora01/Oracle_SW/gg121/V46695-01.zip file found....."
else
echo "..../ora01/Oracle_SW/gg121/V46695-01.zip file not found."
fi
echo
echo "Checking /ora01/Oracle_SW/1212111/gg121 for zip file ......."
echo
if [ -f /ora01/Oracle_SW/gg121/1212111/V46695-01.zip ]; then
echo "..../ora01/Oracle_SW/gg121/1212111/V46695-01.zip file found....."
else
echo "..../ora01/Oracle_SW/gg121/1212111/V46695-01.zip file not found."
fi
echo
echo "Checking for the xagpack_7b.zip file"
echo
echo
echo "Checking /ora01/Oracle_SW/xag71 for zip file ......."
echo
if [ -f /ora01/Oracle_SW/xag71/xagpack_7b.zip ]; then
echo "..../ora01/Oracle_SW/xag71/xagpack_7b.zip file found....."
else
echo "..../ora01/Oracle_SW/xag71/xagpack_7b.zip file not found."
fi
echo
}
gg_unzip()
{
echo
echo "Unzip the Oracle GG binaries......."
echo
cd /ora01/Oracle_SW/gg121/1212111
unzip V46695-01.zip
}
xag_unzip()
{
####################################################
# Once the software is copied to the location
# Unzip the software
# This function assumes the XAG software has been
# copied to the correct directory on the /ora01
####################################################
cd /ora01/Oracle_SW/xag71
unzip xagpack_7b.zip
}
A = St”A”ging
B = Data Guard Test or lower level (“B”ackup)
C = Crash & Burn or CIT, POC (alternatively)
D = “D”evelopment this can be DIT as well
E = Training
F = Per”F”formance Test
G = Data “G”uard Prod (alternate usage)
H = Support
I = iCert ?
J =
K =
L =
M = Model, Demo, Config, Vanilla, etc
N =
O =
P = “P”roduction
Q = QA
R = dCert ?
S = SIT
T = Test
U = UAT (User Acceptance Testing)
V =
W = Production Support DEV
X =
Y = Production Support QA
Z = Production Support SIT
Over the years I have thought long and hard about an intelligent way of naming databases, this is only for Oracle environments.
Naming of the database instances should identify immediately what database and instance number it is. I have seen many times where the instance number is not identified and makes it difficult when managing a large environment to keep it all straight.
Instance naming is as follows:
AAAAAXYYZ
AAAAA = This is a 5 char value for the application naming or suite. This can be something that everyone can recognize for a particular app or collection of apps. I always try to make it 5 characters even if I have to "fill" space. This keeps all names the same length, especially when sorting the names of the databases and instances, plus allows an exact match without the worry of spaces.
X = Database usage type (see post of usage types for environments) this can includes things such as "Test", "Production", etc.
YY = Sequential identifier for multiple databases of the same usage types within a particular cluster. So if you had two or three "Test" databases you'd have T01, T02, T03, etc.
Z = Node sequence as used in RAC databases. This would identify the node number in a cluster.
Ex: MRCXXT011 / MRCXXT012
This would identify an instance as being an instance associated with the MRCXXT01 database, and added a suffix in order to identify this as the “1” instance of this database. Instance name can be up to 16 characters and therefore could have additional characters in the event more than 9 nodes were necessary.
In the case of RAC One Node, an “_1” for current running instance, and “_2” for failover instance, is automatically appended to the instance name and is not an option to change this, as Oracle automatically enforces this. For example:
Ex: MRCXXT01_1 / MRCXXT01_2
This would immediately identify an instances as being a RAC One Node (RON) instances associated with the MRCXXT01 database, and an automatically added a suffix in order to identify this as the “_1” or “_2” instance of this database. Instance name can be up to 16 characters and therefore could have additional characters in the event more than 9 nodes were necessary.
Naming of the database should include a descriptive identifier for the application usage of the database, if there is more than one application, a descriptive term should be applied to the collection of applications being used.
Database naming is as follows:
AAAAAXYY
AAAAA = This is a 5 char value for the application naming suite.
X = Database usage type (see appendix 5 for usage types)
YY = Sequential identifier for multiple databases of the
same usage types within a particular cluster.
Ex: MRCXXT01
This would identify a database as MRC in this case, and because there are not 5 chars. We force it to be 5 characters by filling in 2 additional characters (in this case XX) to force all database names to be uniform in size of 8 chars. Since the location is already identified in the cluster name there is no need to replicate it in the databases name, and has been omitted. The database type is ‘Test’ and it is the first MRCXX Test database in this cluster. Note: The sequential number could be extended to make it unique within the enterprise as well.
How to calc buffer sizes for dataguard
My Doc
Oracle Docs 12.1 ACFS Replication
Oracle 12.2 Storage Documentation
Oracle ASM 12c
Oracle Goldengate on DBFS for RAC and Exadata
Let us take a look at the process of configuring Golden Gate 12c to work in an Oracle 12c Grid Infrastructure RAC or Exadata environment using DBFS on Linux x86-64.
This is now supported on ACFS as well, which may outperform the DBFS solution.
Simply put the Oracle Database File System (DBFS) is a standard file system interface on top of files and directories that are stored in database tables as LOBs.
Until recently Exadata did not support using ACFS but ACFS is now supported on version 12.1.0.2 of the RAC Grid Infrastructure.
In summary the steps involved are:
1) Install and configure FUSE (Filesystem in Userspace)
2) Create the DBFS user and DBFS tablespaces
3) Mount the DBFS filesystem
5) Create symbolic links for the Goldengate software directories dirchk,dirpcs, dirdat, BR to point to directories on DBFS
6) Create the Application VIP
7) Download the mount-dbfs.sh script from MOS and edit according to our environment
8) Create the DBFS Cluster Resource
9) Download and install the Oracle Grid Infrastructure Bundled Agent
10) Register Goldengate with the bundled agents using agctl utility
Important Fixes required to implement Oracle Automatic Storage Management File System (ACFS) on Oracle Exadata Database Machine (Doc ID 2022172.1)
Per the below noted doc ID ACFS on Exadata is now supported for GoldenGate files
Oracle ACFS Support on Oracle Exadata Database Machine (Linux only) (Doc ID 1929629.1)
Oracle ACFS use cases on Exadata Database Machine
- The initial design objective of ACFS on Exadata was to provide a general purpose, industry standard, POSIX compliant cluster file system on Exadata platforms to manage all general purpose files with good performance. Oracle ACFS also supports the industry standard network protocols NFS/CIFS and offers a highly available NFS solution with the HANFS feature.
- Oracle ACFS now supports Oracle Database 10g 10.2.0.4 and 10.2.0.5 releases. Customers can now migrate their 10g Oracle Databases to Exadata and upgrade later. This makes Exadata a more flexible platform enabling consolidation and easy migration for customers. See Document 1965897.1 for additional details.
- Oracle ACFS may be configured as a shared Oracle database home, middleware and application homes/binaries and shared files like Oracle Golden Gate trail files etc…
- Oracle ACFS can be configured for use with the database particularly to leverage Oracle ACFS snapshots for database testing and development.
With the latest software release for the Oracle Database Appliance (ODA), Oracle has decided to make ACFS (ASM Cluster FileSystem) the default storage for all new databases. This is a major change for Oracle since ACFS previously had not allowed Oracle data files to be stored on it. ACFS was introduced in Oracle 11.2 and has been proven to be stable and feature rich. However, not until recently has Oracle compared the performance of ACFS to Native ASM.
ACFS is a full-featured cluster filesystem that was introduced with Oracle database release 11gR2 but has been enhanced with each release since then. It now supports all Oracle data file types and is the recommended choice for storage starting with ODA software release 12.x. ASM and ACFS have been optimized for the highest level of performance with Oracle databases as well as general storage requirements such as Virtual Machine (VM) files.
With the 12.x release of the ODA software all databases created with oakcli will create an ACFS filesystem and repository (if it doesn’t already exist) for database storage. With the latest 12.x release of Exadata with OVM (Oracle VM) this will also be the default storage option. Unfortunately if you decide to use ACFS for Exadata database storage you will currently be unable to take advantage of the Oracle Smart Scan option.
In addition to being a general purpose clustered filesystem ACFS offers the following features:
- Point-in-Time Read-Write Snapshots
- High Availability NFS
- Replication
- Encryption