DG broker


# DataGuard broker 12cr1 on Linux7

## 環境
| 項目|ノード1 |ノード2
|:-----------------|:-----------------|:-----------------
|ホスト名|tdb01|tdb02||
|IPアドレス|192.168.10.71|192.168.10.72
|DB_NAME|tremoro|tremoro
|DB_UNIQUE_NAME|tremorop|tremoros
|ORACLE_SID|tremoro|tremoro


## 手順
---
'00. OSインストール(ノード1、ノード2共通)

'01. hosts設定(ノード1、ノード2共通)
```
vi /etc/hosts
```

```:/etc/hosts
192.168.10.71	tdb01
192.168.10.72	tdb02
```


'02. firewalld停止(root)(ノード1、ノード2共通)

```
(root)
systemctl stop firewalld
systemctl disable firewalld
```

'03. SELinux無効化(root)(ノード1、ノード2共通)

```
(root)
vi /etc/sysconfig/selinux
```

```:/etc/sysconfig/selinux
SELINUX=disabled
```

'04. 必須パッケージインストール(root)(ノード1、ノード2共通)

```
(root)
yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*686 e2fsprogs* glibc* glibc*686 ksh libgcc* libgcc*686 libs* libs*686 libaio* libaio*686 libXtst* libXtst*686 libX11* libX11*686 libXau* libXau*686 libxcb* libxcb*686 libXi* libXi*686 make sysstat* smartmontools* gcc++* gcc* gcc-c++*
```


'05. カーネルパラメータ修正(root)(ノード1、ノード2共通)

```
(root)
vi /etc/sysctl.conf
```

```/etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
kernel.panic_on_oops = 1
```

'06.リブート(root)(ノード1、ノード2共通)

```
(root)
reboot
```

'07. OSグループ追加(root)(ノード1、ノード2共通)

```
(root)
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
```

'08. OSユーザ追加(root)(ノード1、ノード2共通)

```
(root)
useradd -u 1200 -g oinstall -G dba,oper,backupdba,dgdba,kmdba -d /home/oracle oracle
passwd oracle
```

'09. インストールディレクトリ作成(root)(ノード1、ノード2共通)

```
(root)
mkdir -p /u01/app/oracle
chmod 775 /u01
chmod 775 /u01/app
chown -R oracle:oinstall /u01/app
chmod 775  /u01/app/oracle
```

'10. limitファイル修正(root)(ノード1、ノード2共通)

```
(root)
vi /etc/security/limits.conf
```

```:/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
```


'11. インストーラアップロード(ノード1、ノード2共通)
12cR1のインストーラー(database)を、サーバの/tmpにアップロードする。

```
(root)
chmod -R 777 /tmp/database
chown -R oracle:oinstall /tmp/database
```

'12. rspファイル修正(oracle)(ノード1、ノード2共通)

```
(oracle)
cp -p /tmp/database/response/db_install.rsp /home/oracle/db_install.rsp
vi /home/oracle/db_install.rsp
```

```db_install.rsp(ノード1)
####################################################################
## Copyright(c) Oracle Corporation 1998,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 contains plain text passwords and    ##
## should be secured to have read permission only by oracle user  ##
## or db administrator who owns this installation.                ##
##                                                                ##
####################################################################


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

#-------------------------------------------------------------------------------
# Specify the installation option.
# It can be one of the following:
#   - INSTALL_DB_SWONLY
#   - INSTALL_DB_AND_CONFIG
#   - UPGRADE_DB
#-------------------------------------------------------------------------------
oracle.install.option=INSTALL_DB_SWONLY

#-------------------------------------------------------------------------------
# Specify the hostname of the system as set during the install. It can be used
# to force the installation to use an alternative hostname rather than using the
# first hostname found on the system. (e.g., for systems with multiple hostnames 
# and network interfaces)
#-------------------------------------------------------------------------------
ORACLE_HOSTNAME=tdb01

#-------------------------------------------------------------------------------
# Specify the Unix group to be set for the inventory directory.  
#-------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall

#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory
#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.             
# 
# en   : English                  ja   : Japanese                  
# fr   : French                   ko   : Korean                    
# ar   : Arabic                   es   : Latin American Spanish    
# bn   : Bengali                  lv   : Latvian                   
# pt_BR: Brazilian Portuguese     lt   : Lithuanian                
# bg   : Bulgarian                ms   : Malay                     
# fr_CA: Canadian French          es_MX: Mexican Spanish           
# ca   : Catalan                  no   : Norwegian                 
# hr   : Croatian                 pl   : Polish                    
# cs   : Czech                    pt   : Portuguese                
# da   : Danish                   ro   : Romanian                  
# nl   : Dutch                    ru   : Russian                   
# ar_EG: Egyptian                 zh_CN: Simplified Chinese        
# en_GB: English (Great Britain)  sk   : Slovak                    
# et   : Estonian                 sl   : Slovenian                 
# fi   : Finnish                  es_ES: Spanish                   
# de   : German                   sv   : Swedish                   
# el   : Greek                    th   : Thai                      
# iw   : Hebrew                   zh_TW: Traditional Chinese       
# hu   : Hungarian                tr   : Turkish                   
# is   : Icelandic                uk   : Ukrainian                 
# in   : Indonesian               vi   : Vietnamese                
# it   : Italian                                                   
#
# all_langs   : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs  
#-------------------------------------------------------------------------------
SELECTED_LANGUAGES=ja,en

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Home. 
#-------------------------------------------------------------------------------
ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base. 
#-------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

#-------------------------------------------------------------------------------
# Specify the installation edition of the component.                     
#                                                             
# The value should contain only one of these choices.  
      
#   - EE     : Enterprise Edition 

#-------------------------------------------------------------------------------
oracle.install.db.InstallEdition=EE

###############################################################################
#                                                                             #
# PRIVILEGED OPERATING SYSTEM GROUPS                                          #
# ------------------------------------------                                  #
# Provide values for the OS groups to which OSDBA and OSOPER privileges       #
# needs to be granted. If the install is being performed as a member of the   #
# group "dba", then that will be used unless specified otherwise below.       #
#                                                                             #
# The value to be specified for OSDBA and OSOPER group is only for UNIX based #
# Operating System.                                                           #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# The DBA_GROUP is the OS group which is to be granted OSDBA privileges.
#-------------------------------------------------------------------------------
oracle.install.db.DBA_GROUP=dba

#------------------------------------------------------------------------------
# The OPER_GROUP is the OS group which is to be granted OSOPER privileges.
# The value to be specified for OSOPER group is optional.
#------------------------------------------------------------------------------
oracle.install.db.OPER_GROUP=oper

#------------------------------------------------------------------------------
# The BACKUPDBA_GROUP is the OS group which is to be granted OSBACKUPDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.BACKUPDBA_GROUP=backupdba

#------------------------------------------------------------------------------
# The DGDBA_GROUP is the OS group which is to be granted OSDGDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.DGDBA_GROUP=dgdba

#------------------------------------------------------------------------------
# The KMDBA_GROUP is the OS group which is to be granted OSKMDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.KMDBA_GROUP=kmdba

###############################################################################
#                                                                             #
#                               Grid Options                                  #
#                                                                             #
###############################################################################
#------------------------------------------------------------------------------
# Specify the type of Real Application Cluster Database
# 
#   - ADMIN_MANAGED: Admin-Managed
#   - POLICY_MANAGED: Policy-Managed
# 
# If left unspecified, default will be ADMIN_MANAGED 
#------------------------------------------------------------------------------
oracle.install.db.rac.configurationType=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is ADMIN_MANAGED
# 
# Specify the cluster node names selected during the installation.
# Leaving it blank will result in install on local server only (Single Instance)
# 
# Example : oracle.install.db.CLUSTER_NODES=node1,node2
#------------------------------------------------------------------------------
oracle.install.db.CLUSTER_NODES=

#------------------------------------------------------------------------------
# This variable is used to enable or disable RAC One Node install.
#
#   - true  : Value of RAC One Node service name is used.
#   - false : Value of RAC One Node service name is not used.
#
# If left blank, it will be assumed to be false.
#------------------------------------------------------------------------------
oracle.install.db.isRACOneInstall=false

#------------------------------------------------------------------------------
# Value is required only if oracle.install.db.isRACOneInstall is true.
# 
# Specify the name for RAC One Node Service
#------------------------------------------------------------------------------
oracle.install.db.racOneServiceName=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is POLICY_MANAGED
# 
# Specify a name for the new Server pool that will be configured
# Example : oracle.install.db.rac.serverpoolName=pool1
#------------------------------------------------------------------------------
oracle.install.db.rac.serverpoolName=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is POLICY_MANAGED
# 
# Specify a number as cardinality for the new Server pool that will be configured
# Example : oracle.install.db.rac.serverpoolCardinality=2
#------------------------------------------------------------------------------
oracle.install.db.rac.serverpoolCardinality=0

###############################################################################
#                                                                             #
#                        Database Configuration Options                       #
#                                                                             #
###############################################################################

#-------------------------------------------------------------------------------
# Specify the type of database to create.
# It can be one of the following:
#   - GENERAL_PURPOSE                       
#   - DATA_WAREHOUSE 
# GENERAL_PURPOSE: A starter database designed for general purpose use or transaction-heavy applications.
# DATA_WAREHOUSE : A starter database optimized for data warehousing applications.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

#-------------------------------------------------------------------------------
# Specify the Starter Database Global Database Name. 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.globalDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database SID.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.SID=

#-------------------------------------------------------------------------------
# Specify whether the database should be configured as a Container database.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.ConfigureAsContainerDB=false

#-------------------------------------------------------------------------------
# Specify the  Pluggable Database name for the pluggable database in Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.PDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database character set.
#                                               
#  One of the following
#  AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2,
#  EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257,
#  BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6,
#  AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8,
#  IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE,
#  KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950,
#  ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.characterSet=

#------------------------------------------------------------------------------
# This variable should be set to true if Automatic Memory Management 
# in Database is desired.
# If Automatic Memory Management is not desired, and memory allocation
# is to be done manually, then set it to false.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryOption=false

#-------------------------------------------------------------------------------
# Specify the total memory allocation for the database. Value(in MB) should be
# at least 256 MB, and should not exceed the total physical memory available 
# on the system.
# Example: oracle.install.db.config.starterdb.memoryLimit=512
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryLimit=

#-------------------------------------------------------------------------------
# This variable controls whether to load Example Schemas onto
# the starter database or not.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.installExampleSchemas=false

###############################################################################
#                                                                             #
# Passwords can be supplied for the following four schemas in the
# starter database:      
#   SYS                                                                       #
#   SYSTEM                                                                    #
#   DBSNMP (used by Enterprise Manager)                                       #
#                                                                             #
# Same password can be used for all accounts (not recommended) 
# or different passwords for each account can be provided (recommended)       #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable holds the password that is to be used for all schemas in the
# starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.ALL=

#-------------------------------------------------------------------------------
# Specify the SYS password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYS=

#-------------------------------------------------------------------------------
# Specify the SYSTEM password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYSTEM=

#-------------------------------------------------------------------------------
# Specify the DBSNMP password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.DBSNMP=

#-------------------------------------------------------------------------------
# Specify the PDBADMIN password required for creation of Pluggable Database in the Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.PDBADMIN=

#-------------------------------------------------------------------------------
# Specify the management option to use for managing the database.
# Options are:
# 1. CLOUD_CONTROL - If you want to manage your database with Enterprise Manager Cloud Control along with Database Express.
# 2. DEFAULT   -If you want to manage your database using the default Database Express option.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.managementOption=DEFAULT

#-------------------------------------------------------------------------------
# Specify the OMS host to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsHost=

#-------------------------------------------------------------------------------
# Specify the OMS port to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsPort=0

#-------------------------------------------------------------------------------
# Specify the EM Admin user name to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminUser=

#-------------------------------------------------------------------------------
# Specify the EM Admin password to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminPassword=

###############################################################################
#                                                                             #
# SPECIFY RECOVERY OPTIONS                                 
# ------------------------------------
# Recovery options for the database can be mentioned using the entries below  #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable is to be set to false if database recovery is not required. Else 
# this can be set to true.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.enableRecovery=false

#-------------------------------------------------------------------------------
# Specify the type of storage to use for the database.
# It can be one of the following:
#   - FILE_SYSTEM_STORAGE
#   - ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.storageType=

#-------------------------------------------------------------------------------
# Specify the database file location which is a directory for datafiles, control
# files, redo logs.         
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=

#-------------------------------------------------------------------------------
# Specify the recovery location.
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=

#-------------------------------------------------------------------------------
# Specify the existing ASM disk groups to be used for storage.
#
# Applicable only when oracle.install.db.config.starterdb.storageType=ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.diskGroup=

#-------------------------------------------------------------------------------
# Specify the password for ASMSNMP user of the ASM instance.                 
#
# Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.ASMSNMPPassword=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username.
#
#  Example   : MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
MYORACLESUPPORT_USERNAME=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password.
#
# Example    : MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
MYORACLESUPPORT_PASSWORD=

#------------------------------------------------------------------------------
# Specify whether to enable the user to set the password for
# My Oracle Support credentials. The value can be either true or false.
# If left blank it will be assumed to be false.
#
# Example    : SECURITY_UPDATES_VIA_MYORACLESUPPORT=true
#------------------------------------------------------------------------------
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#------------------------------------------------------------------------------
# Specify whether user doesn't want to configure Security Updates.
# The value for this variable should be true if you don't want to configure
# Security Updates, false otherwise.
#
# The value can be either true or false. If left blank it will be assumed
# to be false.
#
# Example    : DECLINE_SECURITY_UPDATES=false
#------------------------------------------------------------------------------
DECLINE_SECURITY_UPDATES=true

#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example    : PROXY_HOST=proxy.domain.com 
#------------------------------------------------------------------------------
PROXY_HOST=

#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example    : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=

#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=

#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD  
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=

#------------------------------------------------------------------------------
# Specify the Oracle Support Hub URL. 
# 
# Example    : COLLECTOR_SUPPORTHUB_URL=https://orasupporthub.company.com:8080/
#------------------------------------------------------------------------------
COLLECTOR_SUPPORTHUB_URL=
```

```db_install.rsp(ノード2)
####################################################################
## Copyright(c) Oracle Corporation 1998,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 contains plain text passwords and    ##
## should be secured to have read permission only by oracle user  ##
## or db administrator who owns this installation.                ##
##                                                                ##
####################################################################


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

#-------------------------------------------------------------------------------
# Specify the installation option.
# It can be one of the following:
#   - INSTALL_DB_SWONLY
#   - INSTALL_DB_AND_CONFIG
#   - UPGRADE_DB
#-------------------------------------------------------------------------------
oracle.install.option=INSTALL_DB_SWONLY

#-------------------------------------------------------------------------------
# Specify the hostname of the system as set during the install. It can be used
# to force the installation to use an alternative hostname rather than using the
# first hostname found on the system. (e.g., for systems with multiple hostnames 
# and network interfaces)
#-------------------------------------------------------------------------------
ORACLE_HOSTNAME=tdb02

#-------------------------------------------------------------------------------
# Specify the Unix group to be set for the inventory directory.  
#-------------------------------------------------------------------------------
UNIX_GROUP_NAME=oinstall

#-------------------------------------------------------------------------------
# Specify the location which holds the inventory files.
# This is an optional parameter if installing on
# Windows based Operating System.
#-------------------------------------------------------------------------------
INVENTORY_LOCATION=/u01/app/oraInventory
#-------------------------------------------------------------------------------
# Specify the languages in which the components will be installed.             
# 
# en   : English                  ja   : Japanese                  
# fr   : French                   ko   : Korean                    
# ar   : Arabic                   es   : Latin American Spanish    
# bn   : Bengali                  lv   : Latvian                   
# pt_BR: Brazilian Portuguese     lt   : Lithuanian                
# bg   : Bulgarian                ms   : Malay                     
# fr_CA: Canadian French          es_MX: Mexican Spanish           
# ca   : Catalan                  no   : Norwegian                 
# hr   : Croatian                 pl   : Polish                    
# cs   : Czech                    pt   : Portuguese                
# da   : Danish                   ro   : Romanian                  
# nl   : Dutch                    ru   : Russian                   
# ar_EG: Egyptian                 zh_CN: Simplified Chinese        
# en_GB: English (Great Britain)  sk   : Slovak                    
# et   : Estonian                 sl   : Slovenian                 
# fi   : Finnish                  es_ES: Spanish                   
# de   : German                   sv   : Swedish                   
# el   : Greek                    th   : Thai                      
# iw   : Hebrew                   zh_TW: Traditional Chinese       
# hu   : Hungarian                tr   : Turkish                   
# is   : Icelandic                uk   : Ukrainian                 
# in   : Indonesian               vi   : Vietnamese                
# it   : Italian                                                   
#
# all_langs   : All languages
#
# Specify value as the following to select any of the languages.
# Example : SELECTED_LANGUAGES=en,fr,ja
#
# Specify value as the following to select all the languages.
# Example : SELECTED_LANGUAGES=all_langs  
#-------------------------------------------------------------------------------
SELECTED_LANGUAGES=ja,en

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Home. 
#-------------------------------------------------------------------------------
ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1

#-------------------------------------------------------------------------------
# Specify the complete path of the Oracle Base. 
#-------------------------------------------------------------------------------
ORACLE_BASE=/u01/app/oracle

#-------------------------------------------------------------------------------
# Specify the installation edition of the component.                     
#                                                             
# The value should contain only one of these choices.  
      
#   - EE     : Enterprise Edition 

#-------------------------------------------------------------------------------
oracle.install.db.InstallEdition=EE

###############################################################################
#                                                                             #
# PRIVILEGED OPERATING SYSTEM GROUPS                                          #
# ------------------------------------------                                  #
# Provide values for the OS groups to which OSDBA and OSOPER privileges       #
# needs to be granted. If the install is being performed as a member of the   #
# group "dba", then that will be used unless specified otherwise below.       #
#                                                                             #
# The value to be specified for OSDBA and OSOPER group is only for UNIX based #
# Operating System.                                                           #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# The DBA_GROUP is the OS group which is to be granted OSDBA privileges.
#-------------------------------------------------------------------------------
oracle.install.db.DBA_GROUP=dba

#------------------------------------------------------------------------------
# The OPER_GROUP is the OS group which is to be granted OSOPER privileges.
# The value to be specified for OSOPER group is optional.
#------------------------------------------------------------------------------
oracle.install.db.OPER_GROUP=oper

#------------------------------------------------------------------------------
# The BACKUPDBA_GROUP is the OS group which is to be granted OSBACKUPDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.BACKUPDBA_GROUP=backupdba

#------------------------------------------------------------------------------
# The DGDBA_GROUP is the OS group which is to be granted OSDGDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.DGDBA_GROUP=dgdba

#------------------------------------------------------------------------------
# The KMDBA_GROUP is the OS group which is to be granted OSKMDBA privileges.
#------------------------------------------------------------------------------
oracle.install.db.KMDBA_GROUP=kmdba

###############################################################################
#                                                                             #
#                               Grid Options                                  #
#                                                                             #
###############################################################################
#------------------------------------------------------------------------------
# Specify the type of Real Application Cluster Database
# 
#   - ADMIN_MANAGED: Admin-Managed
#   - POLICY_MANAGED: Policy-Managed
# 
# If left unspecified, default will be ADMIN_MANAGED 
#------------------------------------------------------------------------------
oracle.install.db.rac.configurationType=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is ADMIN_MANAGED
# 
# Specify the cluster node names selected during the installation.
# Leaving it blank will result in install on local server only (Single Instance)
# 
# Example : oracle.install.db.CLUSTER_NODES=node1,node2
#------------------------------------------------------------------------------
oracle.install.db.CLUSTER_NODES=

#------------------------------------------------------------------------------
# This variable is used to enable or disable RAC One Node install.
#
#   - true  : Value of RAC One Node service name is used.
#   - false : Value of RAC One Node service name is not used.
#
# If left blank, it will be assumed to be false.
#------------------------------------------------------------------------------
oracle.install.db.isRACOneInstall=false

#------------------------------------------------------------------------------
# Value is required only if oracle.install.db.isRACOneInstall is true.
# 
# Specify the name for RAC One Node Service
#------------------------------------------------------------------------------
oracle.install.db.racOneServiceName=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is POLICY_MANAGED
# 
# Specify a name for the new Server pool that will be configured
# Example : oracle.install.db.rac.serverpoolName=pool1
#------------------------------------------------------------------------------
oracle.install.db.rac.serverpoolName=

#------------------------------------------------------------------------------
# Value is required only if RAC database type is POLICY_MANAGED
# 
# Specify a number as cardinality for the new Server pool that will be configured
# Example : oracle.install.db.rac.serverpoolCardinality=2
#------------------------------------------------------------------------------
oracle.install.db.rac.serverpoolCardinality=0

###############################################################################
#                                                                             #
#                        Database Configuration Options                       #
#                                                                             #
###############################################################################

#-------------------------------------------------------------------------------
# Specify the type of database to create.
# It can be one of the following:
#   - GENERAL_PURPOSE                       
#   - DATA_WAREHOUSE 
# GENERAL_PURPOSE: A starter database designed for general purpose use or transaction-heavy applications.
# DATA_WAREHOUSE : A starter database optimized for data warehousing applications.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

#-------------------------------------------------------------------------------
# Specify the Starter Database Global Database Name. 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.globalDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database SID.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.SID=

#-------------------------------------------------------------------------------
# Specify whether the database should be configured as a Container database.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.ConfigureAsContainerDB=false

#-------------------------------------------------------------------------------
# Specify the  Pluggable Database name for the pluggable database in Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.PDBName=

#-------------------------------------------------------------------------------
# Specify the Starter Database character set.
#                                               
#  One of the following
#  AL32UTF8, WE8ISO8859P15, WE8MSWIN1252, EE8ISO8859P2,
#  EE8MSWIN1250, NE8ISO8859P10, NEE8ISO8859P4, BLT8MSWIN1257,
#  BLT8ISO8859P13, CL8ISO8859P5, CL8MSWIN1251, AR8ISO8859P6,
#  AR8MSWIN1256, EL8ISO8859P7, EL8MSWIN1253, IW8ISO8859P8,
#  IW8MSWIN1255, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE,
#  KO16MSWIN949, ZHS16GBK, TH8TISASCII, ZHT32EUC, ZHT16MSWIN950,
#  ZHT16HKSCS, WE8ISO8859P9, TR8MSWIN1254, VN8MSWIN1258
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.characterSet=

#------------------------------------------------------------------------------
# This variable should be set to true if Automatic Memory Management 
# in Database is desired.
# If Automatic Memory Management is not desired, and memory allocation
# is to be done manually, then set it to false.
#------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryOption=false

#-------------------------------------------------------------------------------
# Specify the total memory allocation for the database. Value(in MB) should be
# at least 256 MB, and should not exceed the total physical memory available 
# on the system.
# Example: oracle.install.db.config.starterdb.memoryLimit=512
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.memoryLimit=

#-------------------------------------------------------------------------------
# This variable controls whether to load Example Schemas onto
# the starter database or not.
# The value can be either "true" or "false". If left blank it will be assumed
# to be "false".
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.installExampleSchemas=false

###############################################################################
#                                                                             #
# Passwords can be supplied for the following four schemas in the
# starter database:      
#   SYS                                                                       #
#   SYSTEM                                                                    #
#   DBSNMP (used by Enterprise Manager)                                       #
#                                                                             #
# Same password can be used for all accounts (not recommended) 
# or different passwords for each account can be provided (recommended)       #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable holds the password that is to be used for all schemas in the
# starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.ALL=

#-------------------------------------------------------------------------------
# Specify the SYS password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYS=

#-------------------------------------------------------------------------------
# Specify the SYSTEM password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.SYSTEM=

#-------------------------------------------------------------------------------
# Specify the DBSNMP password for the starter database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.DBSNMP=

#-------------------------------------------------------------------------------
# Specify the PDBADMIN password required for creation of Pluggable Database in the Container Database.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.password.PDBADMIN=

#-------------------------------------------------------------------------------
# Specify the management option to use for managing the database.
# Options are:
# 1. CLOUD_CONTROL - If you want to manage your database with Enterprise Manager Cloud Control along with Database Express.
# 2. DEFAULT   -If you want to manage your database using the default Database Express option.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.managementOption=DEFAULT

#-------------------------------------------------------------------------------
# Specify the OMS host to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsHost=

#-------------------------------------------------------------------------------
# Specify the OMS port to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.omsPort=0

#-------------------------------------------------------------------------------
# Specify the EM Admin user name to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminUser=

#-------------------------------------------------------------------------------
# Specify the EM Admin password to use to connect to Cloud Control.
# Applicable only when oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.emAdminPassword=

###############################################################################
#                                                                             #
# SPECIFY RECOVERY OPTIONS                                 
# ------------------------------------
# Recovery options for the database can be mentioned using the entries below  #
#                                                                             #
###############################################################################

#------------------------------------------------------------------------------
# This variable is to be set to false if database recovery is not required. Else 
# this can be set to true.
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.enableRecovery=false

#-------------------------------------------------------------------------------
# Specify the type of storage to use for the database.
# It can be one of the following:
#   - FILE_SYSTEM_STORAGE
#   - ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.storageType=

#-------------------------------------------------------------------------------
# Specify the database file location which is a directory for datafiles, control
# files, redo logs.         
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=

#-------------------------------------------------------------------------------
# Specify the recovery location.
#
# Applicable only when oracle.install.db.config.starterdb.storage=FILE_SYSTEM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=

#-------------------------------------------------------------------------------
# Specify the existing ASM disk groups to be used for storage.
#
# Applicable only when oracle.install.db.config.starterdb.storageType=ASM_STORAGE
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.diskGroup=

#-------------------------------------------------------------------------------
# Specify the password for ASMSNMP user of the ASM instance.                 
#
# Applicable only when oracle.install.db.config.starterdb.storage=ASM_STORAGE 
#-------------------------------------------------------------------------------
oracle.install.db.config.asm.ASMSNMPPassword=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username.
#
#  Example   : MYORACLESUPPORT_USERNAME=abc@oracle.com
#------------------------------------------------------------------------------
MYORACLESUPPORT_USERNAME=

#------------------------------------------------------------------------------
# Specify the My Oracle Support Account Username password.
#
# Example    : MYORACLESUPPORT_PASSWORD=password
#------------------------------------------------------------------------------
MYORACLESUPPORT_PASSWORD=

#------------------------------------------------------------------------------
# Specify whether to enable the user to set the password for
# My Oracle Support credentials. The value can be either true or false.
# If left blank it will be assumed to be false.
#
# Example    : SECURITY_UPDATES_VIA_MYORACLESUPPORT=true
#------------------------------------------------------------------------------
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#------------------------------------------------------------------------------
# Specify whether user doesn't want to configure Security Updates.
# The value for this variable should be true if you don't want to configure
# Security Updates, false otherwise.
#
# The value can be either true or false. If left blank it will be assumed
# to be false.
#
# Example    : DECLINE_SECURITY_UPDATES=false
#------------------------------------------------------------------------------
DECLINE_SECURITY_UPDATES=true

#------------------------------------------------------------------------------
# Specify the Proxy server name. Length should be greater than zero.
#
# Example    : PROXY_HOST=proxy.domain.com 
#------------------------------------------------------------------------------
PROXY_HOST=

#------------------------------------------------------------------------------
# Specify the proxy port number. Should be Numeric and at least 2 chars.
#
# Example    : PROXY_PORT=25
#------------------------------------------------------------------------------
PROXY_PORT=

#------------------------------------------------------------------------------
# Specify the proxy user name. Leave PROXY_USER and PROXY_PWD
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_USER=username
#------------------------------------------------------------------------------
PROXY_USER=

#------------------------------------------------------------------------------
# Specify the proxy password. Leave PROXY_USER and PROXY_PWD  
# blank if your proxy server requires no authentication.
#
# Example    : PROXY_PWD=password
#------------------------------------------------------------------------------
PROXY_PWD=

#------------------------------------------------------------------------------
# Specify the Oracle Support Hub URL. 
# 
# Example    : COLLECTOR_SUPPORTHUB_URL=https://orasupporthub.company.com:8080/
#------------------------------------------------------------------------------
COLLECTOR_SUPPORTHUB_URL=
```


'13. rspファイル権限変更(oracle)(ノード1、ノード2共通)

```
(oracle)
chmod 777 /home/oracle/db_install.rsp
chown oracle:oinstall /home/oracle/db_install.rsp
```

'14. runInstaller実行(oracle)(ノード1、ノード2共通)

```
su - oracle
/tmp/database/runInstaller -silent -noconfig -responseFile /home/oracle/db_install.rsp
```

'15. root.sh実行(root)(ノード1、ノード2共通)

```
(root)
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/12.1.0/dbhome_1/root.sh
```

'16. oracleユーザの環境変数設定(root)(ノード1、ノード2共通)

```
(root)
vi /home/oracle/.bash_profile
```

```.bash_profile
umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export LANG=ja_JP.UTF-8
export NLS_LANG=Japanese_Japan.AL32UTF8
```

'17. ディレクトリ作成(ノード1、ノード2共通)

```
su -
mkdir /data
chmod 777 /data
su - oracle
mkdir -p /u01/app/oracle/admin/tremoro/adump
mkdir /data/oracle
mkdir /data/oracle/tremoro
mkdir /data/oracle/tremoro/redo
mkdir /data/oracle/tremoro/dbf
mkdir /data/oracle/tremoro/arc
```

'18. initora作成(ノード1)

```
su - oracle
export ORACLE_SID=tremoro
cd $ORACLE_HOME/dbs
cp -p init.ora init$ORACLE_SID.ora

vi init$ORACLE_SID.ora
```

```init$ORACLE_SID.ora
# Change '<ORACLE_BASE>' to point to the oracle base (the one you specify at
# install time)

db_name='tremoro'
db_unique_name='tremorop'
memory_target=512M
processes = 150
audit_file_dest='/u01/app/oracle/admin/tremoro/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/data/oracle/tremoro/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (/data/oracle/tremoro/ora_control1, /data/oracle/tremoro/ora_control2)
compatible ='12.1.0'

```

'19. SPファイル生成(oracle)(ノード1)

```
(oracle)
sqlplus / as sysdba
CREATE SPFILE FROM PFILE;
```

'20. マウント(ノード1)

```
STARTUP NOMOUNT
```

'21. CREATE DATABASE(ノード1)

```
CREATE DATABASE tremoro
USER SYS IDENTIFIED BY sys_password
USER SYSTEM IDENTIFIED BY system_password
LOGFILE GROUP 1 ('/data/oracle/tremoro/redo/redo11.log','/data/oracle/tremoro/redo/redo12.log') SIZE 100M,
        GROUP 2 ('/data/oracle/tremoro/redo/redo21.log','/data/oracle/tremoro/redo/redo22.log') SIZE 100M,
        GROUP 3 ('/data/oracle/tremoro/redo/redo31.log','/data/oracle/tremoro/redo/redo32.log') SIZE 100M
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 1024
CHARACTER SET JA16SJISTILDE
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/data/oracle/tremoro/dbf/system01.dbf'
  SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
SYSAUX DATAFILE '/data/oracle/tremoro/dbf/sysaux01.dbf'
  SIZE 550M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
DEFAULT TABLESPACE users
   DATAFILE '/data/oracle/tremoro/dbf/users01.dbf'
   SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE temp
   TEMPFILE '/data/oracle/tremoro/dbf/temp01.dbf'
   SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
UNDO TABLESPACE undotbs1
   DATAFILE '/data/oracle/tremoro/dbf/undotbs01.dbf'
   SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED;
```

'22. スクリプト実行(ノード1)

```
sqlplus / as sysdba
@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/catproc.sql

connect system/system_password
@$ORACLE_HOME/sqlplus/admin/pupbld.sql
```

'23. DB起動確認(ノード1)

```
SELECT STATUS FROM V$INSTANCE;
```

## DB設定

ここまでは、通常のＤＢ構築手順
ここから、ＤＧの設定。

'24. Archive Logモード(ノード1)

```
sqlplus / as sysdba

select log_mode from v$database;

shutdown

startup mount

alter database archivelog;

alter database open;

SELECT STATUS FROM V$INSTANCE;

select log_mode from v$database;
```

'25. Force Loggingモード(ノード1)

```
select force_logging FROM v$database;

alter database force logging;

select force_logging FROM v$database;
```

'26. スタンバイREDOログファイルの作成(ノード1)

```
set linesize 10000
set underline off
set pagesize 500
SELECT group#,type,member FROM v$logfile;

SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$log;

SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$standby_log;

ALTER DATABASE ADD standby logfile
GROUP 4 ('/data/oracle/tremoro/redo/stbredo41.log','/data/oracle/tremoro/redo/stbredo42.log') SIZE 100M,
GROUP 5 ('/data/oracle/tremoro/redo/stbredo51.log','/data/oracle/tremoro/redo/stbredo52.log') SIZE 100M,
GROUP 6 ('/data/oracle/tremoro/redo/stbredo61.log','/data/oracle/tremoro/redo/stbredo62.log') SIZE 100M,
GROUP 7 ('/data/oracle/tremoro/redo/stbredo71.log','/data/oracle/tremoro/redo/stbredo72.log') SIZE 100M;

SELECT group#,type,member FROM v$logfile;

SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$standby_log;
```


'27. 初期化パラメータ設定設定(ノード1)

```
sqlplus / as sysdba

set linesize 1000
set pagesize 10000
col NAME_COL_PLUS_SHOW_PARAM FORM A50;
col TYPE form A20;
col VALUE_COL_PLUS_SHOW_PARAM form A200;
set trimspool off

show parameter DB_NAME
show parameter DB_UNIQUE_NAME
show parameter LOG_ARCHIVE_CONFIG
show parameter LOG_ARCHIVE_DEST_1
show parameter LOG_ARCHIVE_DEST_2
show parameter LOG_ARCHIVE_DEST_STATE_1
show parameter LOG_ARCHIVE_DEST_STATE_2
show parameter REMOTE_LOGIN_PASSWORDFILE
show parameter LOG_ARCHIVE_FORMAT
show parameter FAL_SERVER
show parameter DB_FILE_NAME_CONVERT
show parameter LOG_FILE_NAME_CONVERT
show parameter STANDBY_FILE_MANAGEMENT
show parameter dg_broker_start


ALTER SYSTEM SET db_unique_name=tremorop SCOPE = SPFILE;
ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(tremorop,tremoros)' SCOPE = SPFILE;
ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' SCOPE=SPFILE;
ALTER SYSTEM SET FAL_SERVER=tremoros SCOPE=SPFILE;
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO SCOPE=SPFILE;
ALTER SYSTEM SET dg_broker_start=true scope=both;

shutdown
startup

set linesize 1000
set pagesize 10000
col NAME_COL_PLUS_SHOW_PARAM FORM A50;
col TYPE form A20;
col VALUE_COL_PLUS_SHOW_PARAM form A200;
set trimspool off

show parameter DB_NAME
show parameter DB_UNIQUE_NAME
show parameter LOG_ARCHIVE_CONFIG
show parameter CONTROL_FILES
show parameter LOG_ARCHIVE_DEST_1
show parameter LOG_ARCHIVE_DEST_2
show parameter LOG_ARCHIVE_DEST_STATE_1
show parameter LOG_ARCHIVE_DEST_STATE_2
show parameter REMOTE_LOGIN_PASSWORDFILE
show parameter LOG_ARCHIVE_FORMAT
show parameter FAL_SERVER
show parameter DB_FILE_NAME_CONVERT
show parameter LOG_FILE_NAME_CONVERT
show parameter STANDBY_FILE_MANAGEMENT
show parameter dg_broker_start
```

'28. tnsnames.ora設定(ノード1)
```
vi $ORACLE_HOME/network/admin/tnsnames.ora
```

```:tnsnames.ora
tremoro =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tdb01)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tremoro)
    )
  )

tremoros =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tdb02)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tremoro)
    )
  )

```
```
cat $ORACLE_HOME/network/admin/tnsnames.ora
```

'29. listener.ora設定(ノード1)
```
vi $ORACLE_HOME/network/admin/listener.ora
```

```:listener.ora

LISTENER_TREMORO=
  (DESCRIPTION=
    (ADDRESS_LIST=
      (ADDRESS=(PROTOCOL=tcp)(HOST=tdb01)(PORT=1521))
      (ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))

SID_LIST_LISTENER_TREMORO=
  (SID_LIST=
    (SID_DESC=
      (GLOBAL_DBNAME=tremoro)
      (ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1)
      (SID_NAME=tremoro)
    )

     (SID_DESC=
      (GLOBAL_DBNAME=tremorop_DGMGRL)
      (ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1)
      (SID_NAME=tremoro)
    )
  )

```
```
cat $ORACLE_HOME/network/admin/listener.ora

lsnrctl status LISTENER_TREMORO
lsnrctl start LISTENER_TREMORO
lsnrctl status LISTENER_TREMORO
ps -ef |grep LISTENER


sqlplus system/system_password@tremoro
quit
```


'30. スタンバイ用pfile作成（ノード1)

```
sqlplus / as sysdba
create pfile from spfile;
quit

cd $ORACLE_HOME/dbs
cp -p inittremoro.ora inittremoros.ora
vi inittremoros.ora
```

```:inittremoros.ora
*.db_unique_name='TREMOROP'
↓
*.db_unique_name='TREMOROS'

*.fal_server='TREMOROS'
↓
*.fal_server='TREMOROP'

```

```
diff inittremoro.ora inittremoros.ora
```


'31. スタンバイ用パスワードファイル作成（ノード1)

```
cd $ORACLE_HOME/dbs
orapwd file=orapwtremoro entries=10 password=oracle12$
ls -l orapw*
cp -p orapwtremoro orapwtremoros
ls -l orapw*
```

'32. コールドバックアップ対象確認（ノード1)

```
sqlplus / as sysdba
set pages 1000
select name from v$datafile;
select member from v$logfile;
```

'33.スタンバイ用制御ファイル作成（ノード1)

```
shutdown immediate
startup mount
! rm -f /tmp/ora_control1　※やり直し時用コマンド
alter database create standby controlfile as '/tmp/ora_control1';
shutdown immediate
```

'34. スタンバイ用ファイルをノード1から、ノード2にコピー（ノード1→ノード2)

■pfile 
　プライマリの"\$ORACLE_HOME/dbs/inittremoros.ora" を
　スタンバイの"\$ORACLE_HOME/dbs/inittremoro.ora"に配置

```
(ノード1)
ls -l $ORACLE_HOME/dbs/inittremoros.ora
scp $ORACLE_HOME/dbs/inittremoros.ora oracle@tdb02:$ORACLE_HOME/dbs/inittremoro.ora
```

```
(ノード2)
ls -l $ORACLE_HOME/dbs/inittremoro.ora
```

■パスワードファイル 
　プライマリの"\$ORACLE_HOME/dbs/orapwtremoro"を
　セカンダリの"\$ORACLE_HOME/dbs/orapwtremoro"に配置

```
(ノード1)
ls -l $ORACLE_HOME/dbs/orapwtremoro
scp $ORACLE_HOME/dbs/orapwtremoro oracle@tdb02:$ORACLE_HOME/dbs/orapwtremoro
```

```
(ノード2)
ls -l $ORACLE_HOME/dbs/orapwtremoro
```


■データファイル
　プライマリの/data/oracle/tremoro/dbf/\*を
　セカンダリの/data/oracle/tremoro/dbf/に配置

```
(ノード1)
ls -l /data/oracle/tremoro/dbf/
scp /data/oracle/tremoro/dbf/* oracle@tdb02:/data/oracle/tremoro/dbf/
```

```
(ノード2)
ls -l /data/oracle/tremoro/dbf/
rm -f /data/oracle/tremoro/dbf/temp01.dbf
ls -l /data/oracle/tremoro/dbf/
```


■REDOログ
　プライマリの/data/oracle/tremoro/redo/redo\*を
　セカンダリの/data/oracle/tremoro/redo/に配置

```
(ノード1)
ls -l /data/oracle/tremoro/redo/
scp /data/oracle/tremoro/redo/redo* oracle@tdb02:/data/oracle/tremoro/redo/
```

```
(ノード2)
ls -l /data/oracle/tremoro/redo/redo*
```


■制御ファイル
　プライマリの/tmp/ora_control1を
　スタンバイの
　/data/oracle/tremoro/ora_control1
　/data/oracle/tremoro/ora_control2
　に配置

```
(ノード1)
ls -l /tmp/ora_control1
scp /tmp/ora_control1 oracle@tdb02:/data/oracle/tremoro/ora_control1
scp /tmp/ora_control1 oracle@tdb02:/data/oracle/tremoro/ora_control2
```

```
(ノード2)
ls -l /data/oracle/tremoro/ora_control*
```

'35. tnsnames.ora設定(ノード2)
```
vi $ORACLE_HOME/network/admin/tnsnames.ora
```

```:tnsnames.ora
tremoro =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tdb02)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tremoro)
    )
  )

tremorop =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tdb01)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = tremoro)
    )
  )

```
```
cat $ORACLE_HOME/network/admin/tnsnames.ora
```

'36. listener.ora設定(ノード2)
```
vi $ORACLE_HOME/network/admin/listener.ora
```

```:listener.ora

LISTENER_TREMORO=
  (DESCRIPTION=
    (ADDRESS_LIST=
      (ADDRESS=(PROTOCOL=tcp)(HOST=tdb02)(PORT=1521))
      (ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))

SID_LIST_LISTENER_TREMORO=
  (SID_LIST=
    (SID_DESC=
      (GLOBAL_DBNAME=tremoro)
      (ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1)
      (SID_NAME=tremoro)
     )
     (SID_DESC=
      (GLOBAL_DBNAME=tremoros_DGMGRL)
      (ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1)
      (SID_NAME=tremoro)
    )
  )


```
```
cat $ORACLE_HOME/network/admin/listener.ora

lsnrctl status LISTENER_TREMORO
lsnrctl start LISTENER_TREMORO
lsnrctl status LISTENER_TREMORO
ps -ef |grep LISTENER

```

'37. スタンバイ・データベースでstartup(ノード2)

```
export ORACLE_SID=tremoro
sqlplus / as sysdba
! rm -f /u01/app/oracle/product/12.1.0/dbhome_1/dbs/spfiletremoro.ora ※やり直し時用
startup mount
show parameter spfile
CREATE SPFILE='/u01/app/oracle/product/12.1.0/dbhome_1/dbs/spfiletremoro.ora' FROM PFILE='/u01/app/oracle/product/12.1.0/dbhome_1/dbs/inittremoro.ora';
shutdown
startup mount
show parameter spfile
```

'38. 管理リカバリモードに変更(ノード2)

```
--管理リカバリモードかどうかを確認[スタンバイ]
SELECT PROCESS,STATUS FROM V$MANAGED_STANDBY WHERE PROCESS LIKE 'MRP%';

recover managed standby database disconnect;

--管理リカバリモードかどうかを確認[スタンバイ]
SELECT PROCESS,STATUS FROM V$MANAGED_STANDBY WHERE PROCESS LIKE 'MRP%';
```

'39. スタンバイ・データベースでスタンバイREDOログを作成(ノード2)

```
recover managed standby database cancel;

set linesize 1000
set pagesize 10000
col MEMBER form A50;
set trimspool off


SELECT group#,type,member FROM v$logfile;
SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$standby_log;

ALTER DATABASE DROP LOGFILE GROUP 4;
ALTER DATABASE DROP LOGFILE GROUP 5;
ALTER DATABASE DROP LOGFILE GROUP 6;
ALTER DATABASE DROP LOGFILE GROUP 7;

SELECT group#,type,member FROM v$logfile;
SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$standby_log;

! rm -f /data/oracle/tremoro/redo/stb* ※やり直し時用

ALTER DATABASE ADD standby logfile
GROUP 4 ('/data/oracle/tremoro/redo/stbredo41.log','/data/oracle/tremoro/redo/stbredo42.log') SIZE 100M,
GROUP 5 ('/data/oracle/tremoro/redo/stbredo51.log','/data/oracle/tremoro/redo/stbredo52.log') SIZE 100M,
GROUP 6 ('/data/oracle/tremoro/redo/stbredo61.log','/data/oracle/tremoro/redo/stbredo62.log') SIZE 100M,
GROUP 7 ('/data/oracle/tremoro/redo/stbredo71.log','/data/oracle/tremoro/redo/stbredo72.log') SIZE 100M;

SELECT group#,type,member FROM v$logfile;
SELECT group#,bytes/1048576 "SIZE(MB)" FROM v$standby_log;

recover managed standby database disconnect;

```

'40. スタンバイ・データベースで一時表領域を作成(ノード2)

```
(いらないかも）
recover managed standby database cancel;
alter database open; →open時点でtemp01が作成される。
alter tablespace temp ADD TEMPFILE '/data/oracle/tremoro/dbf/temp01.dbf' size 20M reuse;
recover managed standby database disconnect;
```

'41. プライマリ・データベースをstartupします(ノード1)

```
sqlplus / as sysdba
startup
```

'42. DataGuard Broker設定(ノード1)

```
dgmgrl
DGMGRL> connect SYS
oracle12$
DGMGRL> show configuration;
DGMGRL> CREATE CONFIGURATION 'dg_tremoro' AS PRIMARY DATABASE IS 'TREMOROP' CONNECT IDENTIFIER IS TREMOROP;
DGMGRL> show configuration;
DGMGRL> show database VERBOSE 'TREMOROP'
DGMGRL> ADD DATABASE 'TREMOROS' AS CONNECT IDENTIFIER IS TREMOROS MAINTAINED AS PHYSICAL;
DGMGRL> show configuration;
DGMGRL> show database VERBOSE 'TREMOROP'
DGMGRL> show database VERBOSE 'TREMOROS'
DGMGRL> enable configuration;
DGMGRL> show configuration;
```

'43. DG状態確認(ノード1)

```
sqlplus / as sysdba

select DATABASE_ROLE from v$database;

DATABASE_ROLE
------------------------------------------------
PRIMARY

select protection_mode from v$database;

PROTECTION_MODE
------------------------------------------------------------
MAXIMUM PERFORMANCE

select switchover_status from v$database;

SWITCHOVER_STATUS
------------------------------------------------------------
TO STANDBY

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
 SEQUENCE# FIRST_TI NEXT_TIM APPLIED
---------- -------- -------- ---------------------------
        12 18-05-26 18-05-27 NO
        13 18-05-27 18-05-27 NO
        14 18-05-27 18-05-27 NO
        15 18-05-27 18-05-27 NO
        15 18-05-27 18-05-27 YES
        16 18-05-27 18-05-27 YES
        16 18-05-27 18-05-27 NO
        17 18-05-27 18-05-27 YES
        17 18-05-27 18-05-27 NO
        18 18-05-27 18-05-27 YES
        18 18-05-27 18-05-27 NO

 SEQUENCE# FIRST_TI NEXT_TIM APPLIED
---------- -------- -------- ---------------------------
        19 18-05-27 18-05-27 NO
        19 18-05-27 18-05-27 YES
        20 18-05-27 18-05-27 NO
        20 18-05-27 18-05-27 YES
        21 18-05-27 18-05-27 NO
        21 18-05-27 18-05-27 NO

```

'44. DG状態確認(ノード2)

```
sqlplus / as sysdba

select DATABASE_ROLE from v$database;
DATABASE_ROLE
------------------------------------------------
PHYSICAL STANDBY


select protection_mode from v$database;

PROTECTION_MODE
------------------------------------------------------------
MAXIMUM PERFORMANCE

select switchover_status from v$database;
SWITCHOVER_STATUS
------------------------------------------------------------
NOT ALLOWED

SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY WHERE PROCESS LIKE 'MRP%';

PROCESS                     STATUS
--------------------------- ------------------------------------
MRP0

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

 SEQUENCE# FIRST_TI NEXT_TIM APPLIED
---------- -------- -------- ---------------------------
        15 18-05-27 18-05-27 YES
        16 18-05-27 18-05-27 YES
        17 18-05-27 18-05-27 YES
        18 18-05-27 18-05-27 YES
        19 18-05-27 18-05-27 YES
        20 18-05-27 18-05-27 YES
        21 18-05-27 18-05-27 IN-MEMORY

```


'45. アーカイブログが正常に転送されるかの確認(ノード1、ノード2)

```
(ノード1)
alter system switch logfile;

! ls -l /data/oracle/tremoro/fast_recovery_area/TREMOROP/archivelog/*
-rw-r----- 1 oracle oinstall 91589632  5月 27 06:02 o1_mf_1_12_fjmlt77k_.arc
-rw-r----- 1 oracle oinstall 28358656  5月 27 07:51 o1_mf_1_13_fjms7wq3_.arc
-rw-r----- 1 oracle oinstall   172032  5月 27 07:57 o1_mf_1_14_fjmslbjr_.arc
-rw-r----- 1 oracle oinstall  3786752  5月 27 10:33 o1_mf_1_15_fjn2q2ft_.arc
-rw-r----- 1 oracle oinstall   846848  5月 27 10:35 o1_mf_1_16_fjn2t6xs_.arc
-rw-r----- 1 oracle oinstall   187392  5月 27 10:40 o1_mf_1_17_fjn34584_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 10:40 o1_mf_1_18_fjn347f1_.arc
-rw-r----- 1 oracle oinstall 14615552  5月 27 11:08 o1_mf_1_19_fjn4s6ov_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:08 o1_mf_1_20_fjn4s90j_.arc
-rw-r----- 1 oracle oinstall  5320704  5月 27 12:12 o1_mf_1_21_fjn8kstn_.arc
-rw-r----- 1 oracle oinstall   537088  5月 27 12:27 o1_mf_1_22_fjn9f4b2_.arc

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

```


```
(ノード2)
! ls -l /data/oracle/tremoro/fast_recovery_area/TREMOROS/archivelog/*

-rw-r----- 1 oracle oinstall  3786752  5月 27 11:09 o1_mf_1_15_fjn4topy_.arc
-rw-r----- 1 oracle oinstall   846848  5月 27 11:09 o1_mf_1_16_fjn4tqjp_.arc
-rw-r----- 1 oracle oinstall   187392  5月 27 11:09 o1_mf_1_17_fjn4tqxh_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:09 o1_mf_1_18_fjn4tvrs_.arc
-rw-r----- 1 oracle oinstall 14615552  5月 27 11:09 o1_mf_1_19_fjn4twhr_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:09 o1_mf_1_20_fjn4tx96_.arc
-rw-r----- 1 oracle oinstall  5320704  5月 27 12:13 o1_mf_1_21_fjn8kygc_.arc
-rw-r----- 1 oracle oinstall   537088  5月 27 12:27 o1_mf_1_22_fjn9f92j_.arc


sqlplus / as sysdba

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

 SEQUENCE# FIRST_TI NEXT_TIM APPLIED
---------- -------- -------- ---------------------------
        15 18-05-27 18-05-27 YES
        16 18-05-27 18-05-27 YES
        17 18-05-27 18-05-27 YES
        18 18-05-27 18-05-27 YES
        19 18-05-27 18-05-27 YES
        20 18-05-27 18-05-27 YES
        21 18-05-27 18-05-27 YES
        22 18-05-27 18-05-27 IN-MEMORY

```

'46. スイッチオーバー確認(tremorop→tremoros)

```
(ノード1)
dgmgrl
DGMGRL> connect SYS
oracle12$
DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'

DGMGRL> switchover to 'TREMOROS'

DGMGRL> connect SYS
oracle12$
DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'
```


'47. アーカイブログが正常に転送されるかの確認(ノード1、ノード2)

```
(ノード2)
alter system switch logfile;

! ls -l /data/oracle/tremoro/fast_recovery_area/TREMOROS/archivelog/*
-rw-r----- 1 oracle oinstall 91589632  5月 27 06:02 o1_mf_1_12_fjmlt77k_.arc
-rw-r----- 1 oracle oinstall 28358656  5月 27 07:51 o1_mf_1_13_fjms7wq3_.arc
-rw-r----- 1 oracle oinstall   172032  5月 27 07:57 o1_mf_1_14_fjmslbjr_.arc
-rw-r----- 1 oracle oinstall  3786752  5月 27 10:33 o1_mf_1_15_fjn2q2ft_.arc
-rw-r----- 1 oracle oinstall   846848  5月 27 10:35 o1_mf_1_16_fjn2t6xs_.arc
-rw-r----- 1 oracle oinstall   187392  5月 27 10:40 o1_mf_1_17_fjn34584_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 10:40 o1_mf_1_18_fjn347f1_.arc
-rw-r----- 1 oracle oinstall 14615552  5月 27 11:08 o1_mf_1_19_fjn4s6ov_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:08 o1_mf_1_20_fjn4s90j_.arc
-rw-r----- 1 oracle oinstall  5320704  5月 27 12:12 o1_mf_1_21_fjn8kstn_.arc
-rw-r----- 1 oracle oinstall   537088  5月 27 12:27 o1_mf_1_22_fjn9f4b2_.arc

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

```


```
(ノード1)
! ls -l /data/oracle/tremoro/fast_recovery_area/TREMOROP/archivelog/*

-rw-r----- 1 oracle oinstall  3786752  5月 27 11:09 o1_mf_1_15_fjn4topy_.arc
-rw-r----- 1 oracle oinstall   846848  5月 27 11:09 o1_mf_1_16_fjn4tqjp_.arc
-rw-r----- 1 oracle oinstall   187392  5月 27 11:09 o1_mf_1_17_fjn4tqxh_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:09 o1_mf_1_18_fjn4tvrs_.arc
-rw-r----- 1 oracle oinstall 14615552  5月 27 11:09 o1_mf_1_19_fjn4twhr_.arc
-rw-r----- 1 oracle oinstall     1536  5月 27 11:09 o1_mf_1_20_fjn4tx96_.arc
-rw-r----- 1 oracle oinstall  5320704  5月 27 12:13 o1_mf_1_21_fjn8kygc_.arc
-rw-r----- 1 oracle oinstall   537088  5月 27 12:27 o1_mf_1_22_fjn9f92j_.arc


sqlplus / as sysdba

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

 SEQUENCE# FIRST_TI NEXT_TIM APPLIED
---------- -------- -------- ---------------------------
        15 18-05-27 18-05-27 YES
        16 18-05-27 18-05-27 YES
        17 18-05-27 18-05-27 YES
        18 18-05-27 18-05-27 YES
        19 18-05-27 18-05-27 YES
        20 18-05-27 18-05-27 YES
        21 18-05-27 18-05-27 YES
        22 18-05-27 18-05-27 IN-MEMORY

```

'48. スイッチオーバー確認(tremoros→tremorop)

```
(ノード2)
dgmgrl
DGMGRL> connect SYS
oracle12$
DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'

DGMGRL> switchover to 'TREMOROP'

DGMGRL> connect SYS
oracle12$
DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'
```


コマンドメモ

```
■DGMGRL

<接続>
dgmgrl
CONNECT tremorop
oracle12$

<状態確認>
show configuration;
show database 'TREMOROP';
show database 'TREMOROS';

select switchover_status from v$database;

<初期設定>
show parameter dg_broker_start
alter system set dg_broker_start=true scope=both;
show parameter dg_broker_start
select pname from v$process where pname like 'DMON%';

dgmgrl
CONNECT tremorop
oracle12$
show configuration;
CREATE CONFIGURATION 'dg_tremoro' AS PRIMARY DATABASE IS 'TREMOROP' CONNECT IDENTIFIER IS TREMOROP;
show configuration;
ADD DATABASE 'TREMOROS' AS CONNECT IDENTIFIER IS TREMOROS MAINTAINED AS PHYSICAL;
show configuration;
enable configuration;
show configuration;


<スイッチオーバー>
dgmgrl
DGMGRL> connect SYS
oracle12$

DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'

DGMGRL> switchover to 'TREMOROS'

DGMGRL> switchover to 'TREMOROP'

DGMGRL> show configuration;
DGMGRL> show database 'TREMOROP'
DGMGRL> show database 'TREMOROS'


<スタンバイアーカイブログ格納先変更>
DGMGRL> EDIT INSTANCE 'tremoro' ON DATABASE 'TREMOROP' 
> SET PROPERTY 'StandbyArchiveLocation'='/data/oracle/tremoro/arch/';
Property "StandbyArchiveLocation" updated.


<アーカイブログ出力先変更>
alter system set log_archive_dest_1='location="/data/oracle/tremoro/online_arch/", valid_for=(ONLINE_LOGFILE,ALL_ROLES)' scope=both;
! ls /data/oracle/tremoro/online_arch/


<broker構成削除>
DISABLE CONFIGURATION
REMOVE CONFIGURATION
```