Usually when you are connected to a EMC Symmetrix array you will install the Solutions Enabler package on your system. Solutions Enabler is basically both a set of tools to help you manage your Symmetrix arrays, as well as an API. The Solutions Enabler basically creates a small database that displays what Symmetrix arrays are connected to the host you are running the software on, the so called SYMAPI database that you will find as a file on your system called “symapi_db.bin”.
Under a normal situation you will run a discover process to initially scan and fill the database with entries. To do that you can issue the command:
This will start the scan operation, and depending on the amount of arrays and the configuration on those arrays you can plan anywhere from just under a minute for a scan up to several minutes. Once the file has been created you could try opening the file and searching for strings inside of the file, and you will find a lot of information about devices, device paths, disk IDs and lot’s more.
Now, in some situations after your array configuration has changed, it is useful to refresh the database file. Under normal circumstances this should all be easily done and without any issues.
However, in some cases your database file might be facing problems, without manifestation in any obvious ways. I have seen cases where new devices would simply not show up. Other examples are error messages about disks that can not be reached because of access control list errors.
If you happen to have some erratic behavior on one of your hosts, you might want to try one thing before creating a service request in Powerlink. You might want to try creating a copy of your database, removing it and then performing a new discover. Some steps to help you do just that:
- Create a backup of your device and/or composite groups using the symdg/symcg commands.
- Rename your old symapi_db.bin to something else.
- Issue a “symcfg discover” to create a new symapi_db.bin
- Import your device and/or composite groups from the backup file(s) you created.
This won’t help you in all situations, but it helped me solve several cases were we were seeing erratic behavior on our hosts, and it might do the trick for you.
8 thoughts on “Shorts: Trouble with symapi_db.bin causing erratic behavior”
Excellent article, you mentioned create a backup of device and composite group. Where is this information stored ?. Is it stored in the same symapi_db.bin ?.
When you use the symcg or symdg command, you can use the “exportall” function and define where these files are stored. Note that these are just plain text files that you could create manually of you have the info, but exporting is just a bit simpler.
2 quick newbie questions:
if you copy the symapi_db.bin to another location but forget to backup the device and/or composite groups using the symdg/symcg commands then what happens.
When we issue a command like symcfg list, is it getting the data from the database.bin file residing on the host or is it getting from the array. Is there a way to force the system to bypass the symapi_db.bin file and get all the data from the array directly.
If you forget to backup the file, you can simply issue a command and it will repopulate the file with info from the array.
If you want to bypass the cache, some commands offer the -nocache parameter, or a similar option to immediately go to the array. Check the EMC Solutions Enabler Symmetrix CLI Command reference that you can get off of Powerlink for further info on each specific command. 🙂
when i ran a configuration change command on a mgmt station with symcli installed, I got his error “The remote connection is refused. The symapi server is probably not running”..Is this error was because symapi_db.bin file was busy with some other configuration change simultaneously?
No, this usually means that the the symapi service is not running. Check either your services under Windows to check if it’s running, or check if the symapi daemon is running on your linux/unix system.
Great article Bas. I am in the process of configuring the EMC Symmetrix adapter in vcops but having some issue with the EMC Solutions Enabler configuration. I am new to the SA, I followed the procedure from the adapter install guide and installed the SA on a standalone server. My question is how do I make the SA to communicate and discover the Symmetrix array? Do I need another component to be install on the same SA server?
Thanks for the compliment. 🙂
The answer is relatively simple, you need a management device, in order to be able to communicate with your storage system. Simplest would be to create a so called gatekeeper device, and allow access to it from your Solutions Enabler server. Once it’s visible there, you can perform a “symcfg discover” to find the symmetrix behind it, and just follow the steps in my other post to set up the adapter and the Solutions Enabler config.
If you have any trouble, just let me know. 🙂