content_image/681533.jpg
one flush for each commit. With group commit, InnoDB  issues a single write to the log file to perform the commit action for multiple user transactions that commit at about the same time, significantly improving throughput. 

## Redo Log Archiving 

Backup utilities that copy redo log records may sometimes fail to keep pace with redo log generation while a backup operation is in progress, resulting in lost redo log records due to those records being overwritten. This issue most often occurs when there is significant MySQL server activity during the backup operation, and the redo log file storage media operates at a faster speed than the backup storage media. The redo log archiving feature, introduced in MySQL 8.0.17, addresses this issue by sequentially writing redo log records to an archive file in addition to the redo log files. Backup utilities can copy redo log records from the archive file as necessary, thereby avoiding the potential loss of data. 

If redo log archiving is configured on the server, MySQL Enterprise Backup, available with the MySQL Enterprise Edition, uses the redo log archiving feature when backing up a MySQL server. 

Enabling redo log archiving on the server requires setting a value for the innodb_redo_log_archive_dirs  system variable. The value is specified as a semicolon-separated list of labeled redo log archive directories. The label:directory  pair is separated by a colon ( : ). For example: 

mysql> SET GLOBAL innodb_redo_log_archive_dirs=’ label1 : directory_path1 [; label2 : directory_path2 ;…]’; 

The label  is an arbitrary identifier for the archive directory. It can be any string of characters, with the exception of colons (:), which are not permitted. An empty label is also permitted, but the colon (:) is still required in this case. A directory_path  must be specified. The directory selected for the redo log archive file must exist when redo log archiving is activated, or an error is returned. The path can contain colons (’:’), but semicolons (;) are not permitted. 

The innodb_redo_log_archive_dirs  variable must be configured before the redo log archiving can be activated. The default value is NULL , which does not permit activating redo log archiving. 

<img src='content_image/681533.jpg'>

## Notes 

The archive directories that you specify must satisfy the following requirements. (The requirements are enforced when redo log archiving is activated.): 

•Directories must exist. Directories are not created by the redo log archive process. Otherwise, the following error is returned: 

ERROR 3844 (HY000): Redo log archive directory ’ directory_path1 ’ does not exist or is not a directory 

•Directories must not be world-accessible. This is to prevent the redo log data from being exposed to unauthorized users on the system. Otherwise, the following error is returned: 

ERROR 3846 (HY000): Redo log archive directory ’ directory_path1 ’ is accessible to all OS users 

•Directories cannot be those defined by datadir , innodb_data_home_dir , innodb_directories , innodb_log_group_home_dir , innodb_temp_tablespaces_dir , innodb_tmpdir innodb_undo_directory , or secure_file_priv , nor can they be parent directories or subdirectories of those directories. Otherwise, an error similar to the following is returned: 

