Quantcast
Channel: ckim – Oracle RAC, Virtualization and Exadata Expert
Viewing all 48 articles
Browse latest View live

OEL 5.10 Linux Prep for E-Business Suite 12.2 without the Public-Yum Repository

$
0
0

Most production database and e-business suite application servers do not allow access to the public-yum repository. If your company happens to be super secure, they may not even allow the development servers to access any of the servers outside their local network. The following set of instructions are instrumental if you happen to fall into either one of these situations.

In this blog, I will step you through the process to provision an E-Business Suite application server. The steps are incredibly easy and allows you to leverage the existing DVD or ISO image that we downloaded from edelivery.oracle.com. We assume that you have already installed Oracle Enterprise 5 Update 10 but these examples are applicable to any flavor of Oracle Linux 5/6 or even Red Hat 5/6 operating systems (not as clean cut but stay tuned as we will show you how you can do this). We strongly encourage the minimalistic installation of Linux. Not only does it make your environment more secure, but it also makes your environment easier to manage and update/upgrade. In addition, we assume that you have downloaded the EBS Pre Installation RPMs and required prerequisites from the
Linux Preparation for Oracle E-Business Suite R12 Installation blog article.

We heavily leverage yum so that we can easily mitigate the issues with RPM dependencies and install the RPMs that we need without issues. We start the process by building a local yum repository from the DVD image. First mount the DVD:

————————————————————————————————————————

# cd /mnt
# mkdir oel510
# mount /dev/cdrom /mnt/oel510 -t iso9660 -o ro

————————————————————————————————————————
Second, view the file that we need to create a local yum repository of the DVD

# cat /mnt/oel510/.discinfo

[root@ebs2 yum.repos.d]# cat /mnt/oel510/.discinfo
1380762881.301333
Oracle Linux Server 5.10
x86_64
1,2,3,4,5
Server/base
Server/RPMS
Server/pixmaps

————————————————————————————————————————
Leveraging the mediaid number from the DVD .discinfo file, we can create a custom repo file in /etc/yum.repos.d

[root@ebs2 yum.repos.d]# cat vna.repo
[viscosity]
mediaid=1380762881.301333
name=Local Viscosity Repo
baseurl=file:///mnt/oel510/Server
enabled=1
gpgcheck=no

————————————————————————————————————————————————————————————
Test our local yum repository by installing the libXp RPM. This happens to be a required prerequisite for the openmotif21 RPM so we will kill two birds with one stone.

[root@ebs2 yum.repos.d]# yum install libXp
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
You can use up2date --register to register.
ULN support will be disabled.
viscosity                                                                                        | 1.1 kB     00:00     
viscosity/primary                                                                                | 1.5 MB     00:00     
viscosity                                                                                                     3365/3365
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package libXp.i386 0:1.0.0-8.1.el5 set to be updated
---> Package libXp.x86_64 0:1.0.0-8.1.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                  Arch                      Version                          Repository                    Size
========================================================================================================================
Installing:
 libXp                    i386                      1.0.0-8.1.el5                    viscosity                     22 k
 libXp                    x86_64                    1.0.0-8.1.el5                    viscosity                     23 k

Transaction Summary
========================================================================================================================
Install       2 Package(s)
Upgrade       0 Package(s)

Total download size: 45 k
Is this ok [y/N]: y
Downloading Packages:
------------------------------------------------------------------------------------------------------------------------
Total                                                                                    35 MB/s |  45 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : libXp                                                                                            1/2 
  Installing     : libXp                                                                                            2/2 

Installed:
  libXp.i386 0:1.0.0-8.1.el5                                libXp.x86_64 0:1.0.0-8.1.el5                               

Complete!

————————————————————————————————————————————————————————————
Install the 2 RPMs that are prerequisites for the Oracle EBS Pre Install RPM. We will leverage the rpm -ihv command to manually install the two RPMs:

[root@ebs2 ~]# rpm -ihv openmotif21-2.1.30-11.EL5.i386.rpm xorg-x11-libs-compat-6.8.2-1.EL.33.0.1.i386.rpm
Preparing...                ########################################### [100%]
   1:xorg-x11-libs-compat   ########################################### [ 50%]
   2:openmotif21            ########################################### [100%]

————————————————————————————————————————
Important Notes:
1. yum local install or yum install will fail due to missing public key check
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 1e5e0159

Public key for oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm is not installed
2. You can still leverage the oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm but need to add an option to the yum command to disable gpg signature checking. Issue the “yum -h” command for all the options.

————————————————————————————————————————
Leveraging the oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm and with the localinstall option, we will be able to fully take advantage of the EBS pre install RPM even if our EBS server does not have access to the public yum repository:

[root@ebs2 ~]# yum --nogpgcheck localinstall  oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
You can use up2date --register to register.
ULN support will be disabled.
Setting up Local Package Process
Examining oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm: oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64
Marking oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package oracle-ebs-server-R12-preinstall.x86_64 0:1.0.0-4.el5 set to be updated
--> Processing Dependency: /usr/bin/odbcinst for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/gcc/i386-redhat-linux/4.1.1/libstdc++.a for package: oracle-ebs-server-R12-preinstall
Importing additional filelist information
--> Processing Dependency: /usr/lib/libaio.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/libc.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib/libodbccr.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: /usr/lib64/libodbccr.so for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: elfutils-libelf-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: elfutils-libelf-devel-static for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: gcc for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: gcc-c++ for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: glibc-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: glibc-headers for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libaio-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libgdbm.so.2 for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: libstdc++-devel for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: sysstat for package: oracle-ebs-server-R12-preinstall
--> Processing Dependency: xorg-x11-xinit for package: oracle-ebs-server-R12-preinstall
--> Running transaction check
---> Package elfutils-libelf-devel.x86_64 0:0.137-3.el5 set to be updated
---> Package elfutils-libelf-devel-static.x86_64 0:0.137-3.el5 set to be updated
---> Package gcc.x86_64 0:4.1.2-54.el5 set to be updated
---> Package gcc-c++.x86_64 0:4.1.2-54.el5 set to be updated
---> Package gdbm.i386 0:1.8.0-28.el5 set to be updated
---> Package glibc-devel.i386 0:2.5-118 set to be updated
---> Package glibc-headers.x86_64 0:2.5-118 set to be updated
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers
--> Processing Dependency: kernel-headers for package: glibc-headers
---> Package libaio-devel.i386 0:0.3.106-5 set to be updated
---> Package libstdc++-devel.i386 0:4.1.2-54.el5 set to be updated
---> Package sysstat.x86_64 0:7.0.2-12.0.1.el5 set to be updated
---> Package unixODBC.x86_64 0:2.2.11-10.el5 set to be updated
--> Processing Dependency: unixODBC-libs = 2.2.11-10.el5 for package: unixODBC
--> Processing Dependency: libodbcinst.so.1()(64bit) for package: unixODBC
--> Processing Dependency: libodbc.so.1()(64bit) for package: unixODBC
---> Package unixODBC-devel.i386 0:2.2.11-10.el5 set to be updated
--> Processing Dependency: libtdsS.so.1 for package: unixODBC-devel
--> Processing Dependency: liboraodbcS.so.1 for package: unixODBC-devel
--> Processing Dependency: libesoobS.so.1 for package: unixODBC-devel
--> Processing Dependency: libboundparam.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcnnS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcminiS.so.1 for package: unixODBC-devel
--> Processing Dependency: liboplodbcS.so.1 for package: unixODBC-devel
--> Processing Dependency: libmimerS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcdrvcfg1S.so.1 for package: unixODBC-devel
--> Processing Dependency: libgtrtst.so.1 for package: unixODBC-devel
--> Processing Dependency: libsapdbS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbctxtS.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbccr.so.1 for package: unixODBC-devel
--> Processing Dependency: libnn.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcinst.so.1 for package: unixODBC-devel
--> Processing Dependency: libtemplate.so.1 for package: unixODBC-devel
--> Processing Dependency: libodbcdrvcfg2S.so.1 for package: unixODBC-devel
---> Package unixODBC-devel.x86_64 0:2.2.11-10.el5 set to be updated
---> Package xorg-x11-xinit.x86_64 0:1.0.2-15.el5 set to be updated
--> Processing Dependency: xauth for package: xorg-x11-xinit
--> Running transaction check
---> Package kernel-headers.x86_64 0:2.6.18-371.el5 set to be updated
---> Package unixODBC-libs.i386 0:2.2.11-10.el5 set to be updated
---> Package unixODBC-libs.x86_64 0:2.2.11-10.el5 set to be updated
---> Package xorg-x11-xauth.x86_64 1:1.0.1-2.1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                          Arch   Version             Repository                                            Size
========================================================================================================================
Installing:
 oracle-ebs-server-R12-preinstall x86_64 1.0.0-4.el5         /oracle-ebs-server-R12-preinstall-1.0.0-4.el5.x86_64  63 k
Installing for dependencies:
 elfutils-libelf-devel            x86_64 0.137-3.el5         viscosity                                             24 k
 elfutils-libelf-devel-static     x86_64 0.137-3.el5         viscosity                                             64 k
 gcc                              x86_64 4.1.2-54.el5        viscosity                                            5.3 M
 gcc-c++                          x86_64 4.1.2-54.el5        viscosity                                            3.8 M
 gdbm                             i386   1.8.0-28.el5        viscosity                                             28 k
 glibc-devel                      i386   2.5-118             viscosity                                            2.1 M
 glibc-headers                    x86_64 2.5-118             viscosity                                            601 k
 kernel-headers                   x86_64 2.6.18-371.el5      viscosity                                            1.5 M
 libaio-devel                     i386   0.3.106-5           viscosity                                             12 k
 libstdc++-devel                  i386   4.1.2-54.el5        viscosity                                            2.8 M
 sysstat                          x86_64 7.0.2-12.0.1.el5    viscosity                                            188 k
 unixODBC                         x86_64 2.2.11-10.el5       viscosity                                            291 k
 unixODBC-devel                   i386   2.2.11-10.el5       viscosity                                            738 k
 unixODBC-devel                   x86_64 2.2.11-10.el5       viscosity                                            793 k
 unixODBC-libs                    i386   2.2.11-10.el5       viscosity                                            551 k
 unixODBC-libs                    x86_64 2.2.11-10.el5       viscosity                                            554 k
 xorg-x11-xauth                   x86_64 1:1.0.1-2.1         viscosity                                             32 k
 xorg-x11-xinit                   x86_64 1.0.2-15.el5        viscosity                                             26 k

Transaction Summary
========================================================================================================================
Install      19 Package(s)
Upgrade       0 Package(s)

Total size: 19 M
Total download size: 19 M
Is this ok [y/N]: y
Downloading Packages:
------------------------------------------------------------------------------------------------------------------------
Total                                                                                   4.7 GB/s |  19 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : unixODBC-libs                                                                                   1/19 
  Installing     : unixODBC                                                                                        2/19 
  Installing     : xorg-x11-xauth                                                                                  3/19 
  Installing     : xorg-x11-xinit                                                                                  4/19 
  Installing     : sysstat                                                                                         5/19 
  Installing     : gdbm                                                                                            6/19 
  Installing     : unixODBC-libs                                                                                   7/19 
  Installing     : libstdc++-devel                                                                                 8/19 
  Installing     : unixODBC-devel                                                                                  9/19 
  Installing     : unixODBC-devel                                                                                 10/19 
  Installing     : kernel-headers                                                                                 11/19 
  Installing     : glibc-headers                                                                                  12/19 
  Installing     : glibc-devel                                                                                    13/19 
  Installing     : libaio-devel                                                                                   14/19 
  Installing     : gcc                                                                                            15/19 
  Installing     : gcc-c++                                                                                        16/19 
  Installing     : elfutils-libelf-devel                                                                          17/19 
  Installing     : elfutils-libelf-devel-static                                                                   18/19 
  Installing     : oracle-ebs-server-R12-preinstall                                                               19/19 

Installed:
  oracle-ebs-server-R12-preinstall.x86_64 0:1.0.0-4.el5                                                                 

Dependency Installed:
  elfutils-libelf-devel.x86_64 0:0.137-3.el5              elfutils-libelf-devel-static.x86_64 0:0.137-3.el5             
  gcc.x86_64 0:4.1.2-54.el5                               gcc-c++.x86_64 0:4.1.2-54.el5                                 
  gdbm.i386 0:1.8.0-28.el5                                glibc-devel.i386 0:2.5-118                                    
  glibc-headers.x86_64 0:2.5-118                          kernel-headers.x86_64 0:2.6.18-371.el5                        
  libaio-devel.i386 0:0.3.106-5                           libstdc++-devel.i386 0:4.1.2-54.el5                           
  sysstat.x86_64 0:7.0.2-12.0.1.el5                       unixODBC.x86_64 0:2.2.11-10.el5                               
  unixODBC-devel.i386 0:2.2.11-10.el5                     unixODBC-devel.x86_64 0:2.2.11-10.el5                         
  unixODBC-libs.i386 0:2.2.11-10.el5                      unixODBC-libs.x86_64 0:2.2.11-10.el5                          
  xorg-x11-xauth.x86_64 1:1.0.1-2.1                       xorg-x11-xinit.x86_64 0:1.0.2-15.el5                          

Complete!

For additional insight into preparing an EBS server, please visit this blog entry:
Linux Preparation for Oracle E-Business Suite R12 Installation

For insight into building Oracle Linux 6 server, please visit this blog entry:
Oracle Linux 6 Installation and Configuration Step-By-Step


Shareplex zero downtime technical architecture

$
0
0

Lot of my customers migrate databases from Solaris or AIX to Red Hat or Oracle Linux. I see more AIX databases being migrated to Linux than Solaris but this is probably just a reflection of the customers that I am involved with. Here’s a simple diagram that I created for a customer in the financial sector (of course, all confidential information is removed) who migrated from AIX to Red Hat Linux.

Shareplex Zero Downtime Database Migration Strategy

This same strategy can be leveraged to migrate customers from AIX/Solaris to Linux on a virtualized infrastructure or even AIX/Solaris to Exadata depending on the target platform. We do see more VMware customers than Oracle VM customers who want to migrate from a big endianness platform to a little endianness platform. I’ve got this entire transportable tablespace (TTS) migration almost automated. It is definitely scripted all the way through and have thoroughly tested the scripts in several customers. I guess I need to “put that lipstick on the pig” and GUI-ize it and productize the scripts to provide an additional value to my customers.

In this blog, everything starts with Shareplex. We need to plan for Shareplex installation on the production database servers (both source and target) couple of weeks prior to the final production cut-over date. We ask for couple of weeks as we are likely to encounter firewall ports that need to be opened between the AIX/Solaris database server to the new Linux servers. We will install Shareplex on both AIX and Linux and start Shareplex on both environments. On the Linux side, the skeleton database should also be pre-created and all the Oracle software installed and patched. Also on the Linux side, we will need to stop the post process (we will define what the post process is later).

On the source system (in our example AIX database), we will define the Sharplex configuration which identifies all the schemas or schema.tables that need to be replicated from the source database to the target database (in our example Linux database). I have a script that I can share which will generate the configuration file depending on which approach you choose. Once we define and activate the configuration, the capture process will start reading the redo logs or archive logs on the source system for changes to objects listed in the configuration. The Export process runs on the source system and reads data from the export queue and sends it across the network to the target system. The import process works directly with the export process. The import process runs on the target system to receive data and build a post queue. We may have more than one export and import process; they are always paired so if we have 2 export processes, we will have 2 import processes. By default, we have one of each. The post process also runs on the target system and reads the post queue, constructs SQL statements, and applies the SQL statements to replicated objects. We may have one or more post processes depending on performance design and considerations.

Depending on the size of the database and the approach that we take (RMAN image copy, datapump, export/import, CTAS over network, etc), the database cloning process can take 1 hours, 1/2 day, 1 day, 1 week or longer. We need to architect our zero downtime migration so that with any of these cloning options, the business perceives a zero downtime or a near zero downtime database migration. So how do we do that? We defined all the processes involved with Shareplex at a high-level. Let’s see how we can leverage our knowledge to start the zero downtime migration efforts. Earlier we discussed that we have a configuration file which defines the objects that need to be replicated. We need to activate our configuration so that the capture process will start reading redo logs/archivelogs and generating Shareplex queues. Once we activate our configuration, changes on the source system will be captures, exported and imported to the target system. Remember earlier, we stopped our post process as part of our high-level installation overview. All the changes from the source system will be sent to the target system (as we stopped the post process) and will accumulate for the entire duration of the migration window until we start the post process. We will need to size the target Shareplex file system with proper design considerations so that the file system can house all the Shareplex transaction queue files.

If you look at the top left corner of the diagram, we start with the RMAN image copy of the database to a file system. If you are on AIX, this can be a Veritas file system. If you cannot afford Veritas, you can perform a RMAN backup to a NFS file system. For VLDB databases, you can perceive the performance differences between a locally mounted file system versus a NFS file system. If you happen to have 10GigE available, you may not notice much performance differences.

The RMAN image copy strategy involves performing incremental update. We will perform an initial level 0 image copy backup of the database and take a incremental level 1 backup numerous times with the intention of updating the image copy with the incremental updates (aka Forever Incremental or Incrementally Updated Backups). Make sure to have block change tracking enabled before you start this process.

In this diagram, we also introduce an AIX staging server near the production database server. If we look at the transportable tables architecture, we must put the tablespaces in read-only mode to perform the TTS metadata datapump export. If you introduce the staging server, you simplify your approach and can eliminate any of the migration activity (such as putting the database in read-only mode) on the production database.

We need to go through the steps to synchronize the production database and the image copy database on the staging server. We can perform the final incremental level 1 backup update and/or even apply archivelogs to the database on the staging server as necessary depending on your approach.

  • This is where we need to decide if we want to work with SCNs and perform a zero downtime migration or take a little outage and have some flexibility. Some of our customers can afford the little downtime and some of our customers have told us that it must be zero downtime.
  • The staging server is needed so that you do not have to put the production database in read only mode for the duration that the TTS export is running

Next, we open the copied database with the resetlog option. Once the database is open, we issue the commands to put the entire database in read-only mode and copy the database files (in the absence of NFS or Veritas) to the Linux server. If we have Veritas in the equation, we can simply swing the file system to the Linux server and mount the volume. If we are using NFS, we simply present the NFS share to the Linux OS and mount the NFS share. For Solaris folks, we can mount a Solaris file system on Linux in read only mode and Veritas is not needed.

For the next step, this is where your datapump expertise starts to pay off. We need to perform a TTS export of the tablespaces that we are migrating over from AIX to Linux. The TTS datapump export is relatively simple for those who have done this before but can be a little intimidating to some who are new to this process. Once we are complete with the TTS metadata export, we need to SFTP the metadata export and log to the Linux server. After this step, we no longer need the staging server and can be shutdown. We want to the TTS export log so that we can parse the log to generate our RMAN endian conversion script. In our example, we are going to ASM so the RMAN endianness conversion will place the datafilee inside of ASM. The amount of time to migrate the database from file system to ASM will vary on the source and target storage array and wether we are talking 10gigE, bonded 1gigE, 4gig HBAs, 8gig HBAs or IB. Even for the slower HBA on older storage arrays, we can effectively drive 1 TB of endianness conversion per hour.

Determining Usage of Oracle Management Packs

$
0
0

Lot of our customers seem to be confused about the licensing of Oracle management packs. As we install and configure OEM for our customers, we tell them to be careful to leverage only the features that they are licensed for. To clarify for our customers and others, I decided to detail out when you need to pay for certain licenses and what you are allowed to execute for free if you do not want to pay (or cannot afford to pay) for licenses of Oracle management packs. To start, here’s what you are allowed to monitor without paying for licenses:

• Histograms
• Metrics
• OS statistics
• Optimizer statistics
• SQL Traces
• SQL statistics
• Service statistics
• Statspack
• System statistics
• Time model
• Wait model

Starting in Oracle Database 11g, you can cautiously leverage the CONTROL_MANAGEMENT_PACK_ACCESS initialization parameter to control access or disable the packs. This parameters accepts the following parameters:

• NONE
• DIAGNOSTIC
• DIAGNOSTIC+TUNING

In Oracle 12c Release 1 (12.1), the default value for the CONTROL_MANAGEMENT_PACK_ACCESS parameter for Oracle Enterprise Edition is “DIAGNOSTIC+TUNING”. For Standard edition, the default value is set to NONE.

Nowadays, most of Oracle Sales folks are trained to sell the Diagnostic and Tuning pack as part of every database. You should expect this from experienced Oracle Sales folks. You may even get a response for a sales person indicating how can you successfully support or maintain a business critical database without leveraging these features.

Let’s continue our discussion to talk about the Database Diagnostic Pack. Usage of the following feature require licensing the Database Diagnostics Pack:

• Active Session History (ASH)
• Automatic Database Diagnostic Monitor (ADDM)
• Automatic Workload Repository
• Blackouts
• Dynamic metric baselines
• Event history and metric history (database and host)
• Event notifications: notification methods, rules, and schedules
• Monitoring templates
• Performance monitoring (database and host)

You will also have to pay for the database diagnostic pack if you leverage any of the following database stored procedures and packages:

• DBMS_ADDM
• DBMS_ADVISOR
• DBMS_WORKLOAD_REPOSITORY

If you leverage the following view, you will also end up paying for the diagnostic pack:

• V$ACTIVE_SESSION_HISTORY view
• Views with DBA_ADVISOR_ prefix
• Views with DBA_ADDM_ prefix
• Views with DBA_HIST_ prefix

If you leverage any of the SQL scripts from the $ORACLE_HOME/rdbms/admin directory, you will be liable for the diagnostic pack:

• aawrload.sql
• addmrpti.sql
• addmrtp.sql
• ashrpt.sql
• ashrpti.sql
• awrddrpi.sql
• awrddrpt.sql
• awrextr.sql
• awrextr.sql
• awrinfo.sql
• awrload.sql
• awrrpt.sql
• awrrpti.sql
• awrsqrpi.sql
• awrsqrpt.sql
• spawrrac.sql

Usage of the following feature require the Database Tuning Pack:

• Automatic Plan Evolution of SQL Plan Management
• Automatic SQL Tuning
• Reorganize objects
• SQL Access Advisor
• SQL Monitoring
• SQL Profiles
• SQL Tuning Advisor
• SQL Tuning Sets

The Tuning Pack has a direct dependency on the Diagnostic Pack. Stated in another way, if you license the Tuning Pack, you will have to also license the Diagnostic Pack.

Similarly, the usage of any of the stored procedures or packages, views or SQL scripts will incur license of the Database Tuning Pack:

• DBMS_ADVISOR package
• DBMS_SQLTUNE package
• V$SQL_MONITOR view
• V$SQL_PLAN_MONITOR view
• sqltrpt.sql report found in the $ORACLE_HOME/rdbms/admin/ directory

Usage of the following feature require the Database Configuration Management Pack:

• Clone Database
• Clone Oracle Home
• Compare configuration
• Database and Host Configuration
• Deployments
• Patch Database and View Patch Cache
• Patch staging
• Policies
• Search configuration

If you are concerned about a potential Oracle license violation or wandering if you may be using a feature/option that you should not be, you can execute the following SQL code against your database and confirm that you have or have not used licensable features or options:


col name for a45
col description for a40 word wrapped
col feature_info for a35
set lines 266
set pages 66
select name, description, version, detected_usages,
       currently_used, first_usage_date, last_usage_date,
       feature_info
from DBA_FEATURE_USAGE_STATISTICS
where detected_usages > 0
/

Install Oracle Linux 7 on VirtualBox

$
0
0

This blog article focuses on configuring VirtualBox to create a new VM for Oracle Linux 7 and installing Oracle Linux 7 from the ISO image as a guest operating system. The Oracle Linux 7 ISO image can be downloaded from edelivery.oracle.com – Oracle Software Delivery Cloud. You must have a valid Oracle Account (free) to download the Linux ISO.

Look in the near future for a VMware Fusion and RedHat 7 version of this post. For some reason when this post went out, the latest version of VMware Fusion did not recognize the virtual disk or the network interface assigned to the VM with RedHat 7 (Oracle Linux 7 worked fine). Stay tuned as that problem will probably be resolved soon.

As far as this blog post is concerned, the follow-up for this post will be on setting up docker for Oracle Linux 6 and Oracle Linux 7.

Configuring VirtualBox


To create a VM, click on the New button on the top left corner and provide a descriptive name for the VM, location of the VM and select the type of OS. The name that is specified will be used to identify the VM configuration:

2014 09 01 01 51 04

On a side note, here’s the list of flavors of Linux supported by VirtualBox. We will choose Oracle (64Bit) for this VM.
2014 09 01 10 31 57

Once the required information is provided, click on the Continue button

2014 09 01 01 51 18

Next configure the amount of memory allocated for this VM. We will allocate 4GB for this VM and click on the Continue button.

2014 09 01 01 51 35
We can modify the virtual disk in another screen later in the configuration process. Take the default and click on the Continue button go to the “Hard drive file type” screen.

2014 09 01 01 51 50
Unless you are planning for this virtual disk to be compatible with VMware or other virtualization technology, select the VDI (VirtualBox disk format) and click on the Continue button.

2014 09 01 01 52 01
Leave the Dynamically allocated option to choose a thinly provisioned virtual disk. If you want better performance for RAC ASM disks, you can choose the option for Fixed size. For the Fixed size disk, VirtualBox will pre-allocate all the space up front. Click on the Continue button to proceed with the configuration.

2014 09 01 01 52 14
For this installation, we will allocate 64GB for the root and /u01 file systems. You may opt to create multiple virtual disks, one for the root file system and another one for the /u01 file system. Click on Create. If you chose earlier for Fixed size, when you click on the Create button, you will be waiting here for a while.

2014 09 01 01 52 27
Once the VDI disk is created with the specified size (thin for dynamically allocated or thick for fixed size provisioned), you will be re-directed back to the main screen.

2014 09 01 01 53 38
Now, let’s configure our VM, in particular, the CD/DVD Drive. Click on the Settings button on the top left corner next to the New button.

2014 09 01 01 53 53
Click on the Storage button on the top (in the middle). On the left side of the screen, choose the IDE controller and Click on the Empty CD icon. Then on the right of the screen, click on the CD image icon for the CD/DVD drive and click on the “Choose a virtual CD/DVD disk file …”. Find your ISO image for Oracle Linux 7 from the file previewer and select the ISO. From the Storage screen, click on the OK button to go back to the main Oracle VM VirtualBox Manager screen.

Installing Oracle Linux 7


From the Oralce VM VirtualBox Manager screen, select your VM that you just created and click on the green Start icon on the top of the screen.
2014 09 01 01 54 51
Hit the arrow key up once and choose the option to Install Oracle Linux 7 and hit the Enter key

2014 09 01 01 55 29
Keep the default English language for United States and click on Continue

2014 09 01 01 56 01
As you can see, the installation process looks significantly different from Oracle Linux 6. Click on the INSTALLATION DESTINATION button.

2014 09 01 12 23 03
Select the “I will configure partitioning.” radio button and click on the Done button on the top left hand corner.

2014 09 01 12 23 54
In the MANUAL PARTITIONING screen, click on the “Click here to create them automatically” URL.

2014 09 01 12 19 22
In our example, we will remove the /home file system and just let the root file system house all the file systems, /home and /u01. To remove the /home file system, click on the /home file system and click on the – sign on the bottom corner of the screen.

CAVEAT: You do NOT want to do this outside your lab. Even in your DEV or non-PROD environment, you will want to carve out a separate file system for the /home file system. You ALWAYS want to carve out a separate /u01 file system for all your Oracle binaries. Click on the Done button on the top left corner.

* Notice that the default file system is XFS (not EXT4 in Oracle or RedHat Linux 6)

2014 09 01 02 07 41
You will be presented with a warning screen just to confirm and Accept the Changes that we made to remove the /home file system. Click on the Accept Changes button.

2014 09 01 02 08 02
You will be routed back to the main Installation Summary screen. By default, the minimal installation option is the installation method of choice for Oracle and Red Hat Linux. If you want a GUI installation, you will want to select the SOFTWARE SELECTION button and choose the KDE desktop. For security purposes, we only recommend the minimal installation option.

To configure the network and hostname, you should click on the NETWORK & HOSTNAME button. The first thing that you need to do is the specify a new Hostname on the bottom left corner.

2014 09 01 12 30 16
Turn on the Network interface by sliding the switch to the on position.

In our case, we will want to assign a static IP address and DNS Servers. Click on the Configure button on the bottom right corner.

2014 09 01 12 32 54
Add all the specifics for your IP address, gateway, subnet and DNS servers. Click on the Save button to save the network settings. You will be re-directed to the NETWORK & HOSTNAME screen. Click on the Done button to go back to the INSTALLATION SUMMARY screen.

Optionally, you may want to choose to install a GUI desktop. This is never recommended for a production environment. For ease of maintenance, you can click on the SOFTWARE SELECTION button and choose to install a “Server with GUI” option and choose the KDE desktop. Click on the Done button after you select all the options that you want installed.

2014 09 01 12 41 08
Once all the configuration is complete, you can click on the Begin Installation button.

2014 09 01 02 08 47
As the installation is progressing, you will see 2 red warnings indicating that the root password is not set and no users are created. At a minimum, click on the Root Password icon to supply a password for the root account to administer the system. Provide the secure password and click on the Done button on the top left corner.

Note: If the root password is insecure, you will be prompted to click on the Done button again to proceed with the insecure password.

2014 09 01 02 10 59

From the Configuration screen, click on the Reboot button.

2014 09 01 02 11 35
Once the VM reboots, you will be directed to the login prompt. Since we did a bare minimal installation, we will not enter into a GUI mode.

2014 09 01 02 11 59

Once we login, we can check /etc/oracle-release file and confirm that we are running an Oracle Linux Server 7 distribution of Linux.

Chose KDE GUI DESKTOP


If you chose the GUI Desktop option earlier, when the system reboots, you will be directed to perform the initial setup.

2014 09 01 13 12 22
Click on the LICENSE INFORMATION icon

2014 09 01 13 12 38
Click on the checkbox to accept the license agreement and click on the Done button on the top left corner. You will be re-directed to the INITIAL SETUP screen. Click on the FINISH CONFIGURATION button to proceed.

2014 09 01 13 17 11
For a production environment, you will always want to enable KDUMP for system crash debugging. Click on the Forward button on the bottom right to continue.

2014 09 01 13 18 51
You can configure your system for software updates by providing credentials to Oracle’s Unbreakable Linux Network. We do not want to setup our system for software updates at this time. Click on the Forward button on the bottom right to continue.

2014 09 01 13 20 55
Click on the button “No thanks, I’ll connect later.”

2014 09 01 13 21 54
Click on the Forward button again

2014 09 01 13 23 03
Select English (United States) and Click on Next

2014 09 01 13 23 58
Click on English (US) and Click on Next

2014 09 01 13 25 25
You will need to create a local account and click on Next

2014 09 01 13 26 50
Choose your location from the big list of cities and click on Next

2014 09 01 13 27 35
For Oracle installations, we do not care for online accounts. You can skip this step and click on the Next button to proceed.

2014 09 01 13 33 40
Click on the “Start using Oracle Linux Server” button and enjoy the GUI desktop.

Posted by Charles Kim, Oracle ACE Director

Limited Docker Support Oracle Linux 6 and Oracle Linux 7

$
0
0

“Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.” For additional information about Docker, please visit the Docker website.

Oracle has made it clear that the support for Docker in Oracle Linux 6 and 7 is limited at this time. Please refer to the Doc ID – 1921163.1: Limited Support for Docker Running on Oracle Linux Announced: Docker in Addons Channel Now

  • Oracle support is limited to the version of Docker built by and downloaded from Oracle. Support is not provided for the upstream binary packages downloaded from the upstream Docker site.
  • Oracle support for Docker is limited to customers with either Basic or Premier Oracle Linux Support Subscriptions.
  • Oracle only provides Docker server binary packages for Oracle Linux 6 and Oracle Linux 7 (x86_64).
  • Oracle support is limited to severity 2 service requests and lower. Severity 1 service requests will not be accepted for Docker.
  • Support is limited to assistance with the initial installation of Docker and subsequent configuration of Docker to enable downloading, creation and running of Dockerized applications.
  • Use of the btrfs storage engine is only supported on the Unbreakable Enterprise Kernel Release 3 on both Oracle Linux 6 and Oracle Linux 7.
  • Oracle Linux support does not include support for any Oracle or 3rd-party applications running within a Docker container on Oracle Linux.
  • Oracle will periodically release updates from the upstream project in the addons channel. Interim patching and bug fixing will not be available.

Exadata High Redundancy Diskgroup to Normal Redundancy

$
0
0

I had the pleasure of being involved in couple of Exadata implementations where Oracle delivered the wrong ASM redundancy type to a customer. The customer expected single mirroring (normal redundancy) and lot more TBs of useable storage than what was delivered. I have a general rule; if you have to do it more than once, you better script it and automate it. Check out the script the I used to migrate an Exadata customer from high redundancy to normal redundancy.

define DG='&1'
set pages 0
set lines 200 trims on feed off  echo off echo off ver off
spool cr_&DG..sql
prompt CREATE DISKGROUP &DG NORMAL REDUNDANCY

set serveroutput on size unlimited

declare
v_failgroup v$asm_disk.failgroup%TYPE;

cursor c1 is
select chr(39)||path||chr(39) path, name
from v$asm_disk
where group_number = (select group_number from v$asm_diskgroup
                      where name=upper('&DG'))
and failgroup=v_failgroup
order by path;

cursor c2 is
select distinct failgroup 
from v$asm_disk
order by failgroup;

cursor c3 is
select allocation_unit_size, compatibility, database_compatibility
from v$asm_diskgroup;
r3 c3%ROWTYPE;

begin
for r2 in c2 loop
v_failgroup := r2.failgroup;
dbms_output.put_line('FAILGROUP '||r2.failgroup||' DISK');

for r1 in c1 loop
if c1%rowcount = 1 then
   dbms_output.put_line(r1.path);
else
   dbms_output.put_line(','||r1.path);
end if;

end loop;

end loop;

open c3; fetch c3 into r3;
dbms_output.put_line('ATTRIBUTE');
dbms_output.put_line(chr(39)||'compatible.asm'||chr(39)||'='||chr(39)||r3.compatibility||chr(39)||',');
dbms_output.put_line(chr(39)||'compatible.rdbms'||chr(39)||'='||chr(39)||r3.database_compatibility||chr(39)||',');
dbms_output.put_line(chr(39)||'au_size'||chr(39)||'='||chr(39)||r3.allocation_unit_size||chr(39)||',');
dbms_output.put_line(chr(39)||'cell.smart_scan_capable'||chr(39)||'='||chr(39)||'TRUE'||chr(39)||';');
close c3;

end;
/
spool off

Here’s a sample of the generated script for the DATA disk group.

CREATE DISKGROUP DATA_EXAD NORMAL REDUNDANCY  
FAILGROUP EXADCEL01 DISK 
'o/10.0.0.3/DATA_EXAD_CD_00_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_01_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_02_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_03_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_04_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_05_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_06_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_07_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_08_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_09_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_10_exadcel01',
'o/10.0.0.3/DATA_EXAD_CD_11_exadcel01'
FAILGROUP EXADCEL02 DISK 
'o/10.0.0.4/DATA_EXAD_CD_00_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_01_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_02_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_03_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_04_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_05_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_06_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_07_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_08_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_09_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_10_exadcel02',
'o/10.0.0.4/DATA_EXAD_CD_11_exadcel02'
FAILGROUP EXADCEL03 DISK 
'o/10.0.0.5/DATA_EXAD_CD_00_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_01_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_02_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_03_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_04_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_05_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_06_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_07_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_08_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_09_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_10_exadcel03',
'o/10.0.0.5/DATA_EXAD_CD_11_exadcel03' 
ATTRIBUTE 
  'compatible.asm'='11.2.0.4',
  'compatible.rdbms'='11.2.0.4',
  'au_size'='4M',
  'cell.smart_scan_capable'='TRUE';


Install and Configure VNC Server

$
0
0

vncserver is a wrapper script for Xvnc, the free X server for VNC (Virtual Network Computing). It provides all capabilities of a standard X server, but does not connect to a display for itself. Instead, Xvnc creates a virtual desktop you can view or control remotely using a VNC viewer.

I was recently asked by a DBA colleague about leveraging VNC Server for installations/upgrades, and if they should incorporate it as part of their infrastructure. Even though VNC Server as a whole is not considered to be secure, DBAs prefer to leverage this technology for Oracle installation and upgrades. DBAs prefer VNC Server technology over the traditional X Windows on the local desktop/laptop, as the Oracle installation/upgrade will proceed significantly faster. DBAs also prefer VNC as network glitches does not cause the install/upgrade to fail. If the network fails during the installation/upgrades, we can simply re-connect to the VNC Server and continue where we left off. If the network fails during the file copies, all we lose is the display and can continue to see the progress. You can install the VNC Server with the yum install command. In the example shown below, we are installing the tightvnc-server RPM on Oracle Linux 6.5:

[oracle@vna01 ~]$ yum install tigervnc-server

Loaded plugins: security
You need to be root to perform this command.
[oracle@vna01 ~]$ su - 
Password: 
[root@vna01 ~]# yum install tigervnc-server
Loaded plugins: security
ol6_UEK_latest                                                                                                    | 1.2 kB     00:00     
ol6_latest                                                                                                        | 1.4 kB     00:00     
ol6_latest/primary                                                                                                |  41 MB     00:35     
ol6_latest                                                                                                                   26208/26208
ol6_u4_base                                                                                                       | 1.4 kB     00:00     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package tigervnc-server.x86_64 0:1.1.0-8.el6_5 will be installed
--> Processing Dependency: xorg-x11-xkb-utils for package: tigervnc-server-1.1.0-8.el6_5.x86_64
--> Processing Dependency: xkeyboard-config for package: tigervnc-server-1.1.0-8.el6_5.x86_64
--> Processing Dependency: xorg-x11-fonts-misc for package: tigervnc-server-1.1.0-8.el6_5.x86_64
--> Processing Dependency: libXdmcp.so.6()(64bit) for package: tigervnc-server-1.1.0-8.el6_5.x86_64
--> Running transaction check
---> Package libXdmcp.x86_64 0:1.1.1-3.el6 will be installed
---> Package xkeyboard-config.noarch 0:2.6-6.0.1.el6 will be installed
---> Package xorg-x11-fonts-misc.noarch 0:7.2-9.1.el6 will be installed
---> Package xorg-x11-xkb-utils.x86_64 0:7.7-4.el6 will be installed
--> Processing Dependency: libxkbfile.so.1()(64bit) for package: xorg-x11-xkb-utils-7.7-4.el6.x86_64
--> Running transaction check
---> Package libxkbfile.x86_64 0:1.0.6-1.1.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================================================
 Package                                Arch                      Version                            Repository                     Size
=========================================================================================================================================
Installing:
 tigervnc-server                        x86_64                    1.1.0-8.el6_5                      ol6_latest                    1.1 M
Installing for dependencies:
 libXdmcp                               x86_64                    1.1.1-3.el6                        ol6_latest                     30 k
 libxkbfile                             x86_64                    1.0.6-1.1.el6                      ol6_latest                     74 k
 xkeyboard-config                       noarch                    2.6-6.0.1.el6                      ol6_latest                    710 k
 xorg-x11-fonts-misc                    noarch                    7.2-9.1.el6                        ol6_latest                    5.8 M
 xorg-x11-xkb-utils                     x86_64                    7.7-4.el6                          ol6_latest                     86 k

Transaction Summary
=========================================================================================================================================
Install       6 Package(s)

Total download size: 7.8 M
Installed size: 15 M
Is this ok [y/N]: y
Downloading Packages:
(1/6): libXdmcp-1.1.1-3.el6.x86_64.rpm                                                                            |  30 kB     00:00     
(2/6): libxkbfile-1.0.6-1.1.el6.x86_64.rpm                                                                        |  74 kB     00:00     
(3/6): tigervnc-server-1.1.0-8.el6_5.x86_64.rpm                                                                   | 1.1 MB     00:00     
(4/6): xkeyboard-config-2.6-6.0.1.el6.noarch.rpm                                                                  | 710 kB     00:00     
(5/6): xorg-x11-fonts-misc-7.2-9.1.el6.noarch.rpm                                                                 | 5.8 MB     00:05     
(6/6): xorg-x11-xkb-utils-7.7-4.el6.x86_64.rpm                                                                    |  86 kB     00:00     
-----------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                    956 kB/s | 7.8 MB     00:08     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : xorg-x11-fonts-misc-7.2-9.1.el6.noarch                                                                                1/6 
  Installing : xkeyboard-config-2.6-6.0.1.el6.noarch                                                                                 2/6 
  Installing : libxkbfile-1.0.6-1.1.el6.x86_64                                                                                       3/6 
  Installing : xorg-x11-xkb-utils-7.7-4.el6.x86_64                                                                                   4/6 
  Installing : libXdmcp-1.1.1-3.el6.x86_64                                                                                           5/6 
  Installing : tigervnc-server-1.1.0-8.el6_5.x86_64                                                                                  6/6 
  Verifying  : libXdmcp-1.1.1-3.el6.x86_64                                                                                           1/6 
  Verifying  : xorg-x11-xkb-utils-7.7-4.el6.x86_64                                                                                   2/6 
  Verifying  : libxkbfile-1.0.6-1.1.el6.x86_64                                                                                       3/6 
  Verifying  : xkeyboard-config-2.6-6.0.1.el6.noarch                                                                                 4/6 
  Verifying  : xorg-x11-fonts-misc-7.2-9.1.el6.noarch                                                                                5/6 
  Verifying  : tigervnc-server-1.1.0-8.el6_5.x86_64                                                                                  6/6 

Installed:
  tigervnc-server.x86_64 0:1.1.0-8.el6_5                                                                                                 

Dependency Installed:
  libXdmcp.x86_64 0:1.1.1-3.el6                 libxkbfile.x86_64 0:1.0.6-1.1.el6          xkeyboard-config.noarch 0:2.6-6.0.1.el6     
  xorg-x11-fonts-misc.noarch 0:7.2-9.1.el6      xorg-x11-xkb-utils.x86_64 0:7.7-4.el6     

Complete!

Now that the VNC Server is installed, let’s configure the VNC Server to auto start a reboot. It is very important for me to note that we do NOT want to do this for the production database servers. We configure the VNC Server to auto-start by modifying the /etc/sysconfig/vncservers file and add the following 2 lines for oracle:

VNCSERVERS="3:oracle"
VNCSERVERARGS[3]="-geometry 1280x1024"

To enable the vncserver service to autostart, we have to execute the chkconfig command:
chkconfig vncserver on

Before we start the vncserver, we need to establish a VNC password for the oracle account. Switch user to oracle and execute the vncpasswd command:

# su - oracle
$ vncpasswd oracle
Password:
Verify:

Log back in as the root account and start the vncserver with the “service vncserver start” command.

[root@vna01 ~]# service vncserver start
Starting VNC server: 3:oracle xauth:  creating new authority file /home/oracle/.Xauthority

New 'vna01:3 (oracle)' desktop is vna01:3

Creating default startup script /home/oracle/.vnc/xstartup
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/vna01:3.log

                                                           [  OK  ]

With any VNC Viewer, you should be able to access the VNC Server. Since I am on a Mac, I am using a freeware/shareware called Chicken of the VNC. Notice that I am leveraging :3 as my display port since I setup the “VNCSERVERS=”3:oracle” in my /etc/sysconfig/vncservers file.

2014 10 04 11 09 02

To demonstrate how we can maintain the vncserver as the oracle user, we are going to kill the currently running vncserver process and re-start it. To kill the vncserver, we pass the -kill parameter to the vncserver executable. We also provide the display number to kill parameter as shown in the example below:

[oracle@vna01 ~]$ ps -ef |grep vnc
oracle    5954     1  0 11:06 ?        00:00:00 /usr/bin/Xvnc :3 -desktop vna01:3 (oracle) -auth /home/oracle/.Xauthority -geometry 1280x1024 -rfbwait 30000 -rfbauth /home/oracle/.vnc/passwd -rfbport 5903 -fp catalogue:/etc/X11/fontpath.d -pn
oracle    5960     1  0 11:06 ?        00:00:00 vncconfig -iconic
oracle    5999  5972  0 11:10 pts/0    00:00:00 grep vnc
[oracle@vna01 ~]$ vncserver ^C
[oracle@vna01 ~]$ man vncserver
[oracle@vna01 ~]$ vncserver -kill :3
Killing Xvnc process ID 5954

We can also start a vncserver manually as the oracle user account. To start a vncserver process on display port 3, we pass the :3 parameter:

[oracle@vna01 ~]$ vncserver :3

New 'vna01:3 (oracle)' desktop is vna01:3

Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/vna01:3.log

When we executed the vncpasswd command, a subdirectory was created under the $HOME directory called .vnc. In this subdirectory, there are several files. The passwd file is the encrypted password for the VNC Server.

[oracle@vna01 .vnc]$ ls -ltr
total 16
-rw------- 1 oracle oinstall    8 Oct  4 11:06 passwd
-rwxr-xr-x 1 oracle oinstall  654 Oct  4 11:06 xstartup
-rw-r--r-- 1 oracle oinstall    5 Oct  4 11:13 vna01:3.pid
-rw-r--r-- 1 oracle oinstall 1531 Oct  4 11:13 vna01:3.log

The xstartup file contains all the parameters for the vncserver process.

When to leverage VNC Server

We strongly discourage installing VNC Server on any production servers. Nonetheless, for Oracle installations and upgrades, we often need access to a X Server to set our GUI display to. We can leverage a remote VNC Server on a needed basis. As a temporary solution, we can start a vncserverprocess on another server when we need it and kill the processes when we are done with the install/upgrade. To set the display from the production database server to the remote VNC server, we simply set the DISPLAY parameter to the hostname:DISPLAY port. In our example, the name of our VNC Server was on vna01 and we are listening on DISPLAY port 3 so we will setup our DISPLAY parameter to be:


export DISPLAY=vna01.viscosityna.com:3

Oracle GoldenGate Master Note


Install and Configure Oracle Database 12c Release 1 Patchset 1

$
0
0

Oracle Database 12c Release 1 Patchset 1 is the terminal release for Oracle 12.1. As of Oracle OpenWorld 2014, the announcement was made that 12.1.0.2 will be the terminal release for Oracle Database 12c Release 1. Oracle also notified customers that the 12c Release 2 (12.2) will not be available until the first quarter of 2016. With that in mind, customers are encouraged to jump on the terminal release of Oracle Database 12 release 1.

In this blog post, I will focus on installing and configuring Oracle Database 12c Release 1 Patchset 1.

2014 10 04 14 44 26

Select the option that you want to install and click on Next. In my example, I am selecting to install and configure Oracle Grid Infrastructure for a standalone server.

2014 10 04 14 49 16

Select the languages that you want to install and click on the Next button

2014 10 04 14 51 29

In the Create ASM Disk Group screen, we will create a disk group called DATA. We will also:
* Click on the External Redundancy option
* Change the Allocation Unit size from 1MB to 4MB
* Select all the disks that make up the DATA Disk Group. ORCL:DATA1 to ORCL:DATA4

When we customized all the options, we will click on the Next button

2014 10 04 16 20 49

Enter the password for the SYS and ASMSNMP accounts. In our example, we will choose to enter the same password for both of the accounts. Click on the Next button to continue.

2014 10 04 16 22 09
The password that was entered did not conform to the Oracle recommended standards. We will choose to continue by clicking on the Yes button.

2014 10 04 16 23 53

We do not have an OEM 12c Cloud Control environment setup yet so we will continue by clicking on the Next button.
2014 10 04 16 27 29

Choose the OS Groups for the ASM administrator, ASM DBA, and ASM Operator. In our example, we chose to stick with one standard group since we do not have a separation of roles and responsibilities between the DBA and Cluster administrator.

2014 10 04 16 29 50
Click on Yes to continue

2014 10 04 16 33 04

If this is a fresh install, you will want to create the directories for $ORACLE_BASE on the /u01 file system and change the permissions to oracle:dba:

[root@vna01 u01]# mkdir -p /u01/app/oracle
[root@vna01 u01]# chown -R oracle:dba /u01/app

Click on Next to continue

2014 10 04 16 35 44

Set the path for the oraInventory location. The default location is good for most customers. Click on Next to continue.

2014 10 04 16 38 45

The default location for sudo is in /usr/bin directory. For this screen, you will want to change the location of sudo to be /usr/bin/sudo instead of /usr/local/bin/sudo.

If you are new to the world of sudo, you can make a simple change in the /etc/sudoers file and add the following line:

oracle	ALL=(ALL) 	ALL

This example is not encouraged. Most companies with strict sudoers control will list just the commands that the oracle user can execute on behalf of root.
Click on the next button to continue.

2014 10 04 16 42 34

We seem to have an issue with a kernel parameter called panic_on_oops. This parameter is not set in the /etc/sysctl.conf parameter file. For now, we will choose to ignore this warning and continue with the installation. Let’s continue by clicking on the Ignore All checkbox on the top right corner of the window; then click on the Next button to continue.

2014 10 04 16 45 23

We will see an warning message indicating that we’ve chosen to ignore one or more of the prerequisites. Click on the Yes button to continue.

2014 10 04 16 46 20

Finally, we arrive at the Summary screen. Before we click on the Installation button, we will choose the option to save the response file by clicking on the Save Response File button. Carefully review the options that you have chosen and click on the Install button.

2014 10 04 16 49 03

We can watch the installation progress. You can click on the Details button if you want to see some of the detailed logs of what is happening.

2014 10 04 16 54 20

Once the installation is complete, you will be prompted to auto execute the configuration script. Click on Yes to continue to execute orainstRoot.sh and root.sh as the root user or as the sudo privileged user.

2014 10 04 17 04 09

Congrats! You have successfully installed Oracle 12c Release 1 Patchset 1 Grid Infrastructure.

Install and Configure Oracle GoldenGate 12c

$
0
0

First, download the software from OTN and unzip the contents of the zip file. Change your directory to the Disk1 subdirectory and launch the GUI installer by invoking the runInstaller script:

$ unzip 121210_fbo_ggs_Linux_x64_shiphome.zip
$ cd fbo_ggs_Linux_x64_shiphome/Disk1
$ ./runInstaller

2014 10 07 11 20 11

Choose wether you want to install GoldenGate for Oracle Database 12c or Oracle Database 11g. In our example, we are choosing to install GoldenGate for Oracle Database 12c

2014 10 07 11 22 59

Specify the location for the GoldenGate software to be installed. Make sure the Start Manager checkbox is not checked. Click on the Next button to continue.

2014 10 07 11 23 59

On the summary screen, review the options and installation details. We can create a response file so that we can perform subsequent GoldenGate installations in a silent mode (from the command line interface).

2014 10 07 11 28 14

By default, a response file called oggcore.rsp will be saved in the home directory for Oracle. Once the response file is created, we can proceed with the installation by clicking on the Install button. You can view the progress of the installation. When the installation completes, you will see the Finish screen.

2014 10 07 11 31 09

Congratulations. We have successfully installed GoldenGate 12c. Click on the Close button to clear the screen.

Now that we’ve installed GoldenGate on the primary source database server, it is time to install GoldenGate on the target database server.

Download PreInstall RPM Packages for Oracle

$
0
0

Oracle PreInstall RPM for Oracle Linux is one the biggest benefits of adopting Oracle Linux. With a single command, you can pre-configure the Oracle Linux environment for OEM 12c Agent, EBS R12, and Oracle Database 11gR2/12c installations. Not only does Oracle configure the Linux environment, but many of the best practices are incorporated in the process.

Oracle provides the PreInstall RPMs for the database on different channels from the EBS R12 or OEM 12c Agent PreInstall RPMs. For EBS and OEM 12c Agent PreInstall RPMs, you can download the PreInstall RPMs from the addons channel from the public-yum repository. Oracle provides a separate RPM for each release of OEM 12c.

http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/

2014 10 12 11 41 25

For Oracle Database PreInstall RPMs for Oracle Database 11g Release 2 and Oracle Database 12c Release 1, you can download them from the RPM from the latest channel from the public-yum repository. You will have to scroll down quite a bit; the RPMs that start with capital letters are listed above RPMs that have lower case letters.

http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/

2014 10 12 11 46 06

The location of the source RPM (.src.rpm) can be especially important for Red Hat customers who want to leverage all the hard work that Oracle has put in. Red Hat customers can download the source RPM and build their own RPM package that will work on Red Hat with the rpmbuild command.

oracle-rdbms-server-12cR1-preinstall

$
0
0
# yum install oracle-rdbms-server-12cR1-preinstall
Loaded plugins: security
public_ol6_UEKR3_latest                                                                                          | 1.2 kB     00:00
public_ol6_latest                                                                                                | 1.4 kB     00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package oracle-rdbms-server-12cR1-preinstall.x86_64 0:1.0-11.el6 will be installed
--> Processing Dependency: xorg-x11-utils for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: gcc-c++ for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: compat-libcap1 for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: ksh for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: libaio-devel for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: xorg-x11-xauth for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: compat-libstdc++-33 for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Processing Dependency: libstdc++-devel for package: oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64
--> Running transaction check
---> Package compat-libcap1.x86_64 0:1.10-1 will be installed
---> Package compat-libstdc++-33.x86_64 0:3.2.3-69.el6 will be installed
---> Package gcc-c++.x86_64 0:4.4.7-4.el6 will be installed
---> Package ksh.x86_64 0:20120801-10.el6_5.9 will be installed
---> Package libaio-devel.x86_64 0:0.3.107-10.el6 will be installed
---> Package libstdc++-devel.x86_64 0:4.4.7-4.el6 will be installed
---> Package xorg-x11-utils.x86_64 0:7.5-6.el6 will be installed
--> Processing Dependency: libXxf86misc.so.1()(64bit) for package: xorg-x11-utils-7.5-6.el6.x86_64
--> Processing Dependency: libdmx.so.1()(64bit) for package: xorg-x11-utils-7.5-6.el6.x86_64
--> Processing Dependency: libXxf86dga.so.1()(64bit) for package: xorg-x11-utils-7.5-6.el6.x86_64
---> Package xorg-x11-xauth.x86_64 1:1.0.2-7.1.el6 will be installed
--> Processing Dependency: libXmuu.so.1()(64bit) for package: 1:xorg-x11-xauth-1.0.2-7.1.el6.x86_64
--> Running transaction check
---> Package libXmu.x86_64 0:1.1.1-2.el6 will be installed
---> Package libXxf86dga.x86_64 0:1.1.3-2.el6 will be installed
---> Package libXxf86misc.x86_64 0:1.0.3-4.el6 will be installed
---> Package libdmx.x86_64 0:1.1.2-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================
 Package                                         Arch              Version                           Repository                    Size
========================================================================================================================================
Installing:
 oracle-rdbms-server-12cR1-preinstall            x86_64            1.0-11.el6                        public_ol6_latest             15 k
Installing for dependencies:
 compat-libcap1                                  x86_64            1.10-1                            public_ol6_latest             17 k
 compat-libstdc++-33                             x86_64            3.2.3-69.el6                      public_ol6_latest            183 k
 gcc-c++                                         x86_64            4.4.7-4.el6                       public_ol6_latest            4.7 M
 ksh                                             x86_64            20120801-10.el6_5.9               public_ol6_latest            757 k
 libXmu                                          x86_64            1.1.1-2.el6                       public_ol6_latest             65 k
 libXxf86dga                                     x86_64            1.1.3-2.el6                       public_ol6_latest             24 k
 libXxf86misc                                    x86_64            1.0.3-4.el6                       public_ol6_latest             17 k
 libaio-devel                                    x86_64            0.3.107-10.el6                    public_ol6_latest             13 k
 libdmx                                          x86_64            1.1.2-2.el6                       public_ol6_latest             20 k
 libstdc++-devel                                 x86_64            4.4.7-4.el6                       public_ol6_latest            1.6 M
 xorg-x11-utils                                  x86_64            7.5-6.el6                         public_ol6_latest             94 k
 xorg-x11-xauth                                  x86_64            1:1.0.2-7.1.el6                   public_ol6_latest             34 k

Transaction Summary
========================================================================================================================================
Install      13 Package(s)

Total download size: 7.5 M
Installed size: 23 M
Is this ok [y/N]: y
Downloading Packages:
(1/13): compat-libcap1-1.10-1.x86_64.rpm                                                                         |  17 kB     00:00
(2/13): compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm                                                              | 183 kB     00:00
(3/13): gcc-c++-4.4.7-4.el6.x86_64.rpm                                                                           | 4.7 MB     00:00
(4/13): ksh-20120801-10.el6_5.9.x86_64.rpm                                                                       | 757 kB     00:00
(5/13): libXmu-1.1.1-2.el6.x86_64.rpm                                                                            |  65 kB     00:00
(6/13): libXxf86dga-1.1.3-2.el6.x86_64.rpm                                                                       |  24 kB     00:00
(7/13): libXxf86misc-1.0.3-4.el6.x86_64.rpm                                                                      |  17 kB     00:00
(8/13): libaio-devel-0.3.107-10.el6.x86_64.rpm                                                                   |  13 kB     00:00
(9/13): libdmx-1.1.2-2.el6.x86_64.rpm                                                                            |  20 kB     00:00
(10/13): libstdc++-devel-4.4.7-4.el6.x86_64.rpm                                                                  | 1.6 MB     00:00
(11/13): oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64.rpm                                              |  15 kB     00:00
(12/13): xorg-x11-utils-7.5-6.el6.x86_64.rpm                                                                     |  94 kB     00:00
(13/13): xorg-x11-xauth-1.0.2-7.1.el6.x86_64.rpm                                                                 |  34 kB     00:00
----------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                   1.9 MB/s | 7.5 MB     00:03
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : libstdc++-devel-4.4.7-4.el6.x86_64                                                                                  1/13
  Installing : gcc-c++-4.4.7-4.el6.x86_64                                                                                          2/13
  Installing : libXmu-1.1.1-2.el6.x86_64                                                                                           3/13
  Installing : 1:xorg-x11-xauth-1.0.2-7.1.el6.x86_64                                                                               4/13
  Installing : libdmx-1.1.2-2.el6.x86_64                                                                                           5/13
  Installing : ksh-20120801-10.el6_5.9.x86_64                                                                                      6/13
  Installing : libXxf86dga-1.1.3-2.el6.x86_64                                                                                      7/13
  Installing : compat-libstdc++-33-3.2.3-69.el6.x86_64                                                                             8/13
  Installing : libXxf86misc-1.0.3-4.el6.x86_64                                                                                     9/13
  Installing : xorg-x11-utils-7.5-6.el6.x86_64                                                                                    10/13
  Installing : libaio-devel-0.3.107-10.el6.x86_64                                                                                 11/13
  Installing : compat-libcap1-1.10-1.x86_64                                                                                       12/13
  Installing : oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64                                                             13/13
  Verifying  : compat-libcap1-1.10-1.x86_64                                                                                        1/13
  Verifying  : libstdc++-devel-4.4.7-4.el6.x86_64                                                                                  2/13
  Verifying  : xorg-x11-utils-7.5-6.el6.x86_64                                                                                     3/13
  Verifying  : oracle-rdbms-server-12cR1-preinstall-1.0-11.el6.x86_64                                                              4/13
  Verifying  : libaio-devel-0.3.107-10.el6.x86_64                                                                                  5/13
  Verifying  : libXxf86misc-1.0.3-4.el6.x86_64                                                                                     6/13
  Verifying  : compat-libstdc++-33-3.2.3-69.el6.x86_64                                                                             7/13
  Verifying  : libXxf86dga-1.1.3-2.el6.x86_64                                                                                      8/13
  Verifying  : 1:xorg-x11-xauth-1.0.2-7.1.el6.x86_64                                                                               9/13
  Verifying  : ksh-20120801-10.el6_5.9.x86_64                                                                                     10/13
  Verifying  : libdmx-1.1.2-2.el6.x86_64                                                                                          11/13
  Verifying  : gcc-c++-4.4.7-4.el6.x86_64                                                                                         12/13
  Verifying  : libXmu-1.1.1-2.el6.x86_64                                                                                          13/13

Installed:
  oracle-rdbms-server-12cR1-preinstall.x86_64 0:1.0-11.el6

Dependency Installed:
  compat-libcap1.x86_64 0:1.10-1             compat-libstdc++-33.x86_64 0:3.2.3-69.el6       gcc-c++.x86_64 0:4.4.7-4.el6
  ksh.x86_64 0:20120801-10.el6_5.9           libXmu.x86_64 0:1.1.1-2.el6                     libXxf86dga.x86_64 0:1.1.3-2.el6
  libXxf86misc.x86_64 0:1.0.3-4.el6          libaio-devel.x86_64 0:0.3.107-10.el6            libdmx.x86_64 0:1.1.2-2.el6
  libstdc++-devel.x86_64 0:4.4.7-4.el6       xorg-x11-utils.x86_64 0:7.5-6.el6               xorg-x11-xauth.x86_64 1:1.0.2-7.1.el6

Complete!
#

Create Automatic Snapshot Management with the ZFS Storage Appliance

$
0
0

In this example, we are setting up automatic snapshot maintenance for the backup01 share. We are instructing the ZFS Storage Appliance to perform a daily snapshot of the backup01 share on a nightly basis at 1AM. We are also instructing the ZFS Storage Appliance to keep 21 days of rolling snapshots.

zfs1:> shares
zfs1:shares (zpool1)> select default
zfs1:shares (zpool1) default> select backup01
zfs1:shares (zpool1) default/backup01> snapshots
zfs1:shares (zpool1) default/backup01 snapshots> automatic

zfs1:shares (zpool1) default/backup01 snapshots automatic> create
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> show
Properties:
                     frequency = (unset)
                           day = (unset)
                          hour = (unset)
                        minute = (unset)
                          keep = 0

zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> set frequency=day
                     frequency = day (uncommitted)
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> set hour=03
                          hour = 01 (uncommitted)
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> set minute=00
                        minute = 00 (uncommitted)
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> set keep=21
                          keep = 21 (uncommitted)
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> get
                     frequency = day (uncommitted)
                           day = (unset)
                          hour = 01 (uncommitted)
                        minute = 00 (uncommitted)
                          keep = 21 (uncommitted)
zfs1:shares (zpool1) default/backup01 snapshots automatic (uncommitted)> commit
zfs1:shares (zpool1) default/backup01 snapshots automatic> show
Properties:
                       convert = true

Automatics:

NAME                 FREQUENCY            DAY                  HH:MM KEEP
automatic-000        day                  -                    03:00   21

zfs1:shares (zpool1) default/backup01 snapshots automatic> done
zfs1:shares (zpool1) default/backup01 snapshots> show
Snapshots:
                       oct2014
                      sept2014

Children:
                        automatic => Configure automatic snapshots

Oracle GI Management Repository as a container database

$
0
0

As of Oracle 12.1.0.2, with the Oracle Grid Infrastructure Typical Installation, the OUI will automatically create the Oracle GI Management Repository (GIMR). The Oracle GI Management Repository will be housed in the same location of where the first ASM disk group is created .. in my case, where the OCR and Vote disks will reside. It even creates the container database for it.

PastedGraphic 1

Silent Installation and Cloning GoldenGate Software

$
0
0

In this blog post, let’s look at performing a silent installation of GoldenGate (GG). Since GG 12c, we no longer do a tar extract of the software. Now, we do an OUI installation like all Oracle software. For those, who miss the ease of un-tarring a GG home, we can look at doing silent installs or even cloning the GG Home. Let’s first look at performing a silent installation:

cd $SOFTWARE_LOCATION
./runInstaller -responseFile ${RESPONSE_FILE_LOCATION} -silent -nowelcome

Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 28012 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 3964 MB    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2014-10-28_07-20-45PM. Please wait ...rac01:/home/oracle/soft/fbo_ggs_Linux_x64_shiphome/Disk1
DENPROD1 > You can find the log of this install session at:
 /u01/app/oraInventory/logs/installActions2014-10-28_07-20-45PM.log

rac01:/home/oracle/soft/fbo_ggs_Linux_x64_shiphome/Disk1
DENPROD1 > The installation of Oracle GoldenGate Core was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2014-10-28_07-20-45PM.log' for more details.
Successfully Setup Software.

To confirm that everything was done correctly, you should review the specified log file: /u01/app/oraInventory/logs/installActions2014-10-28_07-20-45PM.log

This is an automated script so the response file location is set in the environment variable in a configuration file. The response file in this example is called oggcore.rsp and looks like this:

DENPROD1 > cat oggcore.rsp 

####################################################################
## Copyright(c) Oracle Corporation 2014. All rights reserved.     ##
##                                                                ##
## Specify values for the variables listed below to customize     ##
## your installation.                                             ##
##                                                                ##
## Each variable is associated with a comment. The comment        ##
## can help to populate the variables with the appropriate        ##
## values.                                                        ##
##                                                                ##
## IMPORTANT NOTE: This file should be secured to have read       ##
## permission only by the oracle user or an administrator who     ##
## own this installation to protect any sensitive input values.   ##
##                                                                ##
####################################################################

#-------------------------------------------------------------------------------
# Do not change the following system generated value. 
#-------------------------------------------------------------------------------
oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v12_1_2


################################################################################
##                                                                            ##
## Oracle GoldenGate installation option and details                          ##
##                                                                            ##
################################################################################

#-------------------------------------------------------------------------------
# Specify the installation option.
# Specify ORA12c for installing Oracle GoldenGate for Oracle Database 12c and
#         ORA11g for installing Oracle GoldenGate for Oracle Database 11g 
#-------------------------------------------------------------------------------
INSTALL_OPTION=ORA12c

#-------------------------------------------------------------------------------
# Specify a location to install Oracle GoldenGate
#-------------------------------------------------------------------------------
SOFTWARE_LOCATION=/u01/app/oracle/product/12.1.2/oggcore_1

#-------------------------------------------------------------------------------
# Specify true to start the manager after installation. 
#-------------------------------------------------------------------------------
START_MANAGER=false

#-------------------------------------------------------------------------------
# Specify a free port within the valid range for the manager process.
# Required only if START_MANAGER is true.
#-------------------------------------------------------------------------------
MANAGER_PORT=

#-------------------------------------------------------------------------------
# Specify the location of the Oracle Database.
# Required only if START_MANAGER is true.
#-------------------------------------------------------------------------------
DATABASE_LOCATION=


################################################################################
##                                                                            ##
## Specify details to Create inventory for Oracle installs                    ##
## Required only for the first Oracle product install on a system.            ##
##                                                                            ##
################################################################################

#-------------------------------------------------------------------------------
# Specify the location which holds the install inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory

#-------------------------------------------------------------------------------
# Unix group to be set for the inventory directory.  
# This parameter is not applicable if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall

Likewise, I can detach and GoldenGate home like I can detach any Oracle Database or Grid Infrastructure Home:

rac01:/u01/app/oracle/product/12.1.2/oggcore_1/oui/bin
 > cat detachHome.sh 
#!/bin/sh
OHOME=/u01/app/oracle/product/12.1.2/oggcore_1
OHOMENAME=OraHome1
CUR_DIR=`pwd`
cd $OHOME/oui/bin
./runInstaller -detachhome ORACLE_HOME=$OHOME ORACLE_HOME_NAME=$OHOMENAME $* 
cd $CUR_DIR

rac01:/u01/app/oracle/product/12.1.2/oggcore_1/oui/bin
 > ./detachHome.sh 
Starting Oracle Universal Installer...

Checking swap space: must be greater than 500 MB.   Actual 3966 MB    Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oraInventory
'DetachHome' was successful.

The detachHome.sh shell script is an Oracle supplied shell script that resides in the GG_HOME/oui/bin directory. Let’s see how we would go about cloning this GG Home. To clone the GG Home, we can leverage the runInstaller.sh script that is also located in the GG Home/oui/bin directory. The invocation of the shell script is no different than the way we used to do any other oracle software. In the GG Home, we do not have a clone.pl script that we use to clone Oracle Grid Infrastructure and Oracle Oracle Database Software. We have to leverage the techniques that we used to back in Oracle Database 10g days with the runInstaller.sh script:

./runInstaller.sh -silent -clone ORACLE_BASE="/u01/app/oracle" \
ORACLE_HOME="/u01/app/oracle/product/12.1.2/oggcore_1" \
ORACLE_HOME_NAME="GG12c"
Starting Oracle Universal Installer...

Checking swap space: must be greater than 500 MB.   Actual 3961 MB    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2014-10-28_07-36-29PM. Please wait ...rac01:/u01/app/oracle/product/12.1.2/oggcore_1/oui/bin
DENPROD1 > Oracle Universal Installer, Version 11.2.0.3.0 Production
Copyright (C) 1999, 2011, Oracle. All rights reserved.

You can find the log of this install session at:
 /u01/app/oraInventory/logs/cloneActions2014-10-28_07-36-29PM.log
.................................................................................................... 100% Done.



Installation in progress (Tuesday, October 28, 2014 7:36:36 PM CDT)
..........................................................................                                                      72% Done.
Install successful

Linking in progress (Tuesday, October 28, 2014 7:36:38 PM CDT)
Link successful

Setup in progress (Tuesday, October 28, 2014 7:36:38 PM CDT)
...........                                                     100% Done.
Setup successful

End of install phases.(Tuesday, October 28, 2014 7:36:59 PM CDT)
The cloning of GG12c was successful.
Please check '/u01/app/oraInventory/logs/cloneActions2014-10-28_07-36-29PM.log' for more details.

Of course, you should peruse the log file /u01/app/oraInventory/logs/cloneActions2014-10-28_07-36-29PM.log to make sure that cloning process did not spit out any errors.


A deeper look at the GoldenGate Response File

$
0
0

If you take out all the comments and blank lines, we are only dealing with 7 parameters for the GoldenGate response file. You can run the following egrep command with each release of GoldenGate to see if Oracle introduces new parameters to their response files.

The trick to automating a GoldenGate installation and customizing the installation process is to embed place holders into the template GoldenGate file. During the automation time, you simply leverage Unix tools like sed and awk to replace the placeholder values with the custom values.

[oracle@den01 ~]$ egrep -v "^#|^$" oggcore.rsp 
oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v12_1_2
INSTALL_OPTION=ORA12c
SOFTWARE_LOCATION=XXX_GGATE_SOFTWARE_LOCATION
START_MANAGER=false
MANAGER_PORT=
DATABASE_LOCATION=
INVENTORY_LOCATION=XXX_ORAINVENTORY_LOCATION
UNIX_GROUP_NAME=XXX_UNIX_GROUP_NAME

As you can see, we have embedded three place holders:
* for the Software Location (GoldenGate Home)
* OraInventory location
* the unix group name.

The best way to customize and automate a GoldenGate installation is to replace these parameters at runtime and replace them with your values. Also notice that I started all of my variables with an XXX_ so that I can easily detect what the custom parameters are.

Installing and Configuring btrfs on Oracle Linux 6

$
0
0

First, let’s install the RPM with yum. The RPM that we want to install is called btrfs-progs.

[root@dal66a yum.repos.d]# yum install btrfs*
Loaded plugins: security
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package btrfs-progs.x86_64 0:0.20-1.8.git7854c8b.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                    Arch                  Version                                Repository                Size
========================================================================================================================
Installing:
 btrfs-progs                x86_64                0.20-1.8.git7854c8b.el6                viscosity                396 k

Transaction Summary
========================================================================================================================
Install       1 Package(s)

Total download size: 396 k
Installed size: 2.8 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : btrfs-progs-0.20-1.8.git7854c8b.el6.x86_64                                                           1/1 
  Verifying  : btrfs-progs-0.20-1.8.git7854c8b.el6.x86_64                                                           1/1 

Installed:
  btrfs-progs.x86_64 0:0.20-1.8.git7854c8b.el6                                                                          

Complete!
[root@dal66a ~]# mkfs -t btrfs -d raid10 -m raid10 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 -f
failed to open /dev/fd0: No such device or address

WARNING! - Btrfs v0.20-rc1 IS EXPERIMENTAL
WARNING! - see http://btrfs.wiki.kernel.org before using

adding device /dev/sdc1 id 2
adding device /dev/sdd1 id 3
adding device /dev/sde1 id 4
fs created label (null) on /dev/sdb1
	nodesize 4096 leafsize 4096 sectorsize 4096 size 127.99GB
Btrfs v0.20-rc1

The -f option is not needed. The only reason why I had to specify the -f was because I tried to create a btrfs file system earlier with just 2 drives in a mirrored and striped configuration..

Pass the -V option to determine the version of make.btrfs.

[root@dal66a ~]# mkfs.btrfs -V
mkfs.btrfs, part of Btrfs v0.20-rc1

IOUG Cloud Computing SIG Webinar – Oracle Multitenant: The Beating Heart of #DBaaS

$
0
0

Oracle Multitenant: The Beating Heart of #DBaaS

Start: Dec 09, 2014 01:00 PM America/Eastern
End: Dec 09, 2014 02:00 PM America/Eastern
Registration Link: https://www1.gotomeeting.com/register/911549736

The tripod of Oracle database as a service (DBaaS) rests on the strong legs of Oracle Multitenant as the enabling database architecture; Oracle Enterprise Manager for orchestration; and Oracle’s engineered systems, such as Oracle Exadata and Oracle SuperCluster, as the consolidation platforms. This total solution from a single vendor is unmatched. This session explores in detail various key capabilities of the multitenant architecture that deliver on the promise of DBaaS today.

Please signup for this webinar on DBaaS and join the IOUG Cloud Computing and Virtualization SIG for future webinars and educational series.

Best Wishes,
Charles Kim
President of the Cloud Computing and Virtualization SIG
Oracle ACE Director

Charles’ sessions at IOUG Collaborate 2015

$
0
0

I am going to have another busy year at Collaborate. Here’s what I have lined up so far … 7 speaking slots:

Charles IOUG Presentations

RPM Requirement on Red Hat and Oracle Linux 6 and 7 for Oracle Database 12c Release 1

$
0
0

For Oracle Linux 6 or Red Hat Enterprise Linux 6

# cat rhel6.req.txt
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (i686)
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (i686)
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (i686)
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6 (i686)
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6 (i686)
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6 (i686)
libXext-1.1 (x86_64)
libXext-1.1 (i686)
libXtst-1.0.99.2 (x86_64)
libXtst-1.0.99.2 (i686)
libX11-1.3 (x86_64)
libX11-1.3 (i686)
libXau-1.0.5 (x86_64)
libXau-1.0.5 (i686)
libxcb-1.5 (x86_64)
libxcb-1.5 (i686)
libXi-1.3 (x86_64)
libXi-1.3 (i686)
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

For Oracle Linux 7 or Red Hat Enterprise Linux 7

# cat  rhel7.req.txt
binutils-2.23.52.0.1-12.el7.x86_64 
compat-libcap1-1.10-3.el7.x86_64 
gcc-4.8.2-3.el7.x86_64 
gcc-c++-4.8.2-3.el7.x86_64 
glibc-2.17-36.el7.i686 
glibc-2.17-36.el7.x86_64 
glibc-devel-2.17-36.el7.i686 
glibc-devel-2.17-36.el7.x86_64 
ksh
libaio-0.3.109-9.el7.i686 
libaio-0.3.109-9.el7.x86_64 
libaio-devel-0.3.109-9.el7.i686 
libaio-devel-0.3.109-9.el7.x86_64 
libgcc-4.8.2-3.el7.i686 
libgcc-4.8.2-3.el7.x86_64 
libstdc++-4.8.2-3.el7.i686 
libstdc++-4.8.2-3.el7.x86_64 
libstdc++-devel-4.8.2-3.el7.i686 
libstdc++-devel-4.8.2-3.el7.x86_64 
libXi-1.7.2-1.el7.i686 
libXi-1.7.2-1.el7.x86_64 
libXtst-1.2.2-1.el7.i686 
libXtst-1.2.2-1.el7.x86_64 
make-3.82-19.el7.x86_64 
sysstat-10.1.5-1.el7.x86_64
Viewing all 48 articles
Browse latest View live