ApexSQL Backup application components
ApexSQL Backup is a powerful tool used for managing SQL Server database backup and restore jobs across multiple servers. The application consists of three main components:
- User interface – This is the main part of the application, that allows the user to create, schedule and execute various backup and restore jobs. The user interface is also used for job monitoring. One user interface is needed for the application to function properly, but should the need arise, more can be installed on multiple machines
- Central Repository Database – This is the database that is created on the specified instance of SQL Server. Its main purpose is to store the information that is necessary for communication between user interface and one or more agent services. Schedule information, various backup and restore jobs are stored in the Central repository database. In it are also login credentials for the managed servers stored, in encrypted form, to avoid repetitive logging in to every server which is added to the application upon application startup. One central repository database is needed to manage any number of servers
- ApexSQL Backup Agent Service – This is a windows service that allows auditing of SQL Server instances. Not to be confused with SQL Server Agent. ApexSQL Backup Agent needs to be installed on the machine where the user interface is installed
All of the components need to be installed properly in order for the application to work as intended. Depending on user’s needs and environment, there could be multiple setup scenarios. The entire setup can be installed on the local machine, and used as such, with no components needed on the server side
Installation of ApexSQL Backup user interface
To install ApexSQL Backup user interface on a local machine, perform the following steps:
- Download the installer for the latest version here
- Run the downloaded .exe file to start the installation process
Quick tip:
When running the ApexSQL Backup installation, be sure to use Windows user account with administrative privileges and has full permissions over the ProgramData folder. Usually, full permissions over ProgramData folder are enabled by default for most users, however, this mostly depends on system security settings. For more info, check the FAQ section of the article
- Select the Install ApexSQL Backup radio button, and read the End User License Agreement. By clicking on Next you agree to the End User License Agreement and start the installation of the ApexSQL Backup user interface
- Choose the installation path for ApexSQL Backup, optionally select check the box to create a Desktop icon and click Install. The installation process should be completed in a couple of moments
- Close the installation wizard when done. The installation of the user interface component is complete
Installation of ApexSQL Backup central repository database and ApexSQL Backup Agent upon first application startup
When first starting the application, it will prompt the user to install the ApexSQL Backup central repository database and afterwards, ApexSQL Backup agent
- Running the application for the first time will automatically start the installation wizard for the central repository database. The SQL Server instance that will host the central repository database needs to be selected. Choose the SQL Server instance, authentication type, and SQL Server login, if SQL Server authentication is selected, for the respective server. The login that is used for this purpose must have sysadmin privileges for the SQL Server instance.
Quick tip:
Both Windows and SQL Server authentication can be used when establishing the central repository database connection. However, it is strongly recommended to use SQL Server authentication for this purpose. This way, it will be possible to access the central repository, and manage backup jobs even from the computers that are outside of the domain (from the home computer for example)
- Click OK to finish the installation of central repository database. From now on, the entered credentials will be used automatically by the application and ApexSQL Backup agent to connect to the central repository database
- After the installation of the central repository database, the ApexSQL Backup agent installation wizard will start. Select the account to be used in the dropdown menu. For the purpose of this article, User will be used, and in the text boxes below, appropriate username with domain name and password are entered. Click OK to complete the installation of the ApexSQL Backup agent
- Should there come a need to change the login that is used to access the central repository database, click on the Central repository button in Configuration tab, and enter credentials for another login (the new login must be defined on SQL Server, and must have sysadmin privileges for respective server).
ApexSQL Backup Agent manual installation
- ApexSQL Backup Agent can alternatively be installed even before ApexSQL Backup is started. That can be done by double clicking on the installation file used to install the ApexSQL Backup user interface and then selecting the Install ApexSQL Backup Agent radio button
- Pressing the Next button opens the installation wizard for the ApexSQL Backup Agent
- Once there, click on Next, and in the following page, enter the account to be used, domain name, username and password
- Clicking on Next advances to the next page where the location for the ApexSQL Backup agent installation should be specified. Default location can be used, as well as custom, which can be defined by manually entering the location or browsing to it using the ellipsis button (…). Clicking on the Install button starts the installation of ApexSQL Backup agent
- After the installation wizard completed, press Close to finish the installation of ApexSQL Backup wizard
Troubleshooting
There are several problems that might occur due to improper installation, or inadequate permission settings:
- Problem: A red X is displayed on the icon for SQL server instance when trying to connect to a remote server
This problem usually occurs when the communication between the components does not function properly. There are multiple solutions for this problem, depending on the circumstances
Solution 1: The ApexSQL Backup Agent service is not running. It did not start properly after the reboot, or it stopped running for some other reason. To fix this, go to Control Panel/Administrative Tools/Local Services, and locate ApexSQL Backup Agent Service. Check the status of the service, and make sure it is set to started (click on Start the service). To prevent this from happening in the future, set the startup type of the service to Automatic. If the ApexSQL Backup Agent Service is not on the list, install it again. As soon as the agent service is running, click the refresh button, and the SQL Server instance(s) should be available again
Solution 2: The ApexSQL Backup Agent service is running, and has the automatic startup type set, but the problem still occurs. In this case, the account that is running the ApexSQL Backup Agent Service does not have full permissions over ProgramData folder. Go to Control Panel/Administrative Tools/Local Services, locate the agent service, and check the account that is running the service. Change the permissions over ProgramData folder for this account (see FAQ for the instructions), or select another account that has full permissions over ProgramData folder. Restart the agent service to save the changes
Solution 3: This error could also occur when trying to connect with the agents on the remote servers, and Windows authentication is used for the central repository connection on the local server. This way, agents that are running under different accounts on remote servers try to connect with the central repository using these same (remote server) Windows accounts
The best way to solve this problem is to use SQL Server authentication type when setting the connection to central repository. Just make sure that the SQL Server login that is used for this purpose has sysadmin privileges on the SQL Server instance that is hosting the central repository database. To do this, see the step 3 in “Installation of central repository database” chapter
- Problem: Getting the error “Sysadmin credentials required” when trying to install Central repository database
Solution: Username and password that are provided belong to the SQL Server login that does not own Sysadmin credentials. In order to install central repository database, the login with sysadmin permissions must be used. Either grant sysadmin permissions to the respective login, or choose another login that owns the required permissions
FAQ
Q: How do I set permissions for the ProgramData folder for a certain account?
A: To check the permissions for an account to be able to access ProgramData folder, follow the steps:
- Navigate to root of the system drive (C: in most cases), open Organize tab, choose Folder Options, and select view tab
- Make sure to enable option “View hidden files”, and to disable option “Hide protected operating system files” as shown on the picture. ProgramData is a hidden folder by default, and cannot be edited unless these options are set
- ProgramData folder in the root of the system drive should now be visible. Right click on ProgramData folder/Properties, and open Security tab
- Make sure that the account has all listed permissions, as shown on the picture. If account is not listed under Group or user names, click Add… to add it to the list. Specify permissions for the added account
- Enter the ProgramData folder, locate ApexSQL folder, and check properties for it
- Check the permissions for the accounts, the same way as in the step 4
- When done, restore the Views options in Folder options
Q: I installed ApexSQL Backup application and central repository database on the server in my office. I need to maintain the company’s servers frequently using the backup application, but I am often out of the office. Can I manage the backup jobs from a home computer or laptop?
A: Yes, you can. You need to install the ApexSQL Backup application to your home computer, and link it with central repository database in your office. To do so, click on Central repository button from Configurations group, choose the server that hosts the central repository, and provide the credentials of any login that has sysadmin privileges on the SQL Server in your office. Since your home and your office computer do not belong to the same domain (most likely), it would be best to use SQL Server authentication type for the login that is used to access the central repository database. However, it is not possible for two users to send the information to the agent services at the same time – only one user interface can be used at any given time
Q: Do I have to install the central repository database on a local machine?
A: No. Central repository database can be installed on the remote server. However, the ApexSQL Backup user interface has to be connected to the central repository in order to be able to manage any of the SQL Servers
Q: I cannot find the answer for my problem in this article. What should I do?
A: You can always contact ApexSQL tech support by sending the email on support@apexsql.com, and we will solve the problem as soon as possible