An IBM Domino will include databases that are backed up by the IBM Domino iDataAgents:
- Notes Database
- Notes Document
The IBM Domino iDataAgents provide backup and restore support for different kinds of data in what is often a mixed network environment.
The Notes Database iDataAgent is designed to be used as a disaster recovery tool. Use this iDataAgent if your primary goal is full database recovery in the event of a database or system crash rather than small day-to-day restore jobs. All versions of a database can be restored in the event that a restore of the database in a specific state is needed. Notes agent style database backup uses the Notes backup API to perform a "hot" backup of the Notes databases (including mail files) while the server is running. This results in a full database backup (and not a document level backup).
The Notes Document iDataAgent is designed to protect individual documents of a database. These might be data or design documents. Use the Notes Document iDataAgent if your primary goal is partial database recovery. This capability enables you to:
- Perform small restore jobs in the course of day-to-day database use (e.g., retrieve data accidentally deleted by a user).
- Restore part of a database (i.e., a subset of documents). This can be especially useful when you need to bring part of a large database online as quickly as possible after a system failure.
If you have both iDataAgents installed, you can back up Notes data using both of them.
For example, you may want to run hourly backups of your documents using the Notes Document iDataAgent. This way, you can restore any individual documents on the server to within one hour of failure. At the same time, you may want to schedule weekly full backups of your IBM Domino using the Notes Database iDataAgent, with daily incremental and transaction log backups in between. This way you can recover efficiently in the event of a server failure. Although your documents are backed up by both iDataAgents, the backups are created differently and serve different purposes.
You cannot back up data with one IBM Domino iDataAgent and restore it with the other. For example, you cannot back up a Notes database with the Notes Database iDataAgent and restore it with the Notes Document iDataAgent.
Full Range of Backup Options
The IBM Domino iDataAgent provides the flexibility to backup the database or individual mailboxes. You can perform a full or incremental backup of the entire instance, individual databases or mailboxes, and the transaction logs at any point of time.
You can backup both the system and user-defined databases. You can comprehensively backup all the databases in an instance or schedule backups for the individual databases. You can also auto-discover new databases to comprehensively manage the backup of all databases in your environment.
Transaction Log Backups
Transaction log backups captures the transaction log whether the transaction was committed or not. The use of transaction log backups make point in time recovery possible. You can restore to any point in time within the transaction log.
You can view and verify the status of IBM Domino backup and recovery operations from the Job Controller and Event Viewer windows within the CommCell Console. You can also track the status of the jobs using Reports, which can be saved and easily distributed. Reports can be generated for different aspects of data management. You also have the flexibility to customize the reports to display only the required data and save them to any specified location in different formats. For example, you can create a backup job summary report to view at-a-glance the completed backup jobs.
In addition, you can also schedule these reports to be generated and send them on email without user intervention.
In the event that a MediaAgent used for the backup or recovery operation fails, it is automatically resumed on alternate MediaAgents. In such cases, the backup or restore job will not restart from the beginning, but will resume from the point of failure. This is especially useful for backups and restores on large databases.
In the event, that a network goes down, the backup and recovery jobs are resumed on alternate data paths. Similarly, in the event of a device failure, the jobs are automatically switched to alternate disk and tape drives.
An IBM Domino can be set up and organized in a number of ways. It is important to understand this organization to create an effective archive plan.
The following sections describe the main components that comprise a typical IBM Domino.
A Notes partition is an instance of IBM Domino running on a given computer. IBM Domino may be installed multiple times on the same computer, each instance, or partition, acting as an individual server. For example, computer A is running a simple Notes database. Computer A also hosts a Domino web server database. The Domino administrator can add this data to the existing Domino partition, or install another partition of Domino Server for this new database. Installing a new partition would allow the administrator to tune the performance characteristics of each partition individually while offering a simpler organizational scheme.
Notes Data Paths
Each partition of the IBM Domino will have a data path pointing to the location of the database files, typically the notes.ini file. Databases existing outside of the data path can be linked to the primary data path.
Notes Links and Link files
A Notes link is a pointer to a database outside of the data path for a given partition. A Notes link file is a text file that contains the path or paths of those databases. There are two types of Notes link files, database link files and folder link files. A database link is a .nsf file containing the path of a single database. A folder link is a .dir file containing a path or paths to multiple databases.
Design elements are templates, forms and other non-data documents stored within a Notes database. Data documents (see below) may be dependant upon specific design elements. A design element, also referred to as a design document, is considered in its entirety. Design elements are restored as one complete unit.
Data documents are the primary data storage component within Notes. They are comparable to records in other database programs. Each data document contains several data objects, including but not limited to, user input, mail messages and other data.
Domino Server Transaction Logs
A transaction log is a file containing a record of changes to all databases on a Domino Server partition. It is used to:
- Recover a server partition upon a restart
- Bring a database up-to-date during a restore job.
IBM Domino offers many styles of transaction logging:
Archive, Circular and Linear styles cause the server to write all database transactions into a single transaction log. Archive style is recommended for use with the Notes Database iDataAgent.
Domino Server Transaction Logs (Archive Logging Style)
The Notes Database iDataAgent requires the enabling of archive style transaction logging for all Domino server partitions in order to maintain incremental backups of logged databases. Databases for which transaction logging has not been enabled will not be backed up incrementally by the transaction log subclient, instead, non-logged databases are backed up by the subclient on which they reside.
The following information clarifies the relationships between the Domino server transaction logs, transaction log backups, and the reuse of transaction logs that backups can trigger:
All Notes databases share the same transaction log, which is divided into smaller files known as log extents. These files can be identified by their .txn extension and are always 64MB in size (fixed). In R5, you can specify a Maximum Log Size in increments of 64MB up to 4GB (64 extents) in Domino server configuration. The Maximum Log Size is managed through either reuse or pruning log extents that have been successfully backed up (archived). When a log extent reaches its full 64MB capacity, it is marked as available for archiving by the Domino server. Once the extent is backed up by the system (via an incremental backup of the Transaction Logs subclient), it is marked as archived and the empty log extent can thus be reused by the Domino server.
If all log extents are filled and no log extents have been archived, the Domino server will create additional log extents past the Maximum Log Size as long as there is disk space available. Once disk space has been filled, the Domino server will stop working.
Pruning of transaction logs only occurs if the Domino server has been stopped and restarted.
Log Reuse Example
Suppose the max log size is set to 256MB (4 log extents of 64MB each). Domino server will create 4 empty log extent files (numbered 0,1,2,3) when transaction logging is enabled for the first time. Over the time, Domino server will fill up log extents 0 - 3 and need to write another log extent. It notices that another log extent would exceed the max log size of 256MB and checks to see if there is any archived log extent that it can reuse (in this case, none). Thus, it has no recourse but to create a new 64MB log extent file. This continues as long as there is disk space available and no log extents have been archived. Eventually a Transaction Log backup starts and all full log extents are backed up and marked Archived. (For Domino 6 and higher, the active log extent will also be backed up but not be marked Archived.) When Domino server next needs to write another log it still notices that the log size exceeds the maximum, but in this case it finds that some log extents have been archived. It selects the first archived log extent (log extent #0) and rewrites over it. Keep in mind a Domino log reuse does not reduce the total log size.
Log Recovery Example
Suppose transaction log extents #3, #4, and #5 are needed for the recovery of a database. Log extents #4 and #5 are still on disk but log extent #3 is not there. The system searches backup data for the latest copy of the database before the specified browse time. The database is restored and the system requests the Domino server to play back any transactions up to the browse time. The Domino server determines that it needs log extent #3 and sends a request back to the system, which restores log extent #3 and gives control back to the Domino server. Transactions from log extent #3 are replayed and since log extents #4 and #5 are still on the disk, their transactions are replayed without requesting anything from the system. Transaction replay stops when the browse time is reached.
The Domino Server ID should not have an associated password. Having one assigned does not hinder future backups, but does prevent a complete unconditional overwrite of a database if you have not selected the option to share the password with Notes addins.
If the Domino Server ID has a password associated with it, you must enable the option on the ID called Don’t prompt for password from other Notes based programs (Share this user ID password with these Notes addins). This option can be found in the Domino Administrator, on the Configuration tab, under Tools/Certification/ID Properties for the SERVER ID file. A server restart is required after setting this option. In addition to this, the Domino Server ID must be running during the restore operation.