Error: Unavailable Database

Abstract: This error means the InterBase Server you are tying to connect to is not running

The error "Unavailable Database" means that the InterBase server you are trying to connect to is not running. There are generally only two ways to resolve this problem. 1) Change the way you are connecting, 2)Start the server you are trying to connect to.

Most commonly this error occurs in RAD Studio because you are trying to connect to a different InterBase server than you expect. This is due to RAD Studio being configured to use the instance of InterBase it installed. You can read more about this here. As noted there, the most obvious solution is to this issue is to remove the InterBase and ib_protcol environment variable overrides and restart RAD Studio. Another solution is to manually specify the instance you wish to connect to. This will override the ib_protocol environment variable. To manually specify the instance you wish to connect to include it as part of the server name, For example, to connect to the default single instance install of InterBase on the same computer, provide a server name of localhost/gds_db. To connect to the InterBase instance that RAD Studio installs when it finds an instance of gds_db, provide a server name of localhost/rad_xe3.

If you need to start the InterBase Server, first select InterBase Server Manager from the InterBase group in the start menu:

Next, click the Start button:

If you try to start InterBase Developer edition and it fails, it may mean you have another instance of InterBase developer edition using the same license. For more information on this issue please see the RAD Studio Release Notes.

InterBase Developer edition refuses new connections 48 hours after starting, so if the server has been running for more than 48 hours you need to restart it.

If you run InterBase Server Manager and find the server is already running, yet you still get the error "Unavailable Database", here are other things to check:

  • Do you have an INTERBASE environment variable pointing to a different server or an invalid location?
  • Are you using the Multi-instance feature of InterBase and are tryung to connect to different instance. Note that when you are using single-instance, the label for InterBase server manager will say gds_db. The screen shot from above shows gds_xe_64, indicating it is using multi-instance.
  • Do you have an IB_PROTOCOL environment variable pointing to an invalid label name? Note that when IB_PROTOCOL is not set, the label is assumed to be GDS_DB.
  • Does the label you are trying to connect to exist in c:\windows\system32\drivers\etc\services and is the port associated with it correct? Note that port 3050 in the default port that InterBase uses.