I decided to write this because I ran into a space problem while trying to upgrade a HANA test system. Of course, it isn’t a certified appliance, but I had to move the data and log files to another mount point to free up enough space to complete the upgrade.
Moving data files to a different mount point is a common procedure for many databases, but typically isn’t an issue with HANA’s appliance model. HANA has a very specific hardware configuration with the persistent mount point being 4 times RAM. The introduction of the Tailored Datacenter Integration (TDI) may warrant this process a little more often. I’ve outlined the steps below to move the $(DIR_GLOBAL)/hdb/data and $(DIR_GLOBAL)/hdb/log directories to a different location.
MAKE BACKUP OF DATABASE BEFORE DOING ANYTHING.
Moving data files to a different mount point is a common procedure for many databases, but typically isn’t an issue with HANA’s appliance model. HANA has a very specific hardware configuration with the persistent mount point being 4 times RAM. The introduction of the Tailored Datacenter Integration (TDI) may warrant this process a little more often. I’ve outlined the steps below to move the $(DIR_GLOBAL)/hdb/data and $(DIR_GLOBAL)/hdb/log directories to a different location.
MAKE BACKUP OF DATABASE BEFORE DOING ANYTHING.
- Make new mount point
- Logon to appliance as root or sudo user
- Create new directory where data and log files will be stored
- Eg. mkdir /hanadata
- Mount the new drive, NFS mount or LUN at /hanadata. This is typically done in /etc/fstab, but I won’t go into details here
- Create data and log subdirectories under new mount point
- cd /hanadata
- mkdir data
- mkdir log
- Change ownership of new data dir to match ownership of /usr/sap/<SID>
- chown <sid>adm:sapgrp /<newmount> -R
- eg. chown anaadm:sapsys /hanadata/ -R
- Change location of persistence in Hana studio – HANA must be running
- Browse to global.ini>persistence>
- Update basepath_datavolumes to point to /<newmount>/data
- Update basepath_logvolumes to point to /<newmount>/log
- Stop HANA
- su - <sid>adm
- HDB stop
- Verify HANA services are stopped
- Copy files to new location
- I suggest to copy, instead of move, in case there are any problems. The original files can be removed/deleted after verifying HANA is up and running using the new file location.
- cp /usr/sap/<SID>/global/hdb/data/* /hanadata/data -rp
- cp /usr/sap/<SID>/global/hdb/log/* /hanadata/log –rp
- The r is recursive to include all sub-directories
- The p is preserve mode, to keep all permissions
- Start DB
Verify HANA starts and check nameserver trace file to verify HANA is using correct data and log files:
Troubleshooting
I ran into the issue below when I tried to start HANA the first time after copying the files. This occurred
because I didn’t use the –p switch in my copy command, so the files took the root permissions. I am including to show what will happen if <sid>adm doesn’t have write permissions to the data or log files.
- I easily fixed this issue by again running the below command
- chown <sid>adm:sapgrp /<newmount> -R
Source: scn.sap.com
No comments:
Post a Comment