Setting Up the Oracle Database Server
This section describes these setup tasks that must be performed on the Oracle Database Server:
Prerequisite
You must have performed the functions described in the module of this Learning Path entitled: Performing Common Setup for All Linux Servers.
General
The following general prerequisites are required for the Oracle Database Server:
- The database must be installed under the
/u01directory.Important: Installing the database on any mount point other than/u01is not supported; provisioning cannot occur. -
You must configure the semaphore parameter in the
/etc/sysctl.conffile using this command:sudo vi /etc/sysctl.confEnsure that this setting exists:
kernel.sem = 1024 32000 100 1024 -
Ensure that sufficient available storage is available on
/u01for the Database Server.Use this command to view your available storage space on
/u01:df -h -
From SQL prompt, use these commands to allocate recovery space for archive logging:
- Log in as the oracle user:
$ sudo su - oracle
- Log in to the database:
sqlplus '/as sysdba';
- Set the recovery space using this command:
sql> ALTER SYSTEM SET db_recovery_file_dest_size=50G SCOPE=BOTH;
- Verify the available and used recovery space using this
command:
sql> SELECT * FROM V$RECOVERY_FILE_DEST;For example, if you set the recovery space to 50 GB and installed a full complement of pathcodes (SHARED, PS, DV, PY), issuing this command returns these results where the space limit is approximately 54 GB with 48 GB in use.
NAME-------------------------------------------------------------------SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES CON_ID----------- ---------- ----------------- --------------- ----------+RECO5.3687E+10 4.7264E+10 0 53 0
- Log in as the oracle user:
Prerequisite Configuration for the Oracle Database Server
The JD Edwards EnterpriseOne One-Click deployment of the Oracle database supports both Oracle Enterprise Edition and Standard Edition 2 for the current supported release of Oracle Database.
The following prerequisite configuration settings are applicable to a customer-installed Oracle database. These prerequisites must be met before the One-Click Provisioning Server can install a JD Edwards EnterpriseOne Database Server:
- Customer must have an Oracle Database Server instance installed.Important: The password for the database users of an Oracle database can only include these special characters:
_ # -
- Customer must make TNS entry of the pluggable database in the tnsnames.ora file
on the Database Server instance (do not use a variable for ORACLE_HOME; it must
be an absolute value). The hostname field should be updated with the hostname of
the Database Server machine.Important: For the shared schema, the TNS Alias must be JDEORCL and for non-shared schema it must be an alias value other than JDEORCL.
- You must install the Oracle database as the oracle user -- not as any other user such as opc.
- Customer must set the database character set to AL32UTF8
- Customer must set the database national character set for the Unicode page
setting to AL16UTF16
Important: The character set parameters are critical and must be set when the database is installed; they cannot be changed after installation.
- Minimum storage requirement for JD Edwards Shared Database is 10 GB
- Minimum storage requirement per pathcode is 20GB (Including demo data)
- Above mentioned storage should be made available for:These are the directories that you will specify during Orchestration.
- OraDB install directory
- OraDB index directory
- OraDB table directory
Important: Best practice is to use different mount points for creating these directories. Otherwise you may encounter database deployment issues.
- Customer must set the minimum required DB processes to provision the JD Edwards EnterpriseOne Database Server to a minimum value of 1500
- Customer must ensure the Files System IO option is SETALL
- Database must be running with PDB (JDEORCL) set to OPEN_MODE
- Set environment variables for the Oracle Database because by default environment variables for the oracle user are not set
The following is a detailed list of commands necessary to set up the prerequisites for the Oracle Database for use with JD Edwards EnterpriseOne One-Click Provisioning.
- Use this command to ensure that the /u01 mount point has proper permissions to
allow the One-Click Provisioning process to subsequently create requisite
folders:sudo chmod 775 /u01Important: This permission is required for the Database Server or else One-Click Provisioning will fail.
- Sudo to the oracle user from the opc user using this command:
sudo su - oracle -
Make a TNS entry of the pluggable database in the listener.ora and tnsnames.ora files of the Database Server machine. Ensure the same port is also specified in each file. For example:
----------------
listener.ora
----------------
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = jdeorcl)
)
)
-------------------
tnsnames.ora
-------------------
JDEORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = jdeorcl)
)
)
-
Use this procedure to set the environment variables because by default environment variables for the oracle user are not set.
- Switch to the oracle user using this command:
sudo su - oracle -
Edit the bash_profile using this command:
vi .bash_profile -
Add the following lines in the .bash_profile
export ORACLE_HOME=pathexport ORACLE_SID=ORCLPATH=pathexport PATHNote: You cannot use an environment variable when defining ORACLE_HOME, such as $ORACLE_HOME. You must use the absolute value.For example, a properly completed .bash_profile might look like this:
export ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1export ORACLE_SID=orclPATH=$ORACLE_HOME/bin:$PATHexport PATH -
Save and close the .bash_profile file.
-
Execute the .bash_profile file for the variables to take effect.
- Switch to the oracle user using this command:
-
Connect to the database using this command:
sqlplus '/as sysdba'; -
Verify the code page setting of the Oracle database using this command:
SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';
-
If the character set is not AL32UTF8, you will have to reinstall the database using the correct parameter to set it.
-
Verify the Unicode code page setting of the Oracle database by executing this command:
SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER = 'NLS_NCHAR_CHARACTERSET';
-
If the setting is not AL16UTF16, you will have to reinstall the database using the correct parameter to set it.
-
Determine the number of DB processes available using this command:
select limit_value from v$resource_limit where resource_name='processes'; -
If the value is less than 1500 (which is the minimum recommended for use with JD Edwards EnterpriseOne, run this command to set to the minimum recommended value:
alter system set processes=1500 scope=spfile; -
Check the value of the filesystemio_option parameter using this command:
show parameter filesystemio_options; -
If the value of the filesystemio_option parameter is not SETALL (which is required), use this command to set it:
alter system set filesystemio_options=setall scope=spfile; -
Shutdown the database using this command:
shutdown immediate; -
Start the database using this command:
startup; -
Verify the databaset is open using this command:
select OPEN_MODE from v$pdbs where NAME = 'JDEORCL';If the pluggable database you want to use is not named JDEORCL, you can issue this command to find the name of available PDBs (ignore PDF$SEED) and substitute that name for JDEORCL in the command above):
NAME, OPEN_MODE from v$pdbs; -
If the OPEN_MODE is set to READ WRITE then the PDB is ready to be provisioned by the JD Edwards EnterpriseOne One-Click Provisioning Server.
-
If the OPEN_MODE is not READ WRITE then the PDB is not open. Open the PDB using this command:
alter pluggable database JDEORCL open;The PDB is ready to be provisioned by the JD Edwards EnterpriseOne One-Click Provisioning Server.
-
Use this procedure to set the environment variables for the Oracle Database because by default environment variables for the oracle user are not set.
- Switch to the oracle user using this command:
sudo su – oracle -
Edit the bash_profile using this command:
vi .bash_profile -
Add the following lines in the .bash_profile:
export ORACLE_HOME=pathexport ORACLE_SID=ORCLPATH=pathexport PATHNote: You cannot use an environment variable when defining ORACLE_HOME, such as $ORACLE_HOME. You must use the absolute value.For example, a properly completed .bash_profile might look like this:
export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1export ORACLE_SID=orclPATH=$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/binexport PATH - Save and close the .bash_profile file.
- Execute the .bash_profile file for the variables to take effect.
- Switch to the oracle user using this command: