{"id":28467,"date":"2023-10-06T11:30:27","date_gmt":"2023-10-06T09:30:27","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=28467"},"modified":"2023-10-06T11:40:34","modified_gmt":"2023-10-06T09:40:34","slug":"vdisk-backup-on-oda","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/","title":{"rendered":"Vdisk backup on ODA"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-introduction\">Introduction<\/h2>\n\n\n\n<p>Oracle Database Appliance now includes a powerful virtualisation layer based on KVM and fully integrated with odacli. For sure, an ODA is mostly dedicated to Oracle databases, but you can also benefit from unused cores to run application VMs in the same box as your databases. And it works like a charm.<\/p>\n\n\n\n<p>One of my customer recently asked if it would be possible to restore a part of the VM data without interrupting the service, the goal being to browse VM data at a point in time and compare to what&#8217;s in the current filesystem. This is not for a full VM restore but for getting back files from an older version.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-creating-a-test-environment\">Creating a test environment<\/h2>\n\n\n\n<p>On my ODA X8-2M running 19.19 version, let&#8217;s create a CPU pool for the VMs, create the VM storage on DATA diskgroup and create a data vdisk. This vdisk will be the one I&#8217;ll use for data recovery:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli list-vms\nNo data found for VM\n\nodacli create-cpupool -n CpuPool4VMs -c 4 -vm\nsleep 30; odacli list-cpupools\nName                  Type                Configured on              Cores  Associated resources            Created                   Updated      \n--------------------  ------------------  -------------------------  -----  ------------------------------  ------------------------  ------------------------\nCpuPool4VMs           VM                  dbioda01                   4      NONE                            2023-10-05 11:24:07 CEST  2023-10-05 11:24:07 CEST\n\nodacli create-vmstorage -n VMsDATA -dg DATA -s 500G\nsleep 30; odacli list-vmstorages\nName                  Disk group       Volume name      Volume device                   Size        Used        Used %      Available   Mount Point                          Created                   Updated\n--------------------  ---------------  ---------------  ------------------------------  ----------  ----------  ----------  ----------  -----------------------------------  ------------------------  ------------------------\nVMsDATA               DATA             VMSDATA          \/dev\/asm\/vmsdata-214            500.00 GB   1.36 GB     0.27%       498.64 GB   \/u05\/app\/sharedrepo\/vmsdata          2023-10-05 11:27:58 CEST  2023-10-05 11:27:58 CEST\n\n                                                                                                                                         \nodacli create-vdisk -n dbivm1-data -vms VMsDATA -s 100G\n\nsleep 120 ;  odacli describe-job -i 1f438468-0835-4c8f-8a0d-beb99416524f\n\nJob details\n----------------------------------------------------------------\n                     ID:  1f438468-0835-4c8f-8a0d-beb99416524f\n            Description:  VDisk dbivm1-data creation\n                 Status:  Success\n                Created:  October 5, 2023 11:31:14 AM CEST\n                Message:\n\nTask Name                                Start Time                          End Time                            Status\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\nValidate Virtual Disk doesn't exist      October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:31:14 AM CEST    Success\nValidate Vm Storage exists               October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:31:14 AM CEST    Success\nValidate Vm Storage space                October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:31:14 AM CEST    Success\nCreate Virtual Disk snapshot             October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:31:14 AM CEST    Success\nCreate Virtual Disk directories          October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:31:14 AM CEST    Success\nCreate Virtual Disk                      October 5, 2023 11:31:14 AM CEST    October 5, 2023 11:33:22 AM CEST    Success\nCreate metadata                          October 5, 2023 11:33:22 AM CEST    October 5, 2023 11:33:22 AM CEST    Success\nPersist metadata                         October 5, 2023 11:33:22 AM CEST    October 5, 2023 11:33:22 AM CEST    Success\n\n\nodacli list-vdisks\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST<\/code><\/pre>\n\n\n\n<p>Now it&#8217;s time to create the dbivm1 virtual machine. It will have 32GB of RAM and an Oracle Linux 7.9 distribution for the first boot. I will also connect my data vdisk I created before and this VM will use 2 CPU cores from the CPU pool. This VM will be connected to the pubnet network, it will have a 50GB boot disk and it will listen on my ODA&#8217;s IP for GUI setup.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli create-vm -n dbivm1 -m 32G -src \/opt\/dbi\/V1009690-01.iso -vd dbivm1-data -vc 2 -cp CpuPool4VMs -vn pubnet -vms VMsDATA -s 50G -g \"vnc,listen=10.86.20.241\"\n\nodacli describe-job -i bcc6662a-7a0b-4568-b853-9da86384ca13\n\nJob details\n----------------------------------------------------------------\n                     ID:  bcc6662a-7a0b-4568-b853-9da86384ca13\n            Description:  VM dbivm1 creation\n                 Status:  Success\n                Created:  October 5, 2023 1:41:22 PM CEST\n                Message:\n\nTask Name                                Start Time                          End Time                            Status\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\nValidate dependency resources            October 5, 2023 1:41:22 PM CEST     October 5, 2023 1:41:22 PM CEST     Success\nValidate resource allocations            October 5, 2023 1:41:22 PM CEST     October 5, 2023 1:41:23 PM CEST     Success\nAllocate resources                       October 5, 2023 1:41:23 PM CEST     October 5, 2023 1:41:23 PM CEST     Success\nProvision new VM                         October 5, 2023 1:41:23 PM CEST     October 5, 2023 1:41:25 PM CEST     Success\nAdd VM to Clusterware                    October 5, 2023 1:41:25 PM CEST     October 5, 2023 1:41:26 PM CEST     Success\nSave domain in ACFS                      October 5, 2023 1:41:26 PM CEST     October 5, 2023 1:41:26 PM CEST     Success\nCreate VM metadata                       October 5, 2023 1:41:26 PM CEST     October 5, 2023 1:41:26 PM CEST     Success\nPersist metadata                         October 5, 2023 1:41:26 PM CEST     October 5, 2023 1:41:26 PM CEST     Success\n\n\nodacli list-vms\nName                  VM Storage            Current State    Target State     Created                   Updated\n--------------------  --------------------  ---------------  ---------------  ------------------------  ------------------------\ndbivm1                VMsDATA               ONLINE           ONLINE           2023-10-05 13:41:26 CEST  2023-10-05 13:41:26 CEST\n\n\nodacli describe-vm -n dbivm1\nVM details\n--------------------------------------------------------------------------------\n                       ID:  07a741e0-d356-4b5c-adb5-d5f3c8ae5d03\n                     Name:  dbivm1\n                  Created:  2023-10-05 13:41:26 CEST\n                  Updated:  2023-10-05 13:41:26 CEST\n               VM Storage:  VMsDATA\n              Description:  NONE\n            VM image path:  \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/vm_dbivm1\/dbivm1\n                  VM size:  50.00 GB\n                   Source:  V1009690-01.iso\n              Cloned from:  N\/A\n                  OS Type:  NONE\n               OS Variant:  NONE\n        Graphics settings:  vnc,listen=10.86.20.241\n             Display Port:  10.86.20.241:0\n\n Status\n--------------------------\n             Current node:  dbioda01\n            Current state:  ONLINE\n             Target state:  ONLINE\n\n Parameters\n--------------------------\n           Preferred node:  NONE\n              Boot option:  NONE\n               Auto start:  YES\n                Fail over:  NO\n             NUMA enabled:  NO\n\n                            Config                     Live\n                            -------------------------  -------------------------\n                   Memory:  32.00 GB                   32.00 GB\n               Max Memory:  32.00 GB                   32.00 GB\n               vCPU count:  2                          2\n           Max vCPU count:  2                          2\n                 CPU Pool:  CpuPool4VMs                CpuPool4VMs\n        Effective CPU set:  1-2,5-6,9-10,13-14         1-2,5-6,9-10,13-14\n                    vCPUs:  0:1-2,5-6,9-10,13-14       0:1-2,5-6,9-10,13-14\n                            1:1-2,5-6,9-10,13-14       1:1-2,5-6,9-10,13-14\n                   vDisks:  dbivm1-data:vdb            dbivm1-data:vdb\n                vNetworks:  pubnet:52:54:00:1f:f4:84   pubnet:52:54:00:1f:f4:84<\/code><\/pre>\n\n\n\n<p>Display port is 10.86.20.241:0: I will then connect to this new VM using a VNC Viewer on 10.86.20.241:5900. Default port for VNC is 5900, just add the defined port here (5900+0). I will then do the setup of the operating system: everything with default values appart from network settings (10.86.20.248\/24). I will only use the 50GB boot disk for Linux setup, I will configure the data disk later.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Once the OS is deployed, let&#8217;s configure the 100GB data disk:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh root@10.86.20.248\nfdisk -l \/dev\/vdb | grep GB\nDisk \/dev\/vdb: 107.4 GB, 107374182400 bytes, 209715200 sectors\n\npvcreate \/dev\/vdb\nvgcreate vg_data \/dev\/vdb\nlvcreate -L 80G -n lv_data vg_data\nmkfs.ext4 \/dev\/mapper\/vg_data-lv_data\nmkdir \/data01\necho \"\/dev\/mapper\/vg_data-lv_data \/data01 ext4 defaults 1 2\" &gt;&gt; \/etc\/fstab\nmount -a\n\ndf -h\nFilesystem                   Size  Used Avail Use% Mounted on\ndevtmpfs                      16G     0   16G   0% \/dev\ntmpfs                         16G     0   16G   0% \/dev\/shm\ntmpfs                         16G  8.6M   16G   1% \/run\ntmpfs                         16G     0   16G   0% \/sys\/fs\/cgroup\n\/dev\/mapper\/ol-root           44G  1.4G   43G   4% \/\n\/dev\/vda1                   1014M  184M  831M  19% \/boot\ntmpfs                        3.2G     0  3.2G   0% \/run\/user\/0\n\/dev\/mapper\/vg_data-lv_data   79G   57M   75G   1% \/data01<\/code><\/pre>\n\n\n\n<p>My data disk is ready, let&#8217;s put dummy files inside:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>rm -rf dummyfile_* ; for a in {0001..5000}; do head -c $RANDOM \/dev\/urandom &gt; \/data01\/dummyfile_$a.dmf; done\n\ndf -h\nFilesystem                   Size  Used Avail Use% Mounted on\ndevtmpfs                      16G     0   16G   0% \/dev\ntmpfs                         16G     0   16G   0% \/dev\/shm\ntmpfs                         16G  8.6M   16G   1% \/run\ntmpfs                         16G     0   16G   0% \/sys\/fs\/cgroup\n\/dev\/mapper\/ol-root           44G  1.4G   43G   4% \/\n\/dev\/vda1                   1014M  184M  831M  19% \/boot\ntmpfs                        3.2G     0  3.2G   0% \/run\/user\/0\n\/dev\/mapper\/vg_data-lv_data   79G  144M   75G   1% \/data01\n\nls -lrt | head\ntotal 89860\ndrwx------. 2 root root 16384 Oct  5 09:30 lost+found\n-rw-r--r--. 1 root root 15781 Oct  5 10:03 dummyfile_0001.dmf\n-rw-r--r--. 1 root root 14976 Oct  5 10:03 dummyfile_0002.dmf\n-rw-r--r--. 1 root root 22209 Oct  5 10:03 dummyfile_0003.dmf\n-rw-r--r--. 1 root root 20250 Oct  5 10:03 dummyfile_0005.dmf\n-rw-r--r--. 1 root root 21634 Oct  5 10:03 dummyfile_0004.dmf\n-rw-r--r--. 1 root root  2424 Oct  5 10:03 dummyfile_0006.dmf\n-rw-r--r--. 1 root root 23033 Oct  5 10:03 dummyfile_0007.dmf\n-rw-r--r--. 1 root root 11018 Oct  5 10:03 dummyfile_0008.dmf<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-creating-vdisk-backups\">Creating vdisk backups<\/h2>\n\n\n\n<p>Vdisks can be cloned. Cloning a vdisk is a kind of backup you may use for another VM for example. You will need to stop the source VM to make a clone of its vdisks:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli list-vdisks\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\n\nodacli stop-vm -n dbivm1; sleep 30 ; odacli clone-vdisk -n dbivm1-data -cn dbivm1-data-`date +\"%Y%m%d-%H%M\"` ; sleep 30 ; odacli start-vm -n dbivm1\n<\/code><\/pre>\n\n\n\n<p>Cloning a vdisk is quite fast thanks to NVMe SSDs:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli describe-job -i f05139b2-92cc-4b65-a7df-987807bbb36f\n\nJob details\n----------------------------------------------------------------\n                     ID:  f05139b2-92cc-4b65-a7df-987807bbb36f\n            Description:  VDisk dbivm1-data cloning\n                 Status:  Success\n                Created:  October 5, 2023 4:11:56 PM CEST\n                Message:\n\nTask Name                                Start Time                          End Time                            Status\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\nValidate Virtual Disk exists             October 5, 2023 4:11:56 PM CEST     October 5, 2023 4:11:56 PM CEST     Success\nValidate Virtual Disk is not attached    October 5, 2023 4:11:56 PM CEST     October 5, 2023 4:11:56 PM CEST     Success\nto any running vms\nClone Virtual Disk                       October 5, 2023 4:11:56 PM CEST     October 5, 2023 4:11:56 PM CEST     Success\nPersist metadata                         October 5, 2023 4:11:56 PM CEST     October 5, 2023 4:11:56 PM CEST     Success\n<\/code><\/pre>\n\n\n\n<p>I now have another vdisk not attached to any VM:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli list-vdisks\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:11:56 CEST  2023-10-05 16:11:56 CEST\n-20231005-1611<\/code><\/pre>\n\n\n\n<p>I can create as many clones I want, for example once a day I will keep a week:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli stop-vm -n dbivm1; sleep 30 ; odacli clone-vdisk -n dbivm1-data -cn dbivm1-data-`date +\"%Y%m%d-%H%M\"` ; sleep 30 ; odacli start-vm -n dbivm1\n\nodacli list-vdisks\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:11:56 CEST  2023-10-05 16:11:56 CEST\n-20231005-1611\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:26:24 CEST  2023-10-05 16:26:24 CEST\n-20231005-1626<\/code><\/pre>\n\n\n\n<p>These vdisks are visible from the ODA, under a hidden folder:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>du -hs \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/*\n101G    \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/vdisk_dbivm1-data\n101G    \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/vdisk_dbivm1-data-20231005-1611\n101G    \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/vdisk_dbivm1-data-20231005-1626\n2.1G    \/u05\/app\/sharedrepo\/vmsdata\/.ACFS\/snaps\/vm_dbivm1<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-altering-data-on-the-filesystem\">Altering data on the filesystem<\/h2>\n\n\n\n<p>Now let&#8217;s simulate a loss of data on the data filesystem of my VM:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh root@10.86.20.248\ncd  \/data01\nrm -rf dummyfile_0*.dmf\nls -lrt | head\ntotal 71596\ndrwx------. 2 root root 16384 Oct  5 09:30 lost+found\n-rw-r--r--. 1 root root 10930 Oct  5 10:03 dummyfile_1000.dmf\n-rw-r--r--. 1 root root 11321 Oct  5 10:03 dummyfile_1001.dmf\n-rw-r--r--. 1 root root 32045 Oct  5 10:03 dummyfile_1002.dmf\n-rw-r--r--. 1 root root 27619 Oct  5 10:03 dummyfile_1003.dmf\n-rw-r--r--. 1 root root  9086 Oct  5 10:03 dummyfile_1004.dmf\n-rw-r--r--. 1 root root 31690 Oct  5 10:03 dummyfile_1005.dmf\n-rw-r--r--. 1 root root 23343 Oct  5 10:03 dummyfile_1006.dmf\n-rw-r--r--. 1 root root  3594 Oct  5 10:03 dummyfile_1007.dmf<\/code><\/pre>\n\n\n\n<p>OK, I lost data and I will need to compare and pick-up lost data from an old copy of my vdisk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-attaching-a-vdisk-to-an-existing-vm\">Attaching a vdisk to an existing VM<\/h2>\n\n\n\n<p>I will attach an old version of the vdisk to my VM. I need to specify the &#8220;live&#8221; option because I can&#8217;t reboot my VM now:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli modify-vm -n dbivm1 -avd dbivm1-data-20231005-1611 --live\n\nodacli describe-job -i d1f15f1a-5499-486d-83fb-18b0225ede57\n\nJob details\n----------------------------------------------------------------\n                     ID:  d1f15f1a-5499-486d-83fb-18b0225ede57\n            Description:  VM dbivm1 modification\n                 Status:  Success\n                Created:  October 5, 2023 5:11:09 PM CEST\n                Message:\n\nTask Name                                Start Time                          End Time                            Status\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\nValidate dependency resources            October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nDefine VM locally                        October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nValidate vDisk attachment pre-reqs       October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nAttach vDisks                            October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nEdit VM CRS Configuration                October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nSave domain in ACFS                      October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nModify VM metadata                       October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success\nPersist metadata                         October 5, 2023 5:11:09 PM CEST     October 5, 2023 5:11:09 PM CEST     Success<\/code><\/pre>\n\n\n\n<p>Connecting this vdisk to the VM was quite easy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-making-data-from-vdisk-available\">Making data from vdisk available<\/h2>\n\n\n\n<p>Data from this vdisk is not yet available because it has the same UUID as source data vdisk currently in use. But a vgimportclone will solve this problem by changing the UUID:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir \/rescue01\nvgimportclone -i -n vg_rescue \/dev\/vdc\n\nvgdisplay\n  --- Volume group ---\n  VG Name               vg_data\n  System ID\n  Format                lvm2\n  Metadata Areas        1\n  Metadata Sequence No  4\n  VG Access             read\/write\n  VG Status             resizable\n  MAX LV                0\n  Cur LV                1\n  Open LV               1\n  Max PV                0\n  Cur PV                1\n  Act PV                1\n  VG Size               &lt;100.00 GiB\n  PE Size               4.00 MiB\n  Total PE              25599\n  Alloc PE \/ Size       20480 \/ 80.00 GiB\n  Free  PE \/ Size       5119 \/ &lt;20.00 GiB\n  VG UUID               L0BHcA-0h03-d4kz-0eY3-xx1a-N6ZF-7DUIQP\n\n  --- Volume group ---\n  VG Name               ol\n  System ID\n  Format                lvm2\n  Metadata Areas        1\n  Metadata Sequence No  3\n  VG Access             read\/write\n  VG Status             resizable\n  MAX LV                0\n  Cur LV                2\n  Open LV               2\n  Max PV                0\n  Cur PV                1\n  Act PV                1\n  VG Size               &lt;49.00 GiB\n  PE Size               4.00 MiB\n  Total PE              12543\n  Alloc PE \/ Size       12543 \/ &lt;49.00 GiB\n  Free  PE \/ Size       0 \/ 0\n  VG UUID               QPR9Tk-CqNq-GsZ1-1qVO-tcDH-bcfh-EuBRQl\n\n  --- Volume group ---\n  VG Name               vg_rescue\n  System ID\n  Format                lvm2\n  Metadata Areas        1\n  Metadata Sequence No  6\n  VG Access             read\/write\n  VG Status             resizable\n  MAX LV                0\n  Cur LV                1\n  Open LV               0\n  Max PV                0\n  Cur PV                1\n  Act PV                1\n  VG Size               &lt;100.00 GiB\n  PE Size               4.00 MiB\n  Total PE              25599\n  Alloc PE \/ Size       20480 \/ 80.00 GiB\n  Free  PE \/ Size       5119 \/ &lt;20.00 GiB\n  VG UUID               NiWkOI-5dvL-f2Pf-z7Wa-bk9c-4TvL-JK09E8\n\n vgscan\n  Reading volume groups from cache.\n  Found volume group \"vg_data\" using metadata type lvm2\n  Found volume group \"ol\" using metadata type lvm2\n  Found volume group \"vg_rescue\" using metadata type lvm2\n\nlvdisplay\n  --- Logical volume ---\n  LV Path                \/dev\/vg_data\/lv_data\n  LV Name                lv_data\n  VG Name                vg_data\n  LV UUID                GcfE3o-X5YB-CJF3-emBr-socY-yJIZ-Wiq5N0\n  LV Write Access        read\/write\n  LV Creation host, time localhost.localdomain, 2023-10-05 09:30:45 -0400\n  LV Status              available\n  # open                 1\n  LV Size                80.00 GiB\n  Current LE             20480\n  Segments               1\n  Allocation             inherit\n  Read ahead sectors     auto\n  - currently set to     8192\n  Block device           252:2\n\n  --- Logical volume ---\n  LV Path                \/dev\/ol\/swap\n  LV Name                swap\n  VG Name                ol\n  LV UUID                Iu1Xk6-2aAC-0ZDd-amQl-k2LD-f3kv-RLSFFW\n  LV Write Access        read\/write\n  LV Creation host, time dhcp-10-36-0-229, 2023-10-05 08:01:24 -0400\n  LV Status              available\n  # open                 2\n  LV Size                5.00 GiB\n  Current LE             1280\n  Segments               1\n  Allocation             inherit\n  Read ahead sectors     auto\n  - currently set to     8192\n  Block device           252:1\n\n  --- Logical volume ---\n  LV Path                \/dev\/ol\/root\n  LV Name                root\n  VG Name                ol\n  LV UUID                wWG6wE-cF9r-Li2x-BYU6-OhAJ-cZZa-dj0pcn\n  LV Write Access        read\/write\n  LV Creation host, time dhcp-10-36-0-229, 2023-10-05 08:01:24 -0400\n  LV Status              available\n  # open                 1\n  LV Size                &lt;44.00 GiB\n  Current LE             11263\n  Segments               1\n  Allocation             inherit\n  Read ahead sectors     auto\n  - currently set to     8192\n  Block device           252:0\n\n  --- Logical volume ---\n  LV Path                \/dev\/vg_rescue\/lv_data\n  LV Name                lv_data\n  VG Name                vg_rescue\n  LV UUID                GcfE3o-X5YB-CJF3-emBr-socY-yJIZ-Wiq5N0\n  LV Write Access        read\/write\n  LV Creation host, time localhost.localdomain, 2023-10-05 09:30:45 -0400\n  LV Status              NOT available\n  LV Size                80.00 GiB\n  Current LE             20480\n  Segments               1\n  Allocation             inherit\n  Read ahead sectors     auto<\/code><\/pre>\n\n\n\n<p>Let&#8217;s change the logical volume status to make it available, then mount the filesystem on \/rescue01:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>lvchange -a \/dev\/vg_rescue\/lv_data\n\nmount \/dev\/mapper\/vg_rescue-lv_data \/rescue01\/\n\ndf -h\n\nFilesystem                     Size  Used Avail Use% Mounted on\ndevtmpfs                        16G     0   16G   0% \/dev\ntmpfs                           16G     0   16G   0% \/dev\/shm\ntmpfs                           16G  8.6M   16G   1% \/run\ntmpfs                           16G     0   16G   0% \/sys\/fs\/cgroup\n\/dev\/mapper\/ol-root             44G  1.4G   43G   4% \/\n\/dev\/vda1                     1014M  184M  831M  19% \/boot\n\/dev\/mapper\/vg_data-lv_data     79G  127M   75G   1% \/data01\ntmpfs                          3.2G     0  3.2G   0% \/run\/user\/0\n\/dev\/mapper\/vg_rescue-lv_data   79G  144M   75G   1% \/rescue01<\/code><\/pre>\n\n\n\n<p>&#8220;Restored&#8221; data is now available and I can now compare with my live data vdisk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-putting-back-files-from-old-vdisk-version\">Putting back files from old vdisk version<\/h2>\n\n\n\n<p>Let&#8217;s copy back the files missing on my \/data01 filesystem:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd  \/data01\nls -lrt | head\ntotal 71596\ndrwx------. 2 root root 16384 Oct  5 09:30 lost+found\n-rw-r--r--. 1 root root 10930 Oct  5 10:03 dummyfile_1000.dmf\n-rw-r--r--. 1 root root 11321 Oct  5 10:03 dummyfile_1001.dmf\n-rw-r--r--. 1 root root 32045 Oct  5 10:03 dummyfile_1002.dmf\n-rw-r--r--. 1 root root 27619 Oct  5 10:03 dummyfile_1003.dmf\n-rw-r--r--. 1 root root  9086 Oct  5 10:03 dummyfile_1004.dmf\n-rw-r--r--. 1 root root 31690 Oct  5 10:03 dummyfile_1005.dmf\n-rw-r--r--. 1 root root 23343 Oct  5 10:03 dummyfile_1006.dmf\n-rw-r--r--. 1 root root  3594 Oct  5 10:03 dummyfile_1007.dmf\n\ncd \/rescue01\nls -lrt | head\ntotal 89860\ndrwx------. 2 root root 16384 Oct  5 09:30 lost+found\n-rw-r--r--. 1 root root 15781 Oct  5 10:03 dummyfile_0001.dmf\n-rw-r--r--. 1 root root 14976 Oct  5 10:03 dummyfile_0002.dmf\n-rw-r--r--. 1 root root 22209 Oct  5 10:03 dummyfile_0003.dmf\n-rw-r--r--. 1 root root 20250 Oct  5 10:03 dummyfile_0005.dmf\n-rw-r--r--. 1 root root 21634 Oct  5 10:03 dummyfile_0004.dmf\n-rw-r--r--. 1 root root  2424 Oct  5 10:03 dummyfile_0006.dmf\n-rw-r--r--. 1 root root 23033 Oct  5 10:03 dummyfile_0007.dmf\n-rw-r--r--. 1 root root 11018 Oct  5 10:03 dummyfile_0008.dmf\n\ncp \/rescue01\/dummyfile_0*.dmf \/data01\/\n\ncd  \/data01\nls -lrt dummyfile_0*.dmf | head\n-rw-r--r--. 1 root root 15781 Oct  5 11:36 dummyfile_0001.dmf\n-rw-r--r--. 1 root root 14976 Oct  5 11:36 dummyfile_0002.dmf\n-rw-r--r--. 1 root root 22209 Oct  5 11:36 dummyfile_0003.dmf\n-rw-r--r--. 1 root root 21634 Oct  5 11:36 dummyfile_0004.dmf\n-rw-r--r--. 1 root root 20250 Oct  5 11:36 dummyfile_0005.dmf\n-rw-r--r--. 1 root root  2424 Oct  5 11:36 dummyfile_0006.dmf\n-rw-r--r--. 1 root root 23033 Oct  5 11:36 dummyfile_0007.dmf\n-rw-r--r--. 1 root root 11018 Oct  5 11:36 dummyfile_0008.dmf\n-rw-r--r--. 1 root root 27026 Oct  5 11:36 dummyfile_0009.dmf\n-rw-r--r--. 1 root root 17601 Oct  5 11:36 dummyfile_0010.dmf<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-remove-the-restored-vdisk\">Remove the restored vdisk<\/h2>\n\n\n\n<p>I don&#8217;t need the old data disk anymore on the VM:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>umount \/rescue01\nrmdir \/rescue01\/\n\nvgchange -a n vg_rescue\n<\/code><\/pre>\n\n\n\n<p>Back to the ODA, let&#8217;s remove the vdisk from the VM (with &#8220;live&#8221; option):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli modify-vm -n dbivm1 -dvd dbivm1-data-20231005-1611 --live\n\nodacli describe-job -i 38d8a632-0a4d-46c4-88dd-f2abcd26835a\n\nJob details\n----------------------------------------------------------------\n                     ID:  38d8a632-0a4d-46c4-88dd-f2abcd26835a\n            Description:  VM dbivm1 modification\n                 Status:  Success\n                Created:  October 5, 2023 5:37:08 PM CEST\n                Message:\n\nTask Name                                Start Time                          End Time                            Status\n---------------------------------------- ----------------------------------- ----------------------------------- ----------\nValidate dependency resources            October 5, 2023 5:37:08 PM CEST     October 5, 2023 5:37:08 PM CEST     Success\nDefine VM locally                        October 5, 2023 5:37:08 PM CEST     October 5, 2023 5:37:08 PM CEST     Success\nValidate vDisk detachment pre-reqs       October 5, 2023 5:37:08 PM CEST     October 5, 2023 5:37:08 PM CEST     Success\nDetach vDisks                            October 5, 2023 5:37:08 PM CEST     October 5, 2023 5:37:09 PM CEST     Success\nEdit VM CRS Configuration                October 5, 2023 5:37:09 PM CEST     October 5, 2023 5:37:09 PM CEST     Success\nSave domain in ACFS                      October 5, 2023 5:37:09 PM CEST     October 5, 2023 5:37:09 PM CEST     Success\nModify VM metadata                       October 5, 2023 5:37:09 PM CEST     October 5, 2023 5:37:09 PM CEST     Success\nPersist metadata                         October 5, 2023 5:37:09 PM CEST     October 5, 2023 5:37:09 PM CEST     Success<\/code><\/pre>\n\n\n\n<p>That&#8217;s it, my VM is now back to its original configuration with only one data vdisk.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-clean-up-the-old-vdisk-clones\">Clean up the old vdisk clones<\/h2>\n\n\n\n<p>Removing a vdisk clone is quite easy:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>odacli list-vdisks\n\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:11:56 CEST  2023-10-05 16:11:56 CEST\n-20231005-1611\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:26:24 CEST  2023-10-05 16:26:24 CEST\n-20231005-1626\n\n\nodacli delete-vdisk -n dbivm1-data-20231005-1611\n\nsleep 30 ; odacli list-vdisks\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 16:26:24 CEST  2023-10-05 16:26:24 CEST\n-20231005-1626\n\n\nodacli delete-vdisk -n dbivm1-data-20231005-1626\n\nsleep 30 ; odacli list-vdisks\n\nName                  VM storage            Size        Shared      Sparse      Created                   Updated\n--------------------  --------------------  ----------  ----------  ----------  ------------------------  ------------------------\ndbivm1-data           VMsDATA               100.00 GB   NO          NO          2023-10-05 11:33:22 CEST  2023-10-05 11:33:22 CEST\n\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2>\n\n\n\n<p>This is a smart solution for this kind of need. The only cost is the ODA storage, and everyone know that it&#8217;s quite expensive. But cloning the vdisk is lightning fast on ODA, so VM downtime is limited to the minimum.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Oracle Database Appliance now includes a powerful virtualisation layer based on KVM and fully integrated with odacli. For sure, an ODA is mostly dedicated to Oracle databases, but you can also benefit from unused cores to run application VMs in the same box as your databases. And it works like a charm. One of [&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":[42,59],"tags":[],"type_dbi":[],"class_list":["post-28467","post","type-post","status-publish","format-standard","hentry","category-operating-systems","category-oracle"],"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>Vdisk backup on ODA - 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\/vdisk-backup-on-oda\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Vdisk backup on ODA\" \/>\n<meta property=\"og:description\" content=\"Introduction Oracle Database Appliance now includes a powerful virtualisation layer based on KVM and fully integrated with odacli. For sure, an ODA is mostly dedicated to Oracle databases, but you can also benefit from unused cores to run application VMs in the same box as your databases. And it works like a charm. One of [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-06T09:30:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-06T09:40:34+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=\"3 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\/vdisk-backup-on-oda\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\"},\"author\":{\"name\":\"J\u00e9r\u00f4me Dubar\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd\"},\"headline\":\"Vdisk backup on ODA\",\"datePublished\":\"2023-10-06T09:30:27+00:00\",\"dateModified\":\"2023-10-06T09:40:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\"},\"wordCount\":685,\"commentCount\":0,\"articleSection\":[\"Operating systems\",\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\",\"name\":\"Vdisk backup on ODA - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2023-10-06T09:30:27+00:00\",\"dateModified\":\"2023-10-06T09:40:34+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Vdisk backup on ODA\"}]},{\"@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":"Vdisk backup on ODA - 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\/vdisk-backup-on-oda\/","og_locale":"en_US","og_type":"article","og_title":"Vdisk backup on ODA","og_description":"Introduction Oracle Database Appliance now includes a powerful virtualisation layer based on KVM and fully integrated with odacli. For sure, an ODA is mostly dedicated to Oracle databases, but you can also benefit from unused cores to run application VMs in the same box as your databases. And it works like a charm. One of [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/","og_site_name":"dbi Blog","article_published_time":"2023-10-06T09:30:27+00:00","article_modified_time":"2023-10-06T09:40:34+00:00","author":"J\u00e9r\u00f4me Dubar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"J\u00e9r\u00f4me Dubar","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/"},"author":{"name":"J\u00e9r\u00f4me Dubar","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd"},"headline":"Vdisk backup on ODA","datePublished":"2023-10-06T09:30:27+00:00","dateModified":"2023-10-06T09:40:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/"},"wordCount":685,"commentCount":0,"articleSection":["Operating systems","Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/","url":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/","name":"Vdisk backup on ODA - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2023-10-06T09:30:27+00:00","dateModified":"2023-10-06T09:40:34+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0fb4bbf128b4cda2f96d662dec2baedd"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/vdisk-backup-on-oda\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Vdisk backup on ODA"}]},{"@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\/28467","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=28467"}],"version-history":[{"count":5,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/28467\/revisions"}],"predecessor-version":[{"id":28472,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/28467\/revisions\/28472"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=28467"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=28467"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=28467"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=28467"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}