diff --git a/README.md b/README.md index 753f761..0057908 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ If you need additional help, there is a [How-To video](http://www.oraopensource. # Current Software Versions App | Version | Description ------ | ------ | ------ -Oracle XE | 11.2.0.2.0 | +Oracle XE | 18.4.0.0.0 | SQLcl | 4.2.0 | Command line SQL APEX | 18.2 | Currently supports APEX 18.x, 5.x and APEX 4.x releases. Just reference the appropriate file in `config.properties` ORDS | 18.3.0 | @@ -109,15 +109,15 @@ These can be references to files on a web server or to the location on the serve ```bash #Assuming the file resided on myserver.com -OOS_ORACLE_FILE_URL=http://myserver.com/oracle-xe-11.2.0-1.0.x86_64.rpm.zip +OOS_ORACLE_FILE_URL=http://myserver.com/oracle-database-xe-18c-1.0-1.x86_64.rpm #Assuming the file is placed in the /tmp folder on the machine -OOS_ORACLE_FILE_URL=file:///tmp/oracle-xe-11.2.0-1.0.x86_64.rpm.zip +OOS_ORACLE_FILE_URL=file:///tmp/oracle-database-xe-18c-1.0-1.x86_64.rpm ``` You can copy files from your local machine to the remote server easily using ```scp```. Example: ```bash -scp oracle-xe-11.2.0-1.0.x86_64.rpm.zip username@servername.com:/tmp +scp oracle-database-xe-18c-1.0-1.x86_64.rpm username@servername.com:/tmp ``` #### File Help @@ -126,7 +126,7 @@ To assist getting your Oracle installation files configured for OXAR one approac Instead of having to use `vi` to edit the file you can use `sed` to find and replace. An example is as follows: *(Note: the escaping of forward slashes (`/`) in the URL)* ```bash -sed -i 's/OOS_ORACLE_FILE_URL=CHANGEME/OOS_ORACLE_FILE_URL=https:\/\/www.dropbox.com\/s\/SHAREDLINKCODE\/oracle-xe-11.2.0-1.0.x86_64.rpm.zip?dl=1/g' config.properties +sed -i 's/OOS_ORACLE_FILE_URL=CHANGEME/OOS_ORACLE_FILE_URL=https:\/\/www.dropbox.com\/s\/SHAREDLINKCODE\/oracle-database-xe-18c-1.0-1.x86_64.rpm?dl=1/g' config.properties sed -i 's/OOS_APEX_FILE_URL=CHANGEME/OOS_APEX_FILE_URL=https:\/\/www.dropbox.com\/s\/SHAREDLINKCODE\/apex_5.0.3_en.zip?dl=1/g' config.properties sed -i 's/OOS_ORDS_FILE_URL=CHANGEME/OOS_ORDS_FILE_URL=https:\/\/www.dropbox.com\/s\/SHAREDLINKCODE\/ords.3.0.2.294.08.40.zip?dl=1/g' config.properties sed -i 's/OOS_SQLCL_FILE_URL=/OOS_SQLCL_FILE_URL=https:\/\/www.dropbox.com\/s\/SHAREDLINKCODE\/sqlcl-4.2.0.16.049.0843-no-jre.zip?dl=1/g' config.properties @@ -137,7 +137,7 @@ Vagrant automatically maps your current folder to `/vagrant` on its VM. You can Example: ```bash -OOS_ORACLE_FILE_URL=file:///vagrant/files/oracle-xe-11.2.0-1.0.x86_64.rpm.zip +OOS_ORACLE_FILE_URL=file:///vagrant/files/oracle-database-xe-18c-1.0-1.x86_64.rpm ``` ### Modules diff --git a/Vagrantfile b/Vagrantfile index 94c0453..d29ee66 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -59,8 +59,8 @@ Vagrant.configure(2) do |config| # vb.gui = true # # # Customize the amount of memory on the VM: - vb.cpus = "1" - vb.memory = "1024" + vb.cpus = 1 + vb.memory = 2048 vb.customize ["modifyvm", :id, "--natdnshostresolver1", "off"] diff --git a/addons/aop/aop.sh b/addons/aop/aop.sh index e38a814..ac0fcd4 100644 --- a/addons/aop/aop.sh +++ b/addons/aop/aop.sh @@ -5,28 +5,28 @@ cd $OOS_SOURCE_DIR # Create schema for AOP cd $OOS_SOURCE_DIR/oracle -echo exit | sqlplus sys/$OOS_ORACLE_PWD as sysdba @create_user.sql $OOS_AOP_SCHEMA_NAME $OOS_AOP_SCHEMA_PASS Y +echo exit | sqlplus sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @create_user.sql $OOS_AOP_SCHEMA_NAME $OOS_AOP_SCHEMA_PASS Y cd $OOS_SOURCE_DIR # Create AOP Workspace echo creating AOP APEX Workspace -echo exit | sqlplus sys/$OOS_ORACLE_PWD as sysdba @apex/create_workspace.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME +echo exit | sqlplus sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @apex/create_workspace.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME # Create AOP Workspace User echo creating AOP APEX User -echo exit | sqlplus sys/$OOS_ORACLE_PWD as sysdba @apex/create_user.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME $OOS_AOP_APEX_USER_NAME $OOS_AOP_APEX_USER_PWD +echo exit | sqlplus sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @apex/create_user.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME $OOS_AOP_APEX_USER_NAME $OOS_AOP_APEX_USER_PWD # AOP ACL echo Setting up AOP cd $OOS_SOURCE_DIR/addons/aop -echo exit | sqlplus sys/$OOS_ORACLE_PWD as sysdba @aop_setup.sql $OOS_AOP_SCHEMA_NAME -echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS @aop_db_pkg.sql -echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS @install_db_sample_obj.sql -echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS @aop_sample3_db_obj.sql -echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS @aop_db_sample_pkg.sql -echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS @db_pkg_native_compile.sql +echo exit | sqlplus sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @aop_setup.sql $OOS_AOP_SCHEMA_NAME +echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 @aop_db_pkg.sql +echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 @install_db_sample_obj.sql +echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 @aop_sample3_db_obj.sql +echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 @aop_db_sample_pkg.sql +echo exit | sqlplus $OOS_AOP_SCHEMA_NAME/$OOS_AOP_SCHEMA_PASS@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 @db_pkg_native_compile.sql # install sample database app here (change to _51 for APEX 5.1 version) -echo exit | sqlplus sys/$OOS_ORACLE_PWD as sysdba @install_apex_app.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME 500 AOP aop_sample3_apex_app_50.sql \ No newline at end of file +echo exit | sqlplus sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @install_apex_app.sql $OOS_AOP_APEX_WORKSPACE $OOS_AOP_SCHEMA_NAME 500 AOP aop_sample3_apex_app_50.sql \ No newline at end of file diff --git a/docs/install_notes.md b/docs/install_notes.md index 5c4cd5c..e547372 100644 --- a/docs/install_notes.md +++ b/docs/install_notes.md @@ -14,7 +14,7 @@ Software that is installed apart of this package: ## Oracle XE 11g -Oracle is installed into the folder: ``/u01/app/oracle/product/11.2.0/xe`. This is most conveniently navigated to with the `$ORACLE_HOME` environment variable. This is set up when ever you log into the terminal via the profile: `/etc/profile.d/20oos_oraclexe.sh`. +Oracle is installed into the folder: `/opt/oracle/product/18c/dbhomeXE`. This is most conveniently navigated to with the `$ORACLE_HOME` environment variable. This is set up when ever you log into the terminal via the profile: `/etc/profile.d/20oos_oraclexe.sh`. ## Application Express 5.0 diff --git a/oracle/listener.ora b/oracle/listener.ora index 03dd2d1..c0bc956 100644 --- a/oracle/listener.ora +++ b/oracle/listener.ora @@ -1,26 +1,13 @@ -# listener.ora Network Configuration File: +# listener.ora Network Configuration File: /opt/oracle/product/18c/dbhomeXE/network/admin/listener.ora +# Generated by Oracle configuration tools. -SID_LIST_LISTENER = - (SID_LIST = - (SID_DESC = - (SID_NAME = PLSExtProc) - (ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe) - (PROGRAM = extproc) - ) - #resolves issue with using localhost as HOST - (SID_DESC = - (SID_NAME = XE) - (ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe) - ) - ) +DEFAULT_SERVICE_LISTENER = XE LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = - #If having listener connection issues comment out the line below: http://verma-sourabh.blogspot.ca/2014/09/solved-while-starting-listener-oracle.html - (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) + (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) -DEFAULT_SERVICE_LISTENER = (XE) diff --git a/oracle/tnsnames.ora b/oracle/tnsnames.ora index d046b34..bbfb9ae 100644 --- a/oracle/tnsnames.ora +++ b/oracle/tnsnames.ora @@ -1,8 +1,8 @@ -# tnsnames.ora Network Configuration File: +# tnsnames.ora Network Configuration File: /opt/oracle/product/18c/dbhomeXE/network/admin/tnsnames.ora +# Generated by Oracle configuration tools. XE = (DESCRIPTION = - #Change the values below (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) @@ -10,13 +10,5 @@ XE = ) ) -EXTPROC_CONNECTION_DATA = - (DESCRIPTION = - (ADDRESS_LIST = - (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE)) - ) - (CONNECT_DATA = - (SID = PLSExtProc) - (PRESENTATION = RO) - ) - ) +LISTENER_XE = + (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) diff --git a/ords/ords_params.properties b/ords/ords_params.properties index 989159c..fc81705 100644 --- a/ords/ords_params.properties +++ b/ords/ords_params.properties @@ -1,7 +1,7 @@ db.hostname=localhost db.password=OOS_APEX_PUB_USR_PWD db.port=OOS_ORACLE_TNS_PORT -db.sid=xe +db.servicename=xepdb1 db.username=APEX_PUBLIC_USER migrate.apex.rest=false plsql.gateway.add=true diff --git a/profile.d/20oos_oraclexe.sh b/profile.d/20oos_oraclexe.sh index cb312a8..ac8ea57 100644 --- a/profile.d/20oos_oraclexe.sh +++ b/profile.d/20oos_oraclexe.sh @@ -1,3 +1,5 @@ -source ORACLE_HOME/bin/oracle_env.sh +export ORACLE_SID=XE +export ORAENV_ASK=NO +. ORACLE_HOME/bin/oraenv alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman' diff --git a/scripts/apex.sh b/scripts/apex.sh index 993a88d..371fddf 100644 --- a/scripts/apex.sh +++ b/scripts/apex.sh @@ -8,8 +8,9 @@ unzip $OOS_APEX_ZIP_FILENAME #Install APEX echo "@apexins SYSAUX SYSAUX TEMP /i/" > run.sql +echo 'exit' >> run.sql cd apex -sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @../run.sql +sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @../run.sql #Change APEX admin password cd $OOS_SOURCE_DIR/tmp @@ -22,7 +23,7 @@ then echo "@apxxepwd $OOS_APEX_ADMIN_PWD" > run.sql echo 'exit' >> run.sql cd apex - sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @../run.sql + sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @../run.sql else echo "APEX 5.x/18.x Install. Using new change password method"; @@ -32,26 +33,24 @@ else perl -i -p -e 's/password \[\] " HIDE/password \[\] "/g' apxchpwd.sql #Make sure no indents -sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @apxchpwd << EOF1 +sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @apxchpwd << EOF1 $OOS_APEX_ADMIN_USER_NAME $OOS_APEX_ADMIN_EMAIL $OOS_APEX_ADMIN_PWD EOF1 fi - - - #APEX REST install cd $OOS_SOURCE_DIR/tmp #Setup restful services -if [[ ${OOS_APEX_ZIP_FILENAME,,} == "apex_18.2"* ]] +if [[ ${OOS_APEX_ZIP_FILENAME,,} == "apex_18.2"* + || ${OOS_APEX_ZIP_FILENAME,,} == "apex_19.1"* ]] then echo "@apex_rest_config_core.sql @ $OOS_APEX_LISTENERUN_PWD $OOS_APEX_REST_PUB_USR_PWD" > run.sql -else +else echo "@apex_rest_config_core.sql $OOS_APEX_LISTENERUN_PWD $OOS_APEX_REST_PUB_USR_PWD" > run.sql fi echo "exit" >> run.sql cd apex -sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @../run.sql +sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @../run.sql diff --git a/scripts/apex_config.sh b/scripts/apex_config.sh index 72293f0..425900d 100644 --- a/scripts/apex_config.sh +++ b/scripts/apex_config.sh @@ -2,17 +2,17 @@ cd $OOS_SOURCE_DIR/apex perl -i -p -e "s/OOS_APEX_PUB_USR_PWD/$OOS_APEX_PUB_USR_PWD/g" apex_config.sql -sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @apex_config.sql +sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @apex_config.sql #Create APEX Users if [ "$OOS_APEX_CREATE_USER_YN" = "Y" ]; then #Starting in APEX 5 need to separate since can only set one set_security_group_id per session echo creating APEX Workspace - echo exit | sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @create_workspace.sql $OOS_APEX_USER_WORKSPACE $OOS_ORACLE_USER_NAME + echo exit | sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @create_workspace.sql $OOS_APEX_USER_WORKSPACE $OOS_ORACLE_USER_NAME echo creating APEX User - echo exit | sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @create_user.sql $OOS_APEX_USER_WORKSPACE $OOS_ORACLE_USER_NAME $OOS_APEX_USER_NAME $OOS_APEX_USER_PASS + echo exit | sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @create_user.sql $OOS_APEX_USER_WORKSPACE $OOS_ORACLE_USER_NAME $OOS_APEX_USER_NAME $OOS_APEX_USER_PASS else @@ -22,7 +22,7 @@ fi #Create ACL if [ "$OOS_ORACLE_ACL_APEX_ALL_YN" = "Y" ]; then echo Creating Network ACL ALL - sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @apex_acl_all.sql + sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @apex_acl_all.sql else echo Not created APEX ACL fi diff --git a/scripts/config_validation.sh b/scripts/config_validation.sh index 44de405..2cd59d4 100644 --- a/scripts/config_validation.sh +++ b/scripts/config_validation.sh @@ -77,8 +77,9 @@ if [ "$OOS_MODULE_ORDS" = "Y" ]; then && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "17.4.1" ]] \ && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.1.1" ]] \ && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.2.0" ]] \ - && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.3.0" ]]; then - echo "This version of ORDS is not yet supprted in OXAR" >&2 + && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.3.0" ]] \ + && [[ ! "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "19.1.0" ]]; then + echo "This version of ORDS is not yet supported in OXAR" >&2 echo "Please report this at http://github.com/OraOpenSource/oxar/issues" >&2 exit 1 else diff --git a/scripts/oracle_config.sh b/scripts/oracle_config.sh index df7866f..c08ff98 100644 --- a/scripts/oracle_config.sh +++ b/scripts/oracle_config.sh @@ -1,11 +1,11 @@ #!/bin/bash cd $OOS_SOURCE_DIR/oracle -sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @oracle_config.sql +sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @oracle_config.sql #Create Oracle Users if [ "$OOS_ORACLE_CREATE_USER_YN" = "Y" ]; then echo Creating Oracle User - echo exit | sqlplus -L sys/$OOS_ORACLE_PWD as sysdba @create_user.sql $OOS_ORACLE_USER_NAME $OOS_ORACLE_USER_PASS $OOS_ORACLE_CREATE_USER_DEMO_DATA_YN + echo exit | sqlplus -L sys/$OOS_ORACLE_PWD@localhost:$OOS_ORACLE_TNS_PORT/xepdb1 as sysdba @create_user.sql $OOS_ORACLE_USER_NAME $OOS_ORACLE_USER_PASS $OOS_ORACLE_CREATE_USER_DEMO_DATA_YN else echo Not creating Oracle User fi @@ -13,12 +13,12 @@ cd $OOS_SOURCE_DIR/oracle #XE has SYSTEM as the Default tablespace by default. Set back to USERS echo Setting default tablespace -sqlplus -L sys/${OOS_ORACLE_PWD} as sysdba @default_tablespace.sql << EOF1 +sqlplus -L sys/${OOS_ORACLE_PWD}@localhost:${OOS_ORACLE_TNS_PORT}/xepdb1 as sysdba @default_tablespace.sql << EOF1 USERS EOF1 #Unlock sample data as described in docs: http://docs.oracle.com/cd/E17781_01/admin.112/e18585/toc.htm#XEGSG120 echo Unlocking sample data \(schema: hr\) -sqlplus -L sys/${OOS_ORACLE_PWD} as sysdba @unlock_sample_data.sql << EOF1 +sqlplus -L sys/${OOS_ORACLE_PWD}@localhost:${OOS_ORACLE_TNS_PORT}/xepdb1 as sysdba @unlock_sample_data.sql << EOF1 ${OOS_HR_PASSWORD} EOF1 diff --git a/scripts/oraclexe.sh b/scripts/oraclexe.sh index 6150776..7ae506f 100644 --- a/scripts/oraclexe.sh +++ b/scripts/oraclexe.sh @@ -7,84 +7,20 @@ ${OOS_UTILS_DIR}/download.sh $OOS_ORACLE_FILE_URL #Install Oracle cd $OOS_SOURCE_DIR/tmp -unzip $OOS_ORACLE_FILENAME -cd Disk1 -if [ -n "$(command -v yum)" ]; then - rpm -ivh $OOS_ORACLE_FILENAME_RPM -elif [ -n "$(command -v apt-get)" ]; then - echo; echo \* OS changes prior to install of DB \*; echo - - if ! df | grep -q "/dev/shm"; then - rm -rf /dev/shm - mkdir /dev/shm - mount -t tmpfs shmfs -o size=2048m /dev/shm - fi - - if ! [[ -e /sbin/chkconfig ]]; then - cp ${OOS_SOURCE_DIR}/oracle/chkconfig /sbin/chkconfig - ADDED_CHKCONFIG='Y' - fi - - #mount -B /run/shm /dev/shm - touch /dev/shm/.oracle-shm - ln -s /usr/bin/awk /bin/awk -# mkdir /var/lock/subsys -# touch /var/lock/subsys/listener - echo; echo \* convert RPM to DEB \*; echo - alien --scripts -d $OOS_ORACLE_FILENAME_RPM - echo; echo \* Begin DB install \*; echo - dpkg --install oracle-xe_11.2.0-2_amd64.deb - - # Post-install changes - # Substitute `/var/lock/subsys` with `/var/run` to store pid files - perl -i -p -e "s/\/var\/lock\/subsys/\/var\/run/g" /etc/init.d/oracle-xe - - # Setup the oracle-shm service - cp $OOS_SOURCE_DIR/init.d/oracle-shm /etc/init.d/ - chmod 755 /etc/init.d/oracle-shm - - # Start Oracle XE services at boot - if [ -n "$(command -v update-rc.d)" ]; then - update-rc.d oracle-shm defaults 01 99 - update-rc.d oracle-xe defaults - fi - - if [[ ${ADDED_CHKCONFIG} = 'Y' ]]; then - rm -f /sbin/chkconfig - fi - - echo; echo \* DB install complete \*; echo -fi - -#Silent configuration -cd response/ -#Note: Use double quotes as pearl doesn't expand shell variables with single quotes -perl -i -p -e "s/ORACLE_HTTP_PORT=8080/ORACLE_HTTP_PORT=$OOS_ORACLE_HTTP_PORT/g" xe.rsp -perl -i -p -e "s/ORACLE_PASSWORD=/ORACLE_PASSWORD=$OOS_ORACLE_PWD/g" xe.rsp -perl -i -p -e "s/ORACLE_CONFIRM_PASSWORD=/ORACLE_CONFIRM_PASSWORD=$OOS_ORACLE_PWD/g" xe.rsp -perl -i -p -e "s/ORACLE_LISTENER_PORT=1521/ORACLE_LISTENER_PORT=$OOS_ORACLE_TNS_PORT/g" xe.rsp +OOS_ORACLE_PREINSTALL_FILENAME="$( sed 's/xe/preinstall/g' <<< ${OOS_ORACLE_FILENAME//.x86/.el7.x86})" +curl -o $OOS_ORACLE_PREINSTALL_FILENAME https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/$OOS_ORACLE_PREINSTALL_FILENAME +echo OOS_ORACLE_PREINSTALL_FILENAME: $OOS_ORACLE_PREINSTALL_FILENAME -#/etc/init.d/oracle-xe configure responseFile=xe.rsp >> XEsilentinstall.log -echo; echo \* begin DB configure \*; echo -/etc/init.d/oracle-xe configure responseFile=xe.rsp -echo; echo \* DB configure complete \*; echo - -#Configure env variables -cd /u01/app/oracle/product/11.2.0/xe/bin -. ./oracle_env.sh - -#Create a profile to set environment -cd ${OOS_SOURCE_DIR}/profile.d -#Use | as field seperator to get around issue with / being field separator -# See: http://askubuntu.com/questions/76785/how-to-escape-file-path-in-sed -# Alternate solution: http://stackoverflow.com/questions/407523/escape-a-string-for-a-sed-replace-pattern -sed -i "s|ORACLE_HOME|${ORACLE_HOME}|" 20oos_oraclexe.sh -cp 20oos_oraclexe.sh /etc/profile.d/ +yum -y localinstall $OOS_ORACLE_PREINSTALL_FILENAME +yum -y localinstall $OOS_ORACLE_FILENAME +# silent configuration +perl -i -p -e "s/LISTENER_PORT=/LISTENER_PORT=$OOS_ORACLE_TNS_PORT/g" /etc/sysconfig/oracle-xe-18c.conf +echo "ORACLE_PASSWORD=$OOS_ORACLE_PWD" >> /etc/sysconfig/oracle-xe-18c.conf #Update the .ora files to use localhost instead of the current hostname #This is required since Amazon AMIs change the hostname -cd $ORACLE_HOME/network/admin +cd /opt/oracle/product/18c/dbhomeXE/network/admin #backup files mv listener.ora listener.bkp mv tnsnames.ora tnsnames.bkp @@ -96,12 +32,37 @@ cp $OOS_SOURCE_DIR/oracle/tnsnames.ora . perl -i -p -e "s/1521/$OOS_ORACLE_TNS_PORT/g" listener.ora perl -i -p -e "s/1521/$OOS_ORACLE_TNS_PORT/g" tnsnames.ora +cd $OOS_SOURCE_DIR + +/etc/init.d/oracle-xe-18c configure + +#Configure env variables +ORACLE_SID=XE +ORAENV_ASK=NO +. /opt/oracle/product/18c/dbhomeXE/bin/oraenv + +# Start Oracle XE services at boot +systemctl daemon-reload +systemctl enable oracle-xe-18c + +echo; echo \* DB install complete \*; echo + +#Create a profile to set environment +cd ${OOS_SOURCE_DIR}/profile.d +#Use | as field seperator to get around issue with / being field separator +# See: http://askubuntu.com/questions/76785/how-to-escape-file-path-in-sed +# Alternate solution: http://stackoverflow.com/questions/407523/escape-a-string-for-a-sed-replace-pattern +sed -i "s|ORACLE_HOME|${ORACLE_HOME}|" 20oos_oraclexe.sh +cp 20oos_oraclexe.sh /etc/profile.d/ + + #restart oracle -/etc/init.d/oracle-xe stop -/etc/init.d/oracle-xe start +/etc/init.d/oracle-xe-18c stop +/etc/init.d/oracle-xe-18c start + cd $OOS_SOURCE_DIR/oracle/ -sqlplus -L system/${OOS_ORACLE_PWD} @validate.sql > /dev/null +sqlplus -L system/${OOS_ORACLE_PWD}@localhost:${OOS_ORACLE_TNS_PORT}/xepdb1 @validate.sql > /dev/null DB_VALIDATE_RESULT=$? if [[ $DB_VALIDATE_RESULT -ne 0 ]]; then echo "The database installation seems to have failed. Exiting install" >&2 @@ -112,4 +73,3 @@ fi #Cleanup cd $OOS_SOURCE_DIR/tmp rm -rf $OOS_ORACLE_FILENAME -rm -rf Disk1 diff --git a/scripts/ords.sh b/scripts/ords.sh index 4319400..d0ce92b 100644 --- a/scripts/ords.sh +++ b/scripts/ords.sh @@ -60,7 +60,7 @@ if [[ "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "3.0.4" ]]; then cd scripts/install/core #Need to remove the hide property so the password can be piped in sed -i.backup s/HIDE// ords_manual_install.sql - sqlplus -L sys/${OOS_ORACLE_PWD} as sysdba @ords_manual_install_db_def_tbs.sql ${ORDS_SOURCE_DIR}/logs/ << EOF1 + sqlplus -L sys/${OOS_ORACLE_PWD}@localhost:${OOS_ORACLE_TNS_PORT}/xepdb1 as sysdba @ords_manual_install_db_def_tbs.sql ${ORDS_SOURCE_DIR}/logs/ << EOF1 ${OOS_ORDS_PUBLIC_USER_PASSWORD} #indent removed to properly read EOF1 (without tab prefix) to end statement EOF1 @@ -78,9 +78,10 @@ elif [[ "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "3.0.5" || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "3.0.11" || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "3.0.12" || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "17.4.1" - || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.1.1" - || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.2.0" - || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.3.0" ]]; then + || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.1.1" + || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.2.0" + || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "18.3.0" + || "${ORDS_MAJOR}.${ORDS_MINOR}.${ORDS_REVISION}" == "19.1.0" ]]; then java -jar ords.war install simple fi