Tuesday, October 10, 2017

Oracle Flex Cluster

Oracle Real Application Cluster is a feature that was first introduced in Oracle 9i (Oracle Parallel Servers was a similar feature available before 9i, but not as robust as RAC) and has been an essential part of Oracle’s Maximum Availability Architecture. Since its advent in Oracle 9i, it has evolved a lot. Oracle 9i onward, every new release of Oracle has introduced something new in RAC which made it even more resilient, fault tolerant, and easy to manage architecture.

Tuesday, September 5, 2017

Oracle Flex ASM

Starting 12c, Oracle has introduced two very interesting features to add up to MAA (Maximum Availability Architecture), Oracle Flex Cluster and Oracle Flex ASM. In this article I will be explaining and demonstrating about Oracle flex ASM.
In flex ASM, you don’t need ASM instance to be running on each node (the Hub Node) because database instance can communicate with some other ASM instance running on any other node in the cluster.

Tuesday, July 25, 2017

Oracle Patches Types

In Oracle, there are different types of patching available; there are several types of patches released by Oracle that could be applied to the software you are running. There are on-off patches to fix bugs, regularly released patches, and security patches. In the following I will explain about different types of patches that are available to be installed on your RDBMS software.

Saturday, July 15, 2017

Installing Oracle 12c Release 2 RAC on Linux 6 and Linux 7

This article explains how to install a 2 nodes Oracle 12c Release 2 Real Application Cluster (RAC) on Oracle Linux 6 and 7. I did this installation on Oracle Virtual Box by creating 2 virtual machines with shared storage. OS platform I used is Oracle Enterprise Linux 7, and Oracle GI and RDBMS version is 12.2. Same installation guide should work for Linux 6 also as there are only a couple of differences in the steps that I will explain during this installation. There will be no difference in installation steps if there are more than 2 nodes in the RAC setup.
Official document for 12c RAC installation can be found by clicking at the following link.

Friday, July 7, 2017

Running cluvfy (Cluster Verification Utility) during 12c R2 RAC installation

Following is the output of cluster verification utility that I executed during 12c R2 RAC installation. You can see 2 examples in the following. Example 1 demonstrated if you don’t have passwordless SSH connectivity configured for “grid” and “oracle” users, so you will need to execute this from each node one by one. Following output is from one node only.

Monday, July 3, 2017

Creating Oracle Database using DBCA in 12c R2

Database Configuration Assistant (dbca) is an Oracle provided tool to create a new database. In this document I would explain how to create a new 12cR1 database using dbca. For database creation steps for Oracle 12cR1, follow this document. Steps and screens are almost same for other Oracle database versions and different OS platforms.

Friday, June 23, 2017

Creating ASM disks using ASM Filter Driver (ASMFD)

Starting we can use ASM Filter Drive (ASMFD) to create ASM disks to be used for ASM diskgroups. I have already explain in this article that how we configure ASMFD during GI installation, and this article for migration from ASMLib to ASMFD. In this article I will show you how to create/add new ASM disks using ASMFD so that we can use them for existing or new diskgroups.

Saturday, June 17, 2017

ASMCMD-9524: AFD configuration failed 'ERROR: ASMLib deconfiguration failed'

While configuring ASMFD (ASM Filer Driver), I was playing around and started facing this error after issuing “afd_configure” command
[root@salman11 ~]# /u01/app/12.2.0/grid/bin/asmcmd afd_configure
ASMCMD-9524: AFD configuration failed 'ERROR: ASMLib deconfiguration failed'

I simply stopped oracleasm and acfsload service and after that reissued the “afd_configure” command, and it started working fine.
Point to node is that we need to stop oracleasm and acfsload before configuring ASMFD using “afd_configure”.

Saturday, June 10, 2017

Migrating from ASMLib to Oracle ASM Filter Driver (ASMFD)

Starting, ASMFD can be used instead of ASMLib for the ASM disks management. In this article I will explain how to migrate from ASMLib to ASMFD. I already have ASMLib configured on my server and I want to move to using ASMFD. For new GI installation, we can configure ASMFD for our ASM disks from GI installation wizard. Method explained here works for both standalone GI installations as well as for RAC.

Thursday, May 25, 2017

Configuring Oracle ASM Filter Driver (ASMFD) and Labelling Disks

If you already have and above GI/RAC installation and you want to migrate to ASMFD, click here.

Starting, downloaded Grid Infrastructure (GI) software zip is extracted directly in to the directly we have already chosen as ORACLE_HOME for GI. After extraction, we execute $ORACLE_HOME/gridSetup.sh script to initiate the setup wizard. If we want to use ASMFD (ASM Filter Driver), then after we have provisioned the disk/partition at OS level, we can configure ASMFD as follows. We no longer need ASMLib to setup ASM disks once we start using ASMFD.

Thursday, May 18, 2017

Disabling Transparent Huge Pages on Linux 6 and Linux 7

Oracle recommends that Transparent Huge Pages should be disabled before installation of Oracle software. In the following I will explain how to disable Transparent Huge Pages on Linux 6 and Linux 7. I am using Oracle Enterprise Linux where I see that this feature is already disabled. You can check for your release of Linux whether it is disabled or not, and disable it using method explained here. This is the official document for doing this task.

Sunday, May 14, 2017

Fatal NI connect error 12537

This error may appear in the alert log file. Following is the snippet from the alert log file.
Fatal NI connect error 12537, connecting to:

            TNS for Linux: Version - Production

Tuesday, May 9, 2017

Error 1017 received logging on to the standby

Most probable reason for this error appearing in the alert log file of standby database is that primary database is not able to connect to the standby database to ship redo log data because the password for the SYS user in the standby database is not in sync with the primary database. Standby database is also not able to fetch the archive gap because of same discrepancy. Full error stack in the alert log file would look similar to the following.

Friday, May 5, 2017

File #... added to control file as 'UNNAMED000...'

On your standby database if you see a datafile with the name similar to ‘UNNAMED000’, it means that you have STANDBY_FILE_MANAGEMENT parameter set to auto and managed recovery process tried to create a new datafile (after you already added this file on primary database), but it could not create file because of some reason. I faced this error because my ASM diskgroup was full. Following were the entries in my alert log file of my standby database after adding a datafile in my primary database using command ‘ALTER TABLESPACE my_tablespace ADD DATAFILE ‘+DATA/datafile06.dbf’ SIZE 20g’

Thursday, April 27, 2017

ORA-38701: Flashback database log...

If you are trying to list the restore points you have, and your flashback logs are not available on the disk (in the FRA), you might face ORA-38701.
SQL> select * from v$restore_point;
select * from v$restore_point
ERROR at line 1:
ORA-38701: Flashback database log 1 seq 1 thread 1:

Friday, April 21, 2017

ORA-38760: This database instance failed to turn on flashback database

I faced this error message while opening my database, after restoring the database from a cold backup (OS level copy of all database files). I realized that when I backed up my database, it had flashback feature turned on and there was also a guaranteed restore point at the time I took the backup. And this time when I was trying to open this database, there were no old flashback logs available in fast recovery area.

Thursday, April 13, 2017

Data Masking using OEM Cloud Control

Data masking is a technique whereby we mask the sensitive data in the cloned copies of production databases (cloned for testing purposes) so that testing databases don’t contain any sensitive information like credit card numbers or other personal information data like email address or phone numbers etc. Once we create a clone of production database, we mask the data before handing over to the users.

Wednesday, April 5, 2017

Transparent Data Encryption in 12c

One of my previous article explains how to setup TransparentData Encryption in 11g. In this article I would discuss how to implement Transparent Data Encryption (TDE) in 12c database to encrypt the data in tables/column and tablespace. Following is the link to official 12c documentation I used to write this article

Thursday, March 30, 2017

ORA-46630: keystore cannot be created at the specified location

This error comes while creating a keystore at a location where there is already a keystore exists and you can see ewallet.p12 file already present there.
To solve the problem, use a different location to create a keystore (use ENCRYPTION_WALLET_LOCATION in sqlnet.ora file to specify the keystore location), or move this ewallet.p12 file to some other location.

Wednesday, March 22, 2017

ORA-46633: creation of a password-based keystore failed

You can face this error while creating a keystore but you have specified a wrong keystore location while executing the statement.

Wednesday, March 15, 2017

ORA-46658: keystore not open in the container

You may face this error when database needs to access the keystore and keystore is not open. For example, while changing keystore password, or while creating/rotating master encryption key. In the following example, I faced this error while creating master encryption key.

Thursday, March 2, 2017

ORA-28417: password-based keystore is not open

You may face this error while creating a master encryption key while having/using auto-login (or local auto-login) keyswtore, but your password-based keystore is still closed which is required to be open before you can create master encryption key.

Wednesday, February 22, 2017

ORA-28354: Encryption wallet, auto login wallet, or HSM is already open

This error comes when you try to open a password-based keystore, and the keystore is already open.

WRL_PARAMETER                                                        STATUS                                            WALLET_TYPE
---------------------------------------- ------------------------------ -------------------- -----------------------------------------

Wednesday, February 15, 2017

ORA-46661: keystore not open in root container

In a multi tenant environment, this error comes when you try to open a password-based keystore in a pluggable database and the keystore in root container is no already open. Please note that to open keystore in any pluggable database, the keystore in root container (CDB$ROOT) must be opened first, or alternatively you can use CONTAINER=ALL option while opening keystore in the root container so that keystore for all the pluggable databases is also opened.

Tuesday, January 31, 2017

Transparent Data Encryption in 11g

In this article I would discuss how to implement Transparent Data Encryption (TDE) in 11g. TDE is used to encrypt data at table/column level or tablespace level. This ensures that encrypted data is accessible only by using encryption key that is stored in either Wallet or Hardware Security Module.
For RAC setups, encryption key needs to be stored/copies on all the RAC nodes. In dataguard setup, encryption key should also be copied on dataguard sites.

Monday, January 23, 2017

ORA-28365: wallet is not open

This error means that you are trying to perform some operation in the database which requires encryption wallet to be open, but wallet is not open. In 11g, use following command to open the wallet. Provide password after “identified by” clause. In the following scenario, password is “welcome”.
alter system set encryption wallet open identified by "welcome1";