Advantage Features for High Availability
Advantage Database Server has many features that provide high availability to end-users all while preserving our core ideals of low administration and ease of use. These features include Server-Side Aliases, Online Backup and Replication. Each of these features can be used to preserve data and allow for access to this data in the event of a catastrophic failure.
Server-Side Aliases Server-side aliases allow the developer or network administrator to define an alias for the data path on the server itself. Clients connect to this alias name instead of a data path. This provides two major benefits. First, it allows for greater security since the data path is hidden from the end-users and it no longer needs to be shared on the network. Second, it allows for data to be stored on a network location such as a file server or NAS device. Server-side aliases are configured using a configuration file called AdsServer.ini. this file must be placed in the error log path on the server. The server reads the [ServerAliases] section to determine the physical location of the data, see the example below.
Once the AdsServer.ini has been created and placed in the proper location the aliases can be used by clients. The client simply uses [server]\[alias] as the connection path. To connect to the NASData alias the client would use \\myServer\NASData\MyData as the connection path or data source.
Online Backup Advantage Online Backup works with both data dictionaries and free tables that can be accessed by the Advantage server. Online Backup creates a snapshot of the data and sends this snapshot to a specified location. This backup will be logically consistent and preserve all referential integrity whether the data is in use or closed. This allows backups to be performed anytime and more frequently without affecting users. Online Backups can be performed by using the following system procedures, sp_BackupDatabase or sp_BackupFreeTables. These procedures can be used to backup data to any server or device accessible from the Advantage server. Examples of each procedure are below. The NULL values are for BackupOptions and FreeTablePasswords. For more information on Backup and Restore Options, reference the Advantage Help files.
EXECUTE PROCEDURE sp_BackupDatabase(‘\\nas1\backup\myDatabase’, NULL) EXECUTE PROCEDURE sp_BackupFreeTables(‘\\myServer\NASData’, ‘*.adt’, (‘\\nas1\backup\myDatabase’, NULL, NULL)
These backups cannot be used directly and must be restored prior to use. The images can be restored using sp_RestoreDatabase or sp_RestoreFreeTables. Examples of each procedure are below. The NULL values are for BackupOptions and FreeTablePasswords. More information about Restoring an Advantage Backup are available in the help file.
EXECUTE PROCEDURE sp_RestoreDatabase(‘\\nas1\backup\myDatabase\db.add’, ‘password’, ‘\\myServer\NASData\db.add’, NULL) EXECUTE PROCEDURE sp_RestoreFreeTables(‘\\nas1\backup\myDatabase\db.add’, ‘\\myServer\NASData’, NULL, NULL)
Advantage also ships with a utility (adsbackup.exe) that can be used to configure online backups. Reference the Advantage help files for details on its usage.
Replication Replication is a powerful mechanism for copying data in real-time to another server. Advantage uses a push mechanism to send changes to another server. The server pushing the changes is the publisher and the servers receiving the changes are subscribers. This can ensure that an up-to-date copy of the data is preserved on the subscribers. If the primary server goes down, the subscriber can be used as the primary server. This solution requires some initial configuration to ensure that the data is identical before starting replication. Changes would not be allowed until replication has been completely configured. Changes to the database on the subscriber would only be allowed through replication to ensure the data remains identical to the data on the publisher. Once everything is properly configured, the subscriber could be used as the primary server in the case of a server failure. Clients would have to change their connection path to point to the backup server if the primary server fails. Implementation of this type of solution provides high availability at a very low cost.
Conclusion Advantage has many features which can be used to provide high availability and data security to your application. Implementation of these features is relatively simple; however, any high availability solution takes careful planning and implementation.