{"id":25859,"date":"2023-06-14T15:00:09","date_gmt":"2023-06-14T13:00:09","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=25859"},"modified":"2023-06-14T15:00:11","modified_gmt":"2023-06-14T13:00:11","slug":"oda-check-your-db-homes-before-applying-server-patch","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/","title":{"rendered":"ODA: Check your DB homes before applying server patch"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<p>Patching an Oracle Database Appliance is divided in 4 main steps with 4 odacli commands in this order:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>odacli update-dcs[admin|components|agent]: the easiest part dedicated to update the ODA tooling, including odacli itself<\/li>\n\n\n\n<li>odacli update-server: the most complex part. It updates the OS, BIOS and ILOM, GI stack, system disk firmware, and some other components. On latest versions, there is something like 50 subtasks listed in the update job once completed.<\/li>\n\n\n\n<li>odacli update-storage: dedicated to update data disk firmwares and eventually disk controlers for HA ODAs<\/li>\n\n\n\n<li>odacli update-dbhome: dedicated to deploy new DB home versions and to patch associated databases. You should run this update for each DB home that hosts 1 or more databases<\/li>\n<\/ul>\n\n\n\n<p>It&#8217;s always recommended to update all the components, but it&#8217;s possible to stop after storage update if you want to keep older versions of the DB homes.<\/p>\n\n\n\n<p>Normally, the update-server wouldn&#8217;t need looking into DB homes, but it requires your DB homes to be correctly configured, even if no pre-check operation inside those DB homes if done by the system pre-checks (during the prepatch).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Discovering the problem<\/h2>\n\n\n\n<p>Doing the pre-checks is highly recommended when patching an ODA. You would take big risks not validating that everything is fine prior patching.<\/p>\n\n\n\n<p>The ODA I&#8217;m working on is a X8-2M running 19.14 and my plan is to bring it to 19.18 which is possible without any intermediate patch.<\/p>\n\n\n\n<p>The DCS components update went fine as in most cases, and the pre-checks for the system patch was also fine after some small adjustments. I was then quite confident that applying the patch would be done without any specific problem, but I was wrong:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli create-prepatchreport -s -v 19.18.0.0.0\n...\n\nodacli describe-prepatchreport -i 72b09221-f798-4bfb-92ea-77d136a6193d\r\n\r\nPatch pre-check report                                           \r\n------------------------------------------------------------------------\r\n                 Job ID:  72b09221-f798-4bfb-92ea-77d136a6193d\r\n            Description:  Patch pre-checks for &#091;OS, ILOM, GI, ORACHKSERVER, SERVER]\r\n                 Status:  SUCCESS\r\n                Created:  May 30, 2023 10:06:49 AM CEST\r\n                 Result:  All pre-checks succeeded\r\n\r\nNode Name       \r\n---------------\r\nsrvora06v \r\n\r\nPre-Check                      Status   Comments                              \r\n------------------------------ -------- -------------------------------------- \r\n__OS__ \r\nValidate supported versions     Success   Validated minimum supported versions. \r\nValidate patching tag           Success   Validated patching tag: 19.18.0.0.0.  \r\nIs patch location available     Success   Patch location is available.          \r\nVerify OS patch                 Success   Verified OS patch                     \r\nValidate command execution      Success   Validated command execution           \r\n\r\n__ILOM__ \r\nValidate ILOM server reachable  Success   Successfully connected with ILOM      \r\n                                          server using public IP and USB        \r\n                                          interconnect                          \r\n\u2003\r\nValidate supported versions     Success   Validated minimum supported versions. \r\nValidate patching tag           Success   Validated patching tag: 19.18.0.0.0.  \r\nIs patch location available     Success   Patch location is available.          \r\nChecking Ilom patch Version     Success   Successfully verified the versions    \r\nPatch location validation       Success   Successfully validated location       \r\nValidate command execution      Success   Validated command execution           \r\n\r\n__GI__ \r\nValidate GI metadata            Success   Successfully validated GI metadata    \r\nValidate supported GI versions  Success   Successfully validated minimum version\r\nValidate available space        Success   Validated free space under \/u01       \r\nIs clusterware running          Success   Clusterware is running                \r\nValidate patching tag           Success   Validated patching tag: 19.18.0.0.0.  \r\nIs system provisioned           Success   Verified system is provisioned        \r\nValidate ASM in online          Success   ASM is online                         \r\nValidate kernel log level       Success   Successfully validated the OS log     \r\n                                          level                                 \r\nValidate minimum agent version  Success   GI patching enabled in current        \r\n                                          DCSAGENT version                      \r\nValidate Central Inventory      Success   oraInventory validation passed        \r\nValidate patching locks         Success   Validated patching locks              \r\nValidate clones location exist  Success   Validated clones location             \r\nValidate DB start dependencies  Success   DBs START dependency check passed     \r\nValidate DB stop dependencies   Success   DBs STOP dependency check passed      \r\nValidate space for clones       Success   Clones volume is already created      \r\nvolume                                                                          \r\nEvaluate GI patching            Success   Successfully validated GI patching    \r\nValidate command execution      Success   Validated command execution           \r\n\r\n__ORACHK__ \r\nRunning orachk                  Success   Successfully ran Orachk               \r\nValidate command execution      Success   Validated command execution           \r\n\r\n__SERVER__ \r\nValidate local patching         Success   Successfully validated server local   \r\n                                          patching                              \r\nValidate command execution      Success   Validated command execution  \r\n\n\nodacli update-server -v 19.18.0.0.0\r\n...\n\nodacli describe-job -i cdc1f7b8-333b-46bc-b0a2-75918dca8135\r\nJob details                                                      \r\n----------------------------------------------------------------\r\n                     ID:  cdc1f7b8-333b-46bc-b0a2-75918dca8135\r\n            Description:  Server Patching\r\n                 Status:  Failure\r\n                Created:  May 30, 2023 10:18:33 AM CEST\r\n                Message:  DCS-10001:Internal error encountered: Failed to run the opatch command : bash: \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\/OPatch\/opatch: No such file or directory.\r\n\r\nTask Name                                Start Time                          End Time                            Status    \r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nServer patching                          May 30, 2023 10:18:53 AM CEST       May 30, 2023 11:09:31 AM CEST       Failure   \r\nValidating GI user metadata              May 30, 2023 10:18:53 AM CEST       May 30, 2023 10:18:53 AM CEST       Success   \r\nValidate ILOM server reachable           May 30, 2023 10:18:53 AM CEST       May 30, 2023 10:18:54 AM CEST       Success   \r\nValidate DCS Admin mTLS setup            May 30, 2023 10:18:54 AM CEST       May 30, 2023 10:18:54 AM CEST       Success   \r\nServer patching                          May 30, 2023 10:18:55 AM CEST       May 30, 2023 11:09:31 AM CEST       Failure   \r\nConfigure export clones resource         May 30, 2023 10:18:56 AM CEST       May 30, 2023 10:18:56 AM CEST       Success   \r\nCreating repositories using yum          May 30, 2023 10:18:56 AM CEST       May 30, 2023 10:19:01 AM CEST       Success   \r\nUpdating YumPluginVersionLock rpm        May 30, 2023 10:19:01 AM CEST       May 30, 2023 10:19:01 AM CEST       Success   \r\nApplying OS Patches                      May 30, 2023 10:19:01 AM CEST       May 30, 2023 10:30:07 AM CEST       Success   \r\nCreating repositories using yum          May 30, 2023 10:30:07 AM CEST       May 30, 2023 10:30:07 AM CEST       Success   \r\nApplying HMP Patches                     May 30, 2023 10:30:07 AM CEST       May 30, 2023 10:30:23 AM CEST       Success   \r\nPatch location validation                May 30, 2023 10:30:24 AM CEST       May 30, 2023 10:30:24 AM CEST       Success   \r\nOda-hw-mgmt upgrade                      May 30, 2023 10:30:25 AM CEST       May 30, 2023 10:30:56 AM CEST       Success   \r\nOSS Patching                             May 30, 2023 10:30:56 AM CEST       May 30, 2023 10:30:56 AM CEST       Success   \r\nApplying Firmware Disk Patches           May 30, 2023 10:30:57 AM CEST       May 30, 2023 10:30:59 AM CEST       Success   \r\nApplying Firmware Controller Patches     May 30, 2023 10:30:59 AM CEST       May 30, 2023 10:32:51 AM CEST       Success   \r\nChecking Ilom patch Version              May 30, 2023 10:32:51 AM CEST       May 30, 2023 10:32:52 AM CEST       Success   \r\nPatch location validation                May 30, 2023 10:32:52 AM CEST       May 30, 2023 10:32:52 AM CEST       Success   \r\nSave password in Wallet                  May 30, 2023 10:32:52 AM CEST       May 30, 2023 10:32:52 AM CEST       Success   \r\nDisabling IPMI v2                        May 30, 2023 10:32:52 AM CEST       May 30, 2023 10:32:53 AM CEST       Success   \r\nApply Ilom patch                         May 30, 2023 10:32:53 AM CEST       May 30, 2023 10:36:35 AM CEST       Success   \r\nCopying Flash Bios to Temp location      May 30, 2023 10:36:35 AM CEST       May 30, 2023 10:36:35 AM CEST       Success   \r\nPatch location validation                May 30, 2023 10:36:35 AM CEST       May 30, 2023 10:36:35 AM CEST       Success   \r\nASR Manager RPM update                   May 30, 2023 10:36:35 AM CEST       May 30, 2023 10:41:29 AM CEST       Success   \r\nModify JavaExec Path                     May 30, 2023 10:41:29 AM CEST       May 30, 2023 10:41:29 AM CEST       Success   \r\nRemove AsrConfBackup File                May 30, 2023 10:41:29 AM CEST       May 30, 2023 10:41:29 AM CEST       Success   \r\nServer patching                          May 30, 2023 10:41:29 AM CEST       May 30, 2023 11:09:31 AM CEST       Failure   \r\nStarting the clusterware                 May 30, 2023 10:41:29 AM CEST       May 30, 2023 10:45:13 AM CEST       Success   \r\nRegistering image                        May 30, 2023 10:45:15 AM CEST       May 30, 2023 10:45:18 AM CEST       Success   \r\nRegistering working copy                 May 30, 2023 10:45:19 AM CEST       May 30, 2023 10:45:31 AM CEST       Success   \r\nRegistering image                        May 30, 2023 10:45:32 AM CEST       May 30, 2023 10:45:37 AM CEST       Success   \r\nCreating GI home directories             May 30, 2023 10:45:38 AM CEST       May 30, 2023 10:45:38 AM CEST       Success   \r\nExtract GI clone                         May 30, 2023 10:45:38 AM CEST       May 30, 2023 10:45:39 AM CEST       Success   \r\nProvisioning Software Only GI with RHP   May 30, 2023 10:45:39 AM CEST       May 30, 2023 10:45:39 AM CEST       Success   \r\nPatch GI with RHP                        May 30, 2023 10:45:39 AM CEST       May 30, 2023 11:09:25 AM CEST       Success   \r\nUpdating GIHome version                  May 30, 2023 11:09:25 AM CEST       May 30, 2023 11:09:31 AM CEST       Success   \r\nServer patching                          May 30, 2023 11:09:31 AM CEST       May 30, 2023 11:09:31 AM CEST       Failure   \r\nUpdating All DBHome version              May 30, 2023 11:09:31 AM CEST       May 30, 2023 11:09:31 AM CEST       Failure   <\/code><\/pre>\n\n\n\n<p>OK, you will first notice that I&#8217;m still using an old DB release (12.1) which is no more supported on ODA, and that this home still resides on local disks, where it&#8217;s not supposed to be anymore. But my customer still uses older releases. This very DB home was created after provisioning the ODA some years ago. This is not the ideal configuration, but I need to apply the server patch on the system side.<\/p>\n\n\n\n<p>The classic DCS-10001 error is a generic one, but the error message is quite clear, the opatch binary is not where it&#8217;s supposed to be.<\/p>\n\n\n\n<p>As troubleshooting may take hours, I decided to restore the LVM snapshots with ODABR. Yes it&#8217;s absolutely needed doing LVM snapshots with ODABR tool prior patching to be able to go back in time regarding the system.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/opt\/odabr\/odabr infosnap\r\n\r\n\u2502\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2502\r\n odabr - ODA node Backup Restore - Version: 2.0.1-71\r\n Copyright 2013, 2022, Oracle and\/or its affiliates.\r\n --------------------------------------------------------\r\n Author: Ruggero Citton &lt;ruggero.citton@oracle.com&gt;\r\n RAC Pack, Cloud Innovation and Solution Engineering Team\r\n\u2502\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2502\r\n\r\n\r\nLVM snap name         Status                COW Size              Data%               \r\n-------------         ----------            ----------            ------              \r\nroot_snap             active                20.00 GiB             51.37%              \r\nopt_snap              active                50.00 GiB             27.07%              \r\nu01_snap              active                50.00 GiB             54.11%              \r\n\r\n\r\n\/opt\/odabr\/odabr restore -snap\r\nINFO: 2023-05-30 11:50:52: Please check the logfile '\/opt\/odabr\/out\/log\/odabr_76017.log' for more details \r\n\r\n\u2502\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2502\r\n odabr - ODA node Backup Restore - Version: 2.0.1-71\r\n Copyright 2013, 2022, Oracle and\/or its affiliates.\r\n --------------------------------------------------------\r\n Author: Ruggero Citton &lt;ruggero.citton@oracle.com&gt;\r\n RAC Pack, Cloud Innovation and Solution Engineering Team\r\n\u2502\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2592\u2502\r\n\r\n\u2003\r\nINFO: 2023-05-30 11:50:52: Checking superuser\r\nINFO: 2023-05-30 11:50:52: Checking Bare Metal\r\nINFO: 2023-05-30 11:50:52: Restoring '\/boot' partition\r\nINFO: 2023-05-30 11:50:52: Getting boot device\r\nINFO: 2023-05-30 11:50:52: ...restoring boot device image\r\nSUCCESS: 2023-05-30 11:51:11: Boot image restored successfully\r\nINFO: 2023-05-30 11:51:11: Getting EFI device\r\nINFO: 2023-05-30 11:51:11: ...restoring EFI device image\r\nSUCCESS: 2023-05-30 11:51:13: EFI iamge restored successfully\r\nINFO: 2023-05-30 11:51:13: Checking LVM snapshots status\r\nINFO: 2023-05-30 11:51:13: Restoring LVM snapshots\r\nINFO: 2023-05-30 11:51:13: ...restoring LVM snapshot for 'opt'\r\nSUCCESS: 2023-05-30 11:51:13: ...snapshot restore for 'opt' done successfully\r\nINFO: 2023-05-30 11:51:13: ...restoring LVM snapshot for 'u01'\r\nSUCCESS: 2023-05-30 11:51:13: ...snapshot restore for 'u01' done successfully\r\nINFO: 2023-05-30 11:51:13: ...restoring LVM snapshot for 'root'\r\nSUCCESS: 2023-05-30 11:51:13: ...snapshot restore for 'root' done successfully\r\nSUCCESS: 2023-05-30 11:51:13: LVM snapshots restore done successfully\r\nINFO: 2023-05-30 11:51:13: Please reboot the host to activate the changes\r\n\r\nsleep 60 ; reboot<\/code><\/pre>\n\n\n\n<p>You should be careful because the snapshot restore continues after reboot and can take something like 30 minutes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Troubleshooting<\/h2>\n\n\n\n<p>When trying to call opatch from this DB home, I found out that no more files were there:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli list-dbhomes\r\nID                                       Name                 DB Version                               Home Location                                 Status    \r\n---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------\r\n01cb7d70-c094-43d4-b082-ba67df62e2f2     OraDB12102_home1     12.1.0.2.201020                          \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1     CONFIGURED\r\nfc250e93-3ebf-4e5e-b594-b94542ac13b0     OraDB11204_home1     11.2.0.4.201020                          \/u01\/app\/oracle\/product\/11.2.0.4\/dbhome_1     CONFIGURED\r\n04df8a1e-2069-449b-a122-4f0ed6c11663     OraDB12201_home1     12.2.0.1.201020                          \/u01\/app\/oracle\/product\/12.2.0.1\/dbhome_1     CONFIGURED\r\n51c0f8e1-4763-4675-a0ff-ff9ca97098e5     OraDB19000_home1     19.9.0.0.201020                          \/u01\/app\/oracle\/product\/19.0.0.0\/dbhome_1     CONFIGURED\r\n7a05c552-075b-4d42-b0a6-099c0753e7d7     OraDB19000_home2     19.9.0.0.201020                          \/u01\/app\/odaorahome\/oracle\/product\/19.0.0.0\/dbhome_2 CONFIGURED\r\na69e4e7c-c966-4e1b-a283-e0885b349d97     OraDB12102_home3     12.1.0.2.201020                          \/u01\/app\/odaorahome\/oracle\/product\/12.1.0.2\/dbhome_3 CONFIGURED\r\n\nfor a in `odacli list-dbhomes | grep dbhome | cut -c 80- | awk '{print $1}'` ; do echo $a ; ls -lrt $a\/OPatch\/opatch; done\r\n\/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\r\nls: cannot access \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\/OPatch\/opatch: No such file or directory\r\n\/u01\/app\/oracle\/product\/11.2.0.4\/dbhome_1\r\n-rwx--x--- 1 oracle oinstall 49462 Apr 22  2020 \/u01\/app\/oracle\/product\/11.2.0.4\/dbhome_1\/OPatch\/opatch\r\n\/u01\/app\/oracle\/product\/12.2.0.1\/dbhome_1\r\n-rwxr-x--- 1 oracle oinstall 49462 Apr 22  2020 \/u01\/app\/oracle\/product\/12.2.0.1\/dbhome_1\/OPatch\/opatch\r\n\/u01\/app\/oracle\/product\/19.0.0.0\/dbhome_1\r\n-rwxr-x--- 1 oracle oinstall 49462 Apr 22  2020 \/u01\/app\/oracle\/product\/19.0.0.0\/dbhome_1\/OPatch\/opatch\r\n\/u01\/app\/odaorahome\/oracle\/product\/19.0.0.0\/dbhome_2\r\n-rwxr-x--- 1 oracle oinstall 49462 Apr 22  2020 \/u01\/app\/odaorahome\/oracle\/product\/19.0.0.0\/dbhome_2\/OPatch\/opatch\r\n\/u01\/app\/odaorahome\/oracle\/product\/12.1.0.2\/dbhome_3\r\n-rwx--x--- 1 oracle oinstall 49462 May 30 11:39 \/u01\/app\/odaorahome\/oracle\/product\/12.1.0.2\/dbhome_3\/OPatch\/opatch\r\n\n\ndu -hs \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\r\n4.0K    \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1<\/code><\/pre>\n\n\n\n<p>The pre-checks should have only check that the DB home exists and is configured in the ODA registry. This DB home was not in use anymore, so I thought about removing it, but as it&#8217;s empty, odacli is not able to do that. And there is no force option when deleting a DB home:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli delete-dbhome -i 01cb7d70-c094-43d4-b082-ba67df62e2f2\r\nodacli describe-job -i 621719fa-1d94-44f3-ab81-c2eb823ebfbf\r\nJob details                                                      \r\n----------------------------------------------------------------\r\n                     ID:  621719fa-1d94-44f3-ab81-c2eb823ebfbf\r\n            Description:  Database Home OraDB12102_home1 Deletion with id 01cb7d70-c094-43d4-b082-ba67df62e2f2\r\n                 Status:  Failure\r\n                Created:  May 30, 2023 11:15:47 AM CEST\r\n                Message:  DCS-10001:Internal error encountered: PRGH-1010 : Removal of Oracle home \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1 failed\r\nPRCZ-4001 : failed to execute command \"\/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\/deinstall\/deinstall\" using the privileged execution plugin \"odaexec\" on nodes \"srvora06v\" within 4,000 seconds\r\nPRCZ-2103 : Failed to execute command \"\/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\/deinstall\/deinstall\" on node \"srvora06v\" as user \"oracle\". Detailed error:\r\nbash: \/u01\/app\/oracle\/product\/12.1.0.2\/dbhome_1\/deinstall\/deinstall: No such file or directory.\r\n\r\nTask Name                                Start Time                          End Time                            Status    \r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nDbHome service deletion for 01cb7d70-c094-43d4-b082-ba67df62e2f2 May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:48 AM CEST       Failure   \r\nDbHome service deletion for 01cb7d70-c094-43d4-b082-ba67df62e2f2 May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:48 AM CEST       Failure   \r\nValidate dbhome 01cb7d70-c094-43d4-b082-ba67df62e2f2 for deletion May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:47 AM CEST       Success   \r\nSetting up ssh equivalance               May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:47 AM CEST       Success   \r\nSetting up ssh equivalance               May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:47 AM CEST       Success   \r\nDeleting DbHome by RHP                   May 30, 2023 11:15:47 AM CEST       May 30, 2023 11:15:48 AM CEST       Failure   <\/code><\/pre>\n\n\n\n<p>One option could be to populate the DB home from another one, as it&#8217;s not in use. It&#8217;s what I&#8217;ve done copying binaries from another ODA in the exact same configuration. I could have deleted this DB home after copying the files and it should have worked, but as I don&#8217;t know why this DB home became empty, and as it&#8217;s a production system, I prefer not doing that.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Few days later, retrying to apply the patch<\/h2>\n\n\n\n<p>Now my DB home has a complete set of files, I suppose the server patch could work. Let&#8217;s retry:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli update-server -v 19.18.0.0.0\r\n...\n\r\nodacli describe-job -i b45424f6-66e0-470b-ab75-50b2953d7280\r\nJob details                                                      \r\n----------------------------------------------------------------\r\n                     ID:  b45424f6-66e0-470b-ab75-50b2953d7280\r\n            Description:  Server Patching\r\n                 Status:  Success\r\n                Created:  June 7, 2023 10:08:42 AM CEST\r\n                Message:  Successfully patched GI with RHP\r\n\r\nTask Name                                Start Time                          End Time                            Status    \r\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\r\nValidating GI user metadata              June 7, 2023 10:09:07 AM CEST       June 7, 2023 10:09:07 AM CEST       Success   \r\nValidate ILOM server reachable           June 7, 2023 10:09:07 AM CEST       June 7, 2023 10:09:07 AM CEST       Success   \r\nValidate DCS Admin mTLS setup            June 7, 2023 10:09:07 AM CEST       June 7, 2023 10:09:07 AM CEST       Success   \r\nConfigure export clones resource         June 7, 2023 10:09:11 AM CEST       June 7, 2023 10:09:11 AM CEST       Success   \r\nCreating repositories using yum          June 7, 2023 10:09:12 AM CEST       June 7, 2023 10:09:17 AM CEST       Success   \r\nUpdating YumPluginVersionLock rpm        June 7, 2023 10:09:17 AM CEST       June 7, 2023 10:09:17 AM CEST       Success   \r\nApplying OS Patches                      June 7, 2023 10:09:17 AM CEST       June 7, 2023 10:18:55 AM CEST       Success   \r\nCreating repositories using yum          June 7, 2023 10:18:55 AM CEST       June 7, 2023 10:18:56 AM CEST       Success   \r\nApplying HMP Patches                     June 7, 2023 10:18:56 AM CEST       June 7, 2023 10:19:12 AM CEST       Success   \r\nPatch location validation                June 7, 2023 10:19:13 AM CEST       June 7, 2023 10:19:13 AM CEST       Success   \r\nOda-hw-mgmt upgrade                      June 7, 2023 10:19:14 AM CEST       June 7, 2023 10:19:44 AM CEST       Success   \r\nOSS Patching                             June 7, 2023 10:19:44 AM CEST       June 7, 2023 10:19:44 AM CEST       Success   \r\nApplying Firmware Disk Patches           June 7, 2023 10:19:45 AM CEST       June 7, 2023 10:19:48 AM CEST       Success   \r\nApplying Firmware Controller Patches     June 7, 2023 10:19:49 AM CEST       June 7, 2023 10:19:52 AM CEST       Success   \r\nChecking Ilom patch Version              June 7, 2023 10:19:52 AM CEST       June 7, 2023 10:19:53 AM CEST       Success   \r\nPatch location validation                June 7, 2023 10:19:53 AM CEST       June 7, 2023 10:19:53 AM CEST       Success   \r\nSave password in Wallet                  June 7, 2023 10:19:53 AM CEST       June 7, 2023 10:19:53 AM CEST       Success   \r\nDisabling IPMI v2                        June 7, 2023 10:19:53 AM CEST       June 7, 2023 10:19:54 AM CEST       Success   \r\nApply Ilom patch                         June 7, 2023 10:19:54 AM CEST       June 7, 2023 10:23:36 AM CEST       Success   \r\nCopying Flash Bios to Temp location      June 7, 2023 10:23:37 AM CEST       June 7, 2023 10:23:37 AM CEST       Success   \r\nPatch location validation                June 7, 2023 10:23:37 AM CEST       June 7, 2023 10:23:37 AM CEST       Success   \r\nASR Manager RPM update                   June 7, 2023 10:23:37 AM CEST       June 7, 2023 10:28:31 AM CEST       Success   \r\nModify JavaExec Path                     June 7, 2023 10:28:31 AM CEST       June 7, 2023 10:28:31 AM CEST       Success   \r\nRemove AsrConfBackup File                June 7, 2023 10:28:31 AM CEST       June 7, 2023 10:28:31 AM CEST       Success   \r\nStarting the clusterware                 June 7, 2023 10:28:31 AM CEST       June 7, 2023 10:31:51 AM CEST       Success   \r\nRegistering image                        June 7, 2023 10:31:52 AM CEST       June 7, 2023 10:31:55 AM CEST       Success   \r\nRegistering working copy                 June 7, 2023 10:31:55 AM CEST       June 7, 2023 10:31:57 AM CEST       Success   \r\nRegistering image                        June 7, 2023 10:31:57 AM CEST       June 7, 2023 10:32:00 AM CEST       Success   \r\nCreating GI home directories             June 7, 2023 10:32:00 AM CEST       June 7, 2023 10:32:01 AM CEST       Success   \r\nExtract GI clone                         June 7, 2023 10:32:03 AM CEST       June 7, 2023 10:32:03 AM CEST       Success   \r\nProvisioning Software Only GI with RHP   June 7, 2023 10:32:03 AM CEST       June 7, 2023 10:32:04 AM CEST       Success   \r\nPatch GI with RHP                        June 7, 2023 10:32:04 AM CEST       June 7, 2023 10:43:50 AM CEST       Success   \r\nUpdating GIHome version                  June 7, 2023 10:43:51 AM CEST       June 7, 2023 10:44:00 AM CEST       Success   \r\nValidate GI availability                 June 7, 2023 10:44:22 AM CEST       June 7, 2023 10:44:22 AM CEST       Success   \r\nPatch KVM CRS type                       June 7, 2023 10:44:22 AM CEST       June 7, 2023 10:44:22 AM CEST       Success   \r\nPatch VM vDisks CRS dependencies         June 7, 2023 10:44:22 AM CEST       June 7, 2023 10:44:22 AM CEST       Success   \r\nPatch DB System domain config            June 7, 2023 10:44:22 AM CEST       June 7, 2023 10:44:22 AM CEST       Success   \r\nUpdate System version                    June 7, 2023 10:44:23 AM CEST       June 7, 2023 10:44:23 AM CEST       Success   \r\nCleanup JRE Home                         June 7, 2023 10:44:23 AM CEST       June 7, 2023 10:44:23 AM CEST       Success   \r\nAdd SYSNAME in Env                       June 7, 2023 10:44:23 AM CEST       June 7, 2023 10:44:23 AM CEST       Success   \r\nStarting the clusterware                 June 7, 2023 10:44:23 AM CEST       June 7, 2023 10:44:23 AM CEST       Success   \r\nSetting ACL for disk groups              June 7, 2023 10:44:23 AM CEST       June 7, 2023 10:44:27 AM CEST       Success   \r\nEnable LKCE                              June 7, 2023 10:46:34 AM CEST       June 7, 2023 10:50:35 AM CEST       Success   \r\nUpdate lvm.conf file                     June 7, 2023 10:50:36 AM CEST       June 7, 2023 10:50:36 AM CEST       Success   \r\nUpdate previous workarounds              June 7, 2023 10:50:36 AM CEST       June 7, 2023 10:50:36 AM CEST       Success   \r\nGenerating and saving BOM                June 7, 2023 10:50:36 AM CEST       June 7, 2023 10:55:14 AM CEST       Success   \r\nPreRebootNode Actions                    June 7, 2023 10:55:14 AM CEST       June 7, 2023 10:56:11 AM CEST       Success   \r\nReboot Ilom                              June 7, 2023 10:56:11 AM CEST       June 7, 2023 10:56:11 AM CEST       Success    \r\n<\/code><\/pre>\n\n\n\n<p>That&#8217;s it. An empty DB home prevents applying the server patch.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>I would recommend checking your DB homes prior applying the system patch. Just check if you can do a lsinventory for each DB home listed in odacli list-dbhomes. In the other recommendations, please also check if databases listed in odacli-listdatabases are currently running and are registered in the clusterware stack (srvctl config database -db DB_NAME). The system patch will need a clean environment and the prepatchreport may not detect some failures.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Patching an Oracle Database Appliance is divided in 4 main steps with 4 odacli commands in this order: It&#8217;s always recommended to update all the components, but it&#8217;s possible to stop after storage update if you want to keep older versions of the DB homes. Normally, the update-server wouldn&#8217;t need looking into DB homes, [&hellip;]<\/p>\n","protected":false},"author":45,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[59],"tags":[2184,2984,2567,2361,2986,1327,1662,96,2568,2985,1587,1330,1331,1332,1697,1698,1699,2427,2682,2429],"type_dbi":[],"class_list":["post-25859","post","type-post","status-publish","format-standard","hentry","category-oracle","tag-dcs-10001","tag-failed-to-run-the-patch-command","tag-oda-2","tag-odabr","tag-odabr-restore-snap","tag-odacli","tag-odacli-update-server","tag-oracle","tag-oracle-database-appliance-2","tag-server-patching-failure","tag-update-server","tag-x7-2ha","tag-x7-2m","tag-x7-2s","tag-x8-2ha","tag-x8-2m","tag-x8-2s","tag-x9-2ha","tag-x9-2l","tag-x9-2s"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>ODA: Check your DB homes before applying server patch - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ODA: Check your DB homes before applying server patch\" \/>\n<meta property=\"og:description\" content=\"Introduction Patching an Oracle Database Appliance is divided in 4 main steps with 4 odacli commands in this order: It&#8217;s always recommended to update all the components, but it&#8217;s possible to stop after storage update if you want to keep older versions of the DB homes. Normally, the update-server wouldn&#8217;t need looking into DB homes, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-14T13:00:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-14T13:00:11+00:00\" \/>\n<meta name=\"author\" content=\"J\u00e9r\u00f4me Dubar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"J\u00e9r\u00f4me Dubar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\"},\"author\":{\"name\":\"J\u00e9r\u00f4me Dubar\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd\"},\"headline\":\"ODA: Check your DB homes before applying server patch\",\"datePublished\":\"2023-06-14T13:00:09+00:00\",\"dateModified\":\"2023-06-14T13:00:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\"},\"wordCount\":705,\"commentCount\":2,\"keywords\":[\"DCS-10001\",\"Failed to run the patch command\",\"oda\",\"odabr\",\"odabr restore -snap\",\"odacli\",\"odacli update-server\",\"Oracle\",\"oracle database appliance\",\"server patching failure\",\"update-server\",\"X7-2HA\",\"X7-2M\",\"X7-2S\",\"x8-2ha\",\"x8-2m\",\"x8-2s\",\"X9-2HA\",\"X9-2L\",\"X9-2S\"],\"articleSection\":[\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\",\"name\":\"ODA: Check your DB homes before applying server patch - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2023-06-14T13:00:09+00:00\",\"dateModified\":\"2023-06-14T13:00:11+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ODA: Check your DB homes before applying server patch\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd\",\"name\":\"J\u00e9r\u00f4me Dubar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g\",\"caption\":\"J\u00e9r\u00f4me Dubar\"},\"description\":\"J\u00e9r\u00f4me Dubar has more than 15 years of experience in the field of Information Technology. Ten years ago, he specialized in the Oracle Database technology. His expertise is focused on database architectures, high availability (RAC), disaster recovery (DataGuard), backups (RMAN), performance analysis and tuning (AWR\/statspack), migration, consolidation and appliances, especially ODA (his main projects during the last years). Prior to joining dbi services, J\u00e9r\u00f4me Dubar worked in a Franco-Belgian IT service company as Database team manager and main consultant for 7 years. He also worked for 5 years in a software editor company as technical consultant across France. He was also teaching Oracle Database lessons for 9 years. J\u00e9r\u00f4me Dubar holds a Computer Engineering degree from the Lille Sciences and Technologies university in northern France. His branch-related experience covers the public sector, retail, industry, banking, health, e-commerce and IT sectors.\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/jerome-dubar\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"ODA: Check your DB homes before applying server patch - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/","og_locale":"en_US","og_type":"article","og_title":"ODA: Check your DB homes before applying server patch","og_description":"Introduction Patching an Oracle Database Appliance is divided in 4 main steps with 4 odacli commands in this order: It&#8217;s always recommended to update all the components, but it&#8217;s possible to stop after storage update if you want to keep older versions of the DB homes. Normally, the update-server wouldn&#8217;t need looking into DB homes, [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/","og_site_name":"dbi Blog","article_published_time":"2023-06-14T13:00:09+00:00","article_modified_time":"2023-06-14T13:00:11+00:00","author":"J\u00e9r\u00f4me Dubar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"J\u00e9r\u00f4me Dubar","Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/"},"author":{"name":"J\u00e9r\u00f4me Dubar","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd"},"headline":"ODA: Check your DB homes before applying server patch","datePublished":"2023-06-14T13:00:09+00:00","dateModified":"2023-06-14T13:00:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/"},"wordCount":705,"commentCount":2,"keywords":["DCS-10001","Failed to run the patch command","oda","odabr","odabr restore -snap","odacli","odacli update-server","Oracle","oracle database appliance","server patching failure","update-server","X7-2HA","X7-2M","X7-2S","x8-2ha","x8-2m","x8-2s","X9-2HA","X9-2L","X9-2S"],"articleSection":["Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/","url":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/","name":"ODA: Check your DB homes before applying server patch - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2023-06-14T13:00:09+00:00","dateModified":"2023-06-14T13:00:11+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/oda-check-your-db-homes-before-applying-server-patch\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"ODA: Check your DB homes before applying server patch"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd","name":"J\u00e9r\u00f4me Dubar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/efaa5a7def0aa4cdaf49a470fb4a7641a3ea6e378ae1455096a0933f99f46d6b?s=96&d=mm&r=g","caption":"J\u00e9r\u00f4me Dubar"},"description":"J\u00e9r\u00f4me Dubar has more than 15 years of experience in the field of Information Technology. Ten years ago, he specialized in the Oracle Database technology. His expertise is focused on database architectures, high availability (RAC), disaster recovery (DataGuard), backups (RMAN), performance analysis and tuning (AWR\/statspack), migration, consolidation and appliances, especially ODA (his main projects during the last years). Prior to joining dbi services, J\u00e9r\u00f4me Dubar worked in a Franco-Belgian IT service company as Database team manager and main consultant for 7 years. He also worked for 5 years in a software editor company as technical consultant across France. He was also teaching Oracle Database lessons for 9 years. J\u00e9r\u00f4me Dubar holds a Computer Engineering degree from the Lille Sciences and Technologies university in northern France. His branch-related experience covers the public sector, retail, industry, banking, health, e-commerce and IT sectors.","url":"https:\/\/www.dbi-services.com\/blog\/author\/jerome-dubar\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/45"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=25859"}],"version-history":[{"count":5,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25859\/revisions"}],"predecessor-version":[{"id":25864,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25859\/revisions\/25864"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=25859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=25859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=25859"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=25859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}