gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID...

54
1 GoldenGate 12c Advanced Workshop Lab Exercise 2 GoldenGate 12c Advanced Workshop Hands-on Lab Exercise 2 Goldengate High Availability with Database File System(DBFS)

Transcript of gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID...

Page 1: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

1

GoldenGate 12c Advanced Workshop

Hands-on Lab Exercise 2

Goldengate High Availability with Database File System(DBFS)

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 2: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

2GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 3: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

3GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 4: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

4GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 5: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

5GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 6: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

6GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 7: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

7GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 8: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

8

[root@rac01 ~]# fdisk /dev/sdhWelcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.Be careful before using the write command.

Device does not contain a recognized partition tableBuilding a new DOS disklabel with disk identifier 0x01c1c439.

Command (m for help): nPartition type: p primary (0 primary, 0 extended, 4 free) e extendedSelect (default p):Using default response pPartition number (1-4, default 1):First sector (2048-10485759, default 2048):Using default value 2048Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759):Using default value 10485759Partition 1 of type Linux and of size 5 GiB is set

Command (m for help): wThe partition table has been altered!

Calling ioctl() to re-read partition table.Syncing disks.[root@rac01 ~]#

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 9: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

9

[root@rac01 ~]# /usr/sbin/oracleasm createdisk ASM7 /dev/sdh1Writing disk header: doneInstantiating disk: done

[root@rac01 ~]# /usr/sbin/oracleasm listdisksASM1ASM2ASM3ASM4ASM5ASM6ASM7

[root@rac01 ~]# ssh root@rac02root@rac02's password:Last login: Sat Apr 28 05:35:12 2018

[root@rac02 ~]# /usr/sbin/oracleasm scandisksReloading disk partitions: doneCleaning any stale ASM disks...Scanning system for ASM disks...Instantiating disk "ASM7"

[root@rac02 ~]# /usr/sbin/oracleasm listdisksASM1ASM2ASM3ASM4ASM5

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 10: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

10

ASM6ASM7[root@rac02 ~]#

[root@rac02 ~]# exitlogoutConnection to rac02 closed

Create the DBFS_DG ASM Disk Group

[grid@rac01 ~]$ . oraenv

ORACLE_SID = [grid] ? +ASM1

The Oracle base has been set to /u01/app/grid

[grid@rac01 ~]$ asmca

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 11: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

11GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 12: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

12GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 13: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

13GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 14: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

14

Download RPMs and install as root

dos2unix-3.1-37.el6.x86_64.rpm

[root@rac01 ~]# cd /media/sf_software/

[root@rac01 sf_software]# rpm -ivh dos2unix-3.1-37.el6.x86_64.rpm

warning: dos2unix-3.1-37.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 192a7d7d: NOKEY

Preparing... ################################# [100%]

Updating / installing...

1:dos2unix-3.1-37.el6 ################################# [100%]

https://centos.pkgs.org/7/centos-x86_64/numactl-2.0.9-6.el7_2.x86_64.rpm.html

[root@rac01 ~]# cd /media/sf_software/

[root@rac01 sf_software]# rpm -ivh numactl-2.0.9-6.el7_2.x86_64.rpm

warning: numactl-2.0.9-6.el7_2.x86_64.rpm: Header V3 RSA/SHA256 Signature, key I D f4a80eb5: NOKEY

Preparing... ################################# [100%]

Updating / installing...

1:numactl-2.0.9-6.el7_2 ################################# [100%]

Add the oracle user to the fuse group and edit the fuse.conf file

[root@rac01 ~]# groupadd fuse

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 15: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

15

[root@rac01 ~]# usermod -a -G fuse oracle

[root@rac01 ~]# usermod -a -G fuse grid

[root@rac01 ~]# echo user_allow_other > /etc/fuse.conf

[root@rac01 ~]# chmod 644 /etc/fuse.conf

[root@rac01 ~]# ssh root@rac02

root@rac02's password:

Last login: Sat Apr 28 08:55:12 2018 from rac01.localdomain

[root@rac02 ~]# groupadd fuse

[root@rac02 ~]# usermod -a -G fuse oracle

[root@rac02 ~]# usermod -a -G fuse grid

[root@rac02 ~]# echo user_allow_other > /etc/fuse.conf

[root@rac02 ~]# chmod 644 /etc/fuse.conf

[root@rac02 ~]# exit

logout

Connection to rac02 closed.Connection to rac02 closed.

Create the /dbfs mount point

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 16: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

16

[root@rac01 ~]# cd /

[root@rac01 /]# mkdir dbfs

[root@rac01 /]# chown oracle:oinstall dbfs

[root@rac01 ~]# ssh root@rac02

root@rac02's password:

Last login: Tue Jun 27 16:31:40 2017 from rac01.localdomain

[root@rac02 ~]# cd /

[root@rac02 /]# mkdir dbfs

[root@rac02 /]# chown oracle:oinstall dbfs

[root@rac02 /]# exit

logout

Connection to rac02 closed.

[oracle@rac01 ~]$ . oraenvORACLE_SID = [+ASM1] ? racdbThe Oracle base remains unchanged with value /u01/app/oracle

[oracle@rac01 ~]$ export ORACLE_SID=racdb1

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 17: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

17

[oracle@rac01 alert]$ srvctl status database -d racdb

Instance racdb1 is running on node rac01

Instance racdb2 is running on node rac02

Create the DBFS File System

[oracle@rac01 ~]$ sqlplus sys as sysdba

SQL> CREATE TABLESPACE dbfs_ogg datafile '+DBFS' SIZE 4G autoextend ON NEXT 1000M LOGGING EXTENT MANAGEMENT LOCALAUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO;

Tablespace created.

SQL> CREATE USER dbfs_user IDENTIFIED BY dbfsDEFAULT TABLESPACE dbfs_ogg QUOTA UNLIMITED ON dbfs_ogg;

User created.

SQL> GRANT create session, create table, create view,create procedure, dbfs_role TO dbfs_user;

Grant succeeded.

SQL> conn dbfs_user/dbfs

Connected.

SQL> @?/rdbms/admin/dbfs_create_filesystem dbfs_ogg dbfs_ogg

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 18: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

18

No errors.

SQL>

SQL> conn / as sysdba

Connected.

SQL> SELECT table_name, segment_name, logging, cache

FROM dba_lobs WHERE tablespace_name like 'DBFS%';

2

TABLE_NAME

--------------------------------------------------------------------------------

SEGMENT_NAME

--------------------------------------------------------------------------------

LOGGING CACHE

------- ----------

SFS$_FST_1

LOB_SFS$_FST_1

YES NO

[oracle@rac01 alert]$ su - grid

Password:

Last login: Sat Apr 28 10:07:36 WST 2018

[grid@rac01 ~]$ . oraenv

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 19: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

19

ORACLE_SID = [grid] ? +ASM1

The Oracle base has been set to /u01/app/grid

[grid@rac01 ~]$ crsctl status resource ogg_vip

NAME=ogg_vip

TYPE=app.appviptypex2.type

TARGET=ONLINE

STATE=ONLINE on rac02

Download the mount-dbfs-20160215.zip file from MOS

Configuring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1)

[oracle@rac01 bin]$ su - Password:

[oracle@rac01 alert]$ cd /media/sf_software/

[oracle@rac01 sf_software]$ cp mount-dbfs-20160215.zip /home/oracle

[oracle@host01 admin]$ cd

[oracle@host01 ~]$ unzip mount-dbfs-20160215.zip

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 20: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

20

Archive: mount-dbfs-20160215.zip inflating: mount-dbfs.conf inflating: mount-dbfs.sh

[oracle@rac01 ~]$ su - Password: [root@rac01 sf_software]# which dos2unix/usr/bin/dos2unix

[root@rac01 ~]# cd /home/oracle

[root@rac01 oracle]# cp mount-dbfs.sh /u01/app/12.2.0/grid/crs/script/

[root@rac01 oracle]# chown oracle:oinstall /u01/app/12.2.0/grid/crs/script//mount-dbfs.sh

[root@rac01 oracle]# cp mount-dbfs.conf /etc/oracle

[root@rac01 oracle]# chown oracle:oinstall /etc/oracle/mount-dbfs.conf

Create the fuse symbolic links

[root@rac01 lib64]# ldconfig -p |grep fuse

libfuse.so.2 (libc6,x86-64) => /usr/lib64/libfuse.so.2

[root@rac01 lib64]# cd /usr/lib64

[root@rac01 lib64]# ln -s libfuse.so.2 libfuse.so

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 21: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

21

[root@rac01 lib64]# ssh root@rac02

root@rac02's password:

Last login: Tue Jun 27 21:00:48 2017 from rac01.localdomain

[root@rac02 ~]# ldconfig -p |grep fuse

libfuse.so.2 (libc6,x86-64) => /usr/lib64/libfuse.so.2

[root@rac02 ~]# cd /usr/lib64

[root@rac02 lib64]# ln -s libfuse.so.2 libfuse.so

[root@rac02 lib64]# exit

logout

Connection to rac02 closed.

[root@rac01 lib64]# exit

logout

Edit the mount-dbfs.conf and mount-dbfs.sh files

[oracle@rac01 ~]$ vi /etc/oracle/mount-dbfs.conf

############################################## Everyone must set these values

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 22: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

22

############################################## Database name for the DBFS repository as used in "srvctl status database -d $DBNAME"### If using PDB/CDB, this should be set to the CDB nameDBNAME=racdb

### Mount point where DBFS should be mounted MOUNT_POINT=/dbfs

### Username of the DBFS repository owner in database $DBNAMEDBFS_USER=dbfs_user

### RDBMS ORACLE_HOME directory pathORACLE_HOME= /acfs_oh/product/12.2.0/dbhome_1

### GRID HOME directory pathGRID_HOME=/u01/app/12.2.0/grid

############################################## If using password-based authentication, set these############################################## This is the plain text password for the DBFS_USER userDBFS_PASSWD=dbfs

### TNS_ADMIN is the directory containing tnsnames.ora and sqlnet.ora used by DBFSTNS_ADMIN= /acfs_oh/product/12.2.0/dbhome_1/network/admin

[oracle@rac01 ~]$ cd /u01/app/12.2.0/grid/crs/script/

[oracle@rac01 script]$ vi mount-dbfs.sh

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 23: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

23

Change

FUSERMOUNT=/bin/fusermount

To

FUSERMOUNT=/usr/bin/fusermount

Test the mounting of the DBFS file system via the mount-dbfs.sh script

[oracle@rac01 script]$ ls -ltotal 16-rw-r--r-- 1 oracle oinstall 13263 Jun 27 20:51 mount-dbfs.sh[oracle@rac01 script]$ chmod +x *.sh

[oracle@rac01 script]$ ./mount-dbfs.sh startmount-dbfs.sh mounting DBFS at /dbfs from database racdbORACLE_SID is racdb1spawning dbfs_client command using SID racdb1nohup: redirecting stderr to stdoutStart – ONLINE

[oracle@rac01 script]$ df -h /dbfsFilesystem Size Used Avail Use% Mounted ondbfs-dbfs_user@:/ 4.9G 168K 4.9G 1% /dbfs

[oracle@rac01 script]$ ./mount-dbfs.sh stop

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 24: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

24

unmounting DBFS from /dbfs

umounting the filesystem using '/usr/bin/fusermount -u /dbfs'

Stop - stopped, now not mounted

Create the add-dbfs-resource.sh script

[oracle@rac01 script]$ su Password:

[root@rac01 script]# pwdcd /u01/app/12.2.0/grid/crs/script/

[root@rac01 script]# vi add-dbfs-resource.sh#!/bin/bashACTION_SCRIPT=/u01/app/12.1.0/grid/crs/script/mount-dbfs.shRESNAME=dbfs_mountDEPNAME=ora.racdb.dbORACLE_HOME=/u01/app/12.2.0/gridPATH=$ORACLE_HOME/bin:$PATHexport PATH ORACLE_HOMEcrsctl add resource $RESNAME \-type cluster_resource \-attr "ACTION_SCRIPT=$ACTION_SCRIPT, \CHECK_INTERVAL=30,RESTART_ATTEMPTS=10, \START_DEPENDENCIES='hard($DEPNAME)pullup($DEPNAME)',\STOP_DEPENDENCIES='hard($DEPNAME)',\SCRIPT_TIMEOUT=300"

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 25: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

25

[root@rac01 script]# chmod +x add-dbfs-resource.sh

[root@rac01 script]# chown oracle:oinstall add-dbfs-resource.sh

[root@rac01 script]# exit

logout

As oracle user, execute the add-dbfs-resource.sh script

[oracle@rac01 script]$ pwd

/u01/app/12.2.0/grid/crs/script

[oracle@rac01 script]$ ./add-dbfs-resource.sh

Copy the mount-dbfs* scripts to rac02

[root@rac01 script]# scp -rp * root@rac02:/u01/app/12.2.0/grid/crs/script/root@rac02's password: add-dbfs-resource.sh 100% 444 0.4KB/s 00:00 mount-dbfs.sh 100% 13KB 13.0KB/s 00:00

[root@rac01 oracle]# scp -rp /etc/oracle/mount-dbfs.conf root@rac02:/etc/oracleroot@rac02's password: mount-dbfs.conf 100% 3759 3.7KB/s 00:00

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 26: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

26

[root@rac01 script]# ssh root@rac02root@rac02's password: Last login: Tue Jun 27 21:11:06 2017 from rac01.localdomain

[root@rac02 ~]# cd /u01/app/12.2.0/grid/crs/script/

[root@rac02 script]# chown oracle:oinstall *

[root@rac02 script]# ls -l total 20-rwxr-xr-x 1 oracle oinstall 444 Jun 28 09:38 add-dbfs-resource.sh-rwxr-xr-x 1 oracle oinstall 13267 Jun 27 21:18 mount-dbfs.sh

[root@rac02 ~]# cd /etc/oracle

[root@rac02 oracle]# chown oracle:oinstall mount-dbfs.conf

[root@rac02 oracle]# exitlogoutConnection to rac02 closed.

Test mounting of DBFS File System using Clusterware

[oracle@rac01 crs]$ cd /u01/app/12.2.0/grid/bin

[oracle@rac01 bin]$ ./crsctl stat res dbfs_mount -t--------------------------------------------------------------------------------Name Target State Server State details --------------------------------------------------------------------------------

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 27: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

27

Cluster Resources--------------------------------------------------------------------------------dbfs_mount 1 OFFLINE OFFLINE STABLE

[oracle@rac01 bin]$ ./crsctl start resource dbfs_mountCRS-2672: Attempting to start 'dbfs_mount' on 'rac01'CRS-2676: Start of 'dbfs_mount' on 'rac01' succeeded

[oracle@rac01 bin]$ ./crsctl stat res dbfs_mount -t--------------------------------------------------------------------------------Name Target State Server State details--------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------dbfs_mount 1 ONLINE ONLINE rac01 STABLE--------------------------------------------------------------------------------

[oracle@rac01 bin]$ df -h /dbfsFilesystem Size Used Avail Use% Mounted ondbfs-dbfs_user@:/ 4.9G 168K 4.9G 1% /dbfs

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 28: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

28

Install the GoldenGate software on both rac01 and rac02.

[root@rac01 dbfs]# cd /

[root@rac01 /]# mkdir u02

[root@rac01 /]# cd /u02

[root@rac01 u02]# mkdir app

[root@rac01 u02]# chown oracle:oinstall app

[root@rac01 u02]# ssh root@rac02

root@rac02's password:

Last login: Mon Apr 30 16:44:04 2018

[root@rac02 ~]# cd /

[root@rac02 /]# mkdir u02

[root@rac02 /]# cd /u02

[root@rac02 u02]# mkdir app

[root@rac02 u02]# chown oracle:oinstall app

[root@rac02 u02]# exit

logout

Connection to rac02 closed.

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 29: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

29

However, on rac02, do not start the manager – just install the software.

[oracle@rac01 Disk1]$ pwd

/media/sf_software/123012_fbo_ggs_Linux_x64_shiphome/fbo_ggs_Linux_x64_shiphome/Disk1

[oracle@rac01 Disk1]$ ./runInstaller

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 30: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

30GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 31: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

31GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 32: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

32GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 33: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

33GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 34: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

34GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 35: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

35GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 36: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

36

On rac02, do not start the manager

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 37: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

37GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 38: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

38

Execute the CREATE SUBDIRS command

On rac02, since we did not run the Configuration Assistants part of the installation we have to manually create the directories in the GoldenGate software home.

[oracle@rac02 ogg]$ . oraenvORACLE_SID = [oracle] ? racdbThe Oracle base has been set to /u01/app/oracle

[oracle@rac02 ContentsXML]$ cd /u02/app/goldengate/[oracle@rac02 goldengate]$ ./ggsci

GGSCI (rac02.localdomain) 1> create subdirs

Creating subdirectories under current directory /u02/app/goldengate

Parameter file /u02/app/goldengate/dirprm: created.Report file /u02/app/goldengate/dirrpt: created.Checkpoint file /u02/app/goldengate/dirchk: created.Process status files /u02/app/goldengate/dirpcs: created.SQL script files /u02/app/goldengate/dirsql: created.Database definitions files /u02/app/goldengate/dirdef: created.Extract data files /u02/app/goldengate/dirdat: created.Temporary files /u02/app/goldengate/dirtmp: created.Credential store files /u02/app/goldengate/dircrd: created.Masterkey wallet files /u02/app/goldengate/dirwlt: created.Dump files /u02/app/goldengate/dirdmp: created.

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 39: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

39

Create the shared directories on the DBFS File System

[oracle@rac01 ~]$ cd /u02/app/goldengate/

[oracle@rac01 ogg]$ ./ggsci

GGSCI (rac01.localdomain) 1> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING

GGSCI (rac01.localdomain) 2> stop mgr !

Sending STOP request to MANAGER ...Request processed.Manager stopped.

[oracle@rac01 goldengate]$ cd /u01/app/12.2.0/grid/bin

[oracle@rac01 bin]$ ./crsctl status resource dbfs_mountNAME=dbfs_mountTYPE=cluster_resourceTARGET=ONLINESTATE=ONLINE on rac01

Note: If resource dbfs_mount is not running on rac01, then relocate it.

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 40: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

40

[oracle@rac01 bin]$ ./crsctl relocate resource dbfs_mountCRS-2673: Attempting to stop 'dbfs_mount' on 'rac02'CRS-2677: Stop of 'dbfs_mount' on 'rac02' succeededCRS-2672: Attempting to start 'dbfs_mount' on 'rac01'CRS-2676: Start of 'dbfs_mount' on 'rac01' succeeded

[oracle@rac01 bin]$ cd /dbfs/dbfs_ogg/[oracle@rac01 dbfs]$ mkdir dirdat[oracle@rac01 dbfs]$ mkdir dirpcs[oracle@rac01 dbfs]$ mkdir dirchk[oracle@rac01 dbfs]$ mkdir dircrd[oracle@rac01 dbfs]$ mkdir dirwlt[oracle@rac01 dbfs]$ mkdir dirtmp[oracle@rac01 dbfs]$ mkdir dirprm[oracle@rac01 dbfs]$ mkdir BR

[oracle@rac01 dbfs]$ ls -ltotal 0drwxr-xr-x 2 oracle oinstall 0 Jun 28 10:17 BRdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirchkdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dircrddrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirdatdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirpcsdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirprmdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirtmpdrwxr-xr-x 2 oracle oinstall 0 Jun 28 10:16 dirwlt

[oracle@rac01 dbfs_ogg]$ cd /u02/app/goldengate/

[oracle@rac01 ogg]$ mv dirchk dirchk.old

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 41: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

41

[oracle@rac01 ogg]$ mv dircrd dircrd.old[oracle@rac01 ogg]$ mv dirdat dirdat.old [oracle@rac01 ogg]$ mv dirpcs dirpcs.old[oracle@rac01 ogg]$ mv dirprm dirprm.old[oracle@rac01 ogg]$ mv dirtmp dirtmp.old[oracle@rac01 ogg]$ mv dirwlt dirwlt.old

[oracle@rac01 ogg]$ ssh oracle@rac02Last login: Tue Jun 27 09:04:40 2017 from rac01.localdomain

[oracle@rac02 ~]$ cd /u02/app/goldengate/

[oracle@rac02 ogg]$ mkdir BR [oracle@rac02 ogg]$ mv dirchk dirchk.old[oracle@rac02 ogg]$ mv dircrd dircrd.old[oracle@rac02 ogg]$ mv dirdat dirdat.old [oracle@rac02 ogg]$ mv dirpcs dirpcs.old[oracle@rac02 ogg]$ mv dirprm dirprm.old[oracle@rac02 ogg]$ mv dirtmp dirtmp.old[oracle@rac02 ogg]$ mv dirwlt dirwlt.old[oracle@rac02 ogg]$ exitlogoutConnection to rac02 closed.

[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirdat dirdat[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirchk dirchk[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirprm dirprm [oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dircrd dircrd[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirwlt dirwlt[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirpcs dirpcs

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 42: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

42

[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/dirtmp dirtmp[oracle@rac01 ogg]$ ln -s /dbfs/dbfs_ogg/BR BR

[oracle@rac01 ogg]$ ssh oracle@rac02Last login: Wed Jun 28 10:20:44 2017 from rac01.localdomain

[oracle@rac02 ~]$ cd /u02/app/goldengate/

[oracle@rac02 ogg]$ ln -s /dbfs/dbfs/dirdat dirdat[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dirchk dirchk[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dirprm dirprm [oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dircrd dircrd[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dirwlt dirwlt[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dirpcs dirpcs[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/dirtmp dirtmp[oracle@rac02 ogg]$ ln -s /dbfs/dbfs_ogg/BR BR[oracle@rac02 ogg]$ exit

Create the Grid Infrastructure Agent (XAG) managed GoldenGate Resource

[oracle@rac01 BR]$ cd /u01/app/xag

[oracle@rac01 xag]$ cd bin

[oracle@rac01 bin]$ ./agctl remove goldengate ogg_ha

[oracle@rac01 bin]$ ./agctl add goldengate ogg_ha --gg_home /u02/app/goldengate --nodes rac01,rac02 --vip_name ogg_vip --filesystems dbfs_mount --databases ora.racdb.db --oracle_home /acfs_oh/product/12.2.0/dbhome_1 --monitor_extracts ext1 --critical_extracts ext1

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 43: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

43

Configure the Manager process

[oracle@rac01 ogg]$ ./ggsci

GGSCI (rac01.localdomain) 1> edit params mgrPORT 7809

DYNAMICPORTLIST 7810-7890

LAGREPORTMINUTES 5LAGINFOMINUTES 5LAGCRITICALMINUTES 15

AUTOSTART EXTRACT e*AUTOSTART EXTRACT p*AUTOSTART REPLICAT r*

AUTORESTART EXTRACT eAUTORESTART EXTRACT p*AUTORESTART REPLICAT r*

PURGEOLDEXTRACTS ./dirdat/* MINKEEPDAYS 1 USECHECKPOINTS

ACCESSRULE, PROG *, IPADDR *, ALLOW

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 44: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

44

Configure XAG/GoldenGate Integration (on both rac01 and rac02)

GGSCI (rac01.localdomain) 2> edit params ./GLOBALSXAG_ENABLE

GGSCI (rac01.localdomain) 3> shell echo $GRID_HOME

/u01/app/12.2.0/grid

GGSCI (rac01.localdomain) 3> exit[oracle@rac01 ogg]$

GGSCI (rac02.localdomain) 2> edit params ./GLOBALSXAG_ENABLE

GGSCI (rac02.localdomain) 3> shell echo $GRID_HOME

/u01/app/12.1.0/grid

GGSCI (rac02.localdomain) 2> exit[oracle@rac02 ogg]$

[oracle@rac01 ogg]$ ./ggsci

GGSCI (rac01.localdomain) 1> info all

Program Status Group Lag at Chkpt Time Since Chkpt XAG

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 45: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

45

MANAGER STOPPED MANAGED/xag.ogg_ha.goldengate

Start the XAG Managed GoldenGate Resource

[oracle@rac01 goldengate]$ cd /u01/app/xag/bin

[oracle@rac01 bin]$ ./agctl start goldengate ogg_ha

[oracle@rac01 bin]$ ./agctl status goldengate ogg_haGoldengate instance 'ogg_ha' is running on rac01

GGSCI (rac01.localdomain) 1> info mgrManager is running (IP port rac01.localdomain.7809, Process ID 24317).

GGSCI (rac01.localdomain) 2> info all

Program Status Group Lag at Chkpt Time Since Chkpt XAG

MANAGER RUNNING MANAGED/xag.ogg_ha.goldengate/rac01

Create the Credential Store

GGSCI (rac01.localdomain) 2> add credentialstore

Credential store created in ./dircrd/.

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 46: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

46

GGSCI (rac01.localdomain) 3> alter credentialstore add user oggadmin@racdb alias oggadmin_racdbPassword:

Credential store in ./dircrd/ altered.

GGSCI (rac01.localdomain) 1> dblogin useridalias oggadmin_racdbSuccessfully logged into database.

Create the Integrated Extract

GGSCI (rac01.localdomain as oggadmin@racdb1) 2> add extract ext1 integrated tranlog begin now EXTRACT (Integrated) added.

GGSCI (rac01.localdomain as oggadmin@racdb1) 3> add exttrail ./dirdat/lt extract ext1EXTTRAIL added.

GGSCI (rac01.localdomain as oggadmin@racdb1) 16> unregister extract ext1 database

2018-04-30 22:41:57 INFO OGG-01750 Successfully unregistered EXTRACT EXT1 from database.

GGSCI (rac01.localdomain as oggadmin@racdb1) 17> register extract ext1 database

2018-04-30 22:42:52 INFO OGG-02003 Extract EXT1 successfully registered with database at SCN 17158582.

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 47: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

47

GGSCI (rac01.localdomain as oggadmin@racdb1) 5> edit params ext1EXTRACT ext1USERIDALIAS oggadmin_racdbEXTTRAIL ./dirdat/ltTABLE demo.myobjects;

GGSCI (rac01.localdomain as oggadmin@racdb1) 14> start ext1

Sending START request to MANAGER ...EXTRACT EXT1 starting

GGSCI (rac01.localdomain as oggadmin@racdb1) 19> info ext1

EXTRACT EXT1 Last Started 2018-04-30 22:48 Status RUNNINGCheckpoint Lag 00:00:04 (updated 00:00:02 ago)Process ID 31832Log Read Checkpoint Oracle Integrated Redo Logs 2018-04-30 22:52:43 SCN 0.17184232 (17184232)

Note that GoldenGate files which need to be shared are located on DBFS file system

GGSCI (rac01.localdomain as oggadmin@racdb1) 21> shell ls -lrt /dbfs/dbfs_ogg/dirdat/*

-rw-r----- 1 oracle oinstall 1410 Apr 30 22:48 /dbfs/dbfs_ogg/dirdat/lt000000000

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 48: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

48

Test the failover of GoldenGate by shutting down node rac01

[oracle@rac02 ogg]$ cd /u01/app/oracle/product/xag/bin

[oracle@rac02 bin]$ ./agctl status goldengate ogg_haGoldengate instance 'ogg_ha' is running on rac01

[oracle@rac01 dirprm]$ su - Password: [root@rac01 ~]# shutdown -h now

[oracle@rac02 bin]$ ./agctl status goldengate ogg_haGoldengate instance 'ogg_ha' is not running

[oracle@rac02 bin]$ ./agctl status goldengate ogg_haGoldengate instance 'ogg_ha' is not running

[oracle@rac02 bin]$ ./agctl status goldengate ogg_haGoldengate instance 'ogg_ha' is running on rac02

[oracle@rac02 bin]$ df -k /dbfsFilesystem 1K-blocks Used Available Use% Mounted ondbfs-dbfs_user@:/ 5090304 1248 5089056 1% /dbfs

[oracle@rac02 bin]$ cd /u01/app/oracle/ogg

[oracle@rac02 ogg]$ ./ggsci

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 49: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

49

GGSCI (rac02.localdomain) 1> info all

Program Status Group Lag at Chkpt Time Since Chkpt XAG

MANAGER RUNNING MANAGED/xag.ogg_ha.goldengate EXTRACT RUNNING EXT1 00:00:10 00:00:00 CRITICAL

Remove the GoldenGate XAG Resource and drop the racdb database

[oracle@rac02 bin]$ ./agctl stop goldengate ogg_ha

[oracle@rac02 bin]$ ./agctl status goldengate ogg_ha Goldengate instance 'ogg_ha' is not running

[oracle@rac02 bin]$ cd /u01/app/12.1.0/grid/bin

[oracle@rac02 bin]$ ./crsctl stop resource dbfs_mountCRS-2673: Attempting to stop 'dbfs_mount' on 'rac02'CRS-2677: Stop of 'dbfs_mount' on 'rac02' succeeded

[oracle@rac02 bin]$ srvctl stop database -d racdb

[oracle@rac02 bin]$ srvctl remove database -d racdbRemove the database racdb? (y/[n]) yPRKO-3077 : Failed to remove database racdb: PRCD-1032 : Failed to remove database resource racdbPRCR-1028 : Failed to remove resource ora.racdb.dbPRCR-1072 : Failed to unregister resource ora.racdb.dbCRS-2730: Resource 'dbfs_mount' depends on resource 'ora.racdb.db'

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 50: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

50

[oracle@rac02 bin]$ srvctl remove database -d racdb -f

[oracle@rac02 bin]$ export ORACLE_SID=racdb2

[oracle@rac02 bin]$ sqlplus sys as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Tue Jul 4 10:25:23 2017

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Enter password: Connected to an idle instance.

SQL> startup mount restrict;ORACLE instance started.

Total System Global Area 1509949440 bytesFixed Size 2924640 bytesVariable Size 1459621792 bytesDatabase Buffers 33554432 bytesRedo Buffers 13848576 bytesDatabase mounted.

SQL> alter system set cluster_database=false scope=spfile;

System altered.

SQL> shutdown immediate;ORA-01109: database not open

GoldenGate 12c Advanced Workshop Lab Exercise 2

Page 51: gavinsoorma.com.au · Web viewConfiguring DBFS on Oracle Exadata Database Machine (Doc ID 1054431.1) [oracle@rac01 bin]$ su - Password: [oracle@rac01 alert]$ cd /media/ sf_software

51

Database dismounted.ORACLE instance shut down.

SQL> startup mount restrict;ORACLE instance started.

Total System Global Area 1509949440 bytesFixed Size 2924640 bytesVariable Size 1459621792 bytesDatabase Buffers 33554432 bytesRedo Buffers 13848576 bytesDatabase mounted.

SQL> drop database;

Database dropped.

GoldenGate 12c Advanced Workshop Lab Exercise 2