Restore
Restore Procedure
Bacula Enterprise Amazon RDS Plugin offers four distinct restore modes:
Generate a new instance from a given snapshot (from the backup or from an arbitrary snapshot identifier).
Generate a new instance with a specific state using Point-In-Time Recovery.
Restore metadata or Apache Parquet exported data locally to the filesystem for subsequent processing.
Restore Apache Parquet information into a running MySQL or PostgreSQL database.
Depending on the desired result, the restore operation should be parametrized differently.
Restore Parameters
Amazon RDS Plugin is able to perform a raw restore to any local filesystem mounted over the host where the File Daemon
operates, or directly to the Amazon RDS environment. The restore method is selected determined by the value of the where
parameter at restore time:
Empty or ‘/’ (example:
where=/
) -> Amazon RDS restore will be triggeredAny other path for where (example:
where=/tmp
) -> Raw restore to the local file system will be triggered.
This principle generally applies to other Bacula plugins as well. Nevertheless, in
this specific plugin, it is advised against using the raw restore method by the File
Daemon. This recommendation stems from the fact that the raw restore method retains the headers generated during
the backup process in the volume disk files. If the intention is to restore the filesystem,
one can trigger an Amazon RDS restore using the where=/
parameter. It is important to also use
the restore variable to_local_path
and specify the desired destination. By
doing so, the mentioned headers will be automatically removed, resulting in a
disk image that is appropriate for any future purposes.
When using the Amazon RDS restore method, the following parameters are available to control the restore behavior within the “Plugin Options” menu during a BConsole restore session:
Option |
Required |
Default |
Values |
Example |
Description |
---|---|---|---|---|---|
instance_identifier |
No |
Generated from Restore job name |
String for the new instance or cluster that will be generated with the restore. Only a-zA-Z or ‘-’ characters are allowed |
MyRestoredInstance |
Set the identifier for a new restored database instance or cluster. If none is provided and the restore operation needs to create a new instance or cluster, the name will be generated from the restore job |
from_snapshot_id |
No |
Existing snapshot identifier in RDS service |
my-snap-2024-05-16-12-30 |
Set a snapshot identifier, existing in AWS to restore an instance or cluster directly from it. If not specified, the identifier will be get from the backup information |
|
instance_class |
No |
Original backup value |
Accepted instance type in Amazon RDS. Defined in: https://aws.amazon.com/rds/instance-types/ |
c7g.medium |
Set database instance class |
availability_zone |
No |
Original backup value |
String: availability zone existing in: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html |
us-east-1a |
Set the destination availability zone for the instance(s) and its/their volume(s) |
parameter_groups |
No |
Original backup value |
String: Name of the parameter group |
mygroup |
Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ‘,’) |
vpc_security_groups_ids |
No |
Original backup value |
String: Name of the security group id |
sg-03237oe4493e8ecd1 |
Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ‘,’) |
tags |
No |
List of key value strings: key1=value1, key2=value2 |
Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value…) |
||
multi_az |
No |
Original backup value |
0, no, No, false, FALSE, false, off ; 1, yes, Yes, TRUE, true, on |
yes |
Configure the restored database instance as Multi AZ |
db_port |
No |
Original backup value |
Integer |
2140 |
Set the database port |
storage_type |
No |
Original backup value |
Accepted volume type in Amazon EBS. Defined in: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html |
Set the instance storage type |
|
storage_throughput |
No |
Original backup value |
Positive integer |
Set the instance storage throughput |
|
iops |
No |
Original backup value |
Positive integer |
Iops value for instance storage |
|
pitr_from_instance_id |
No |
Original backup instances |
String representing an RDS existing instance |
Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore |
|
pitr_date |
No |
String representing a date with the format: yyyy-MM-dd HH:mm:ss |
Sets the date for Point in Time Recovery restore |
||
pitr_latest |
No |
No |
0, no, No, false, FALSE, false, off ; 1, yes, Yes, TRUE, true, on |
yes |
Run a Point in Time Recovery restore using the latest date available |
parquet_db_socket |
No |
Common default for each engine |
Path in the system to use a socket connection |
/var/path/myfile.socket |
Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database |
parquet_db_engine |
No |
postgresql |
mysql, postgresql |
Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database |
|
parquet_db_host |
No |
String representing a hostname or ip address |
mysql |
Set the host to connect and restore parquet data from the backup directly into a database |
|
parquet_db_name |
No |
String representing a database name |
customers |
Set the database name to connect and restore parquet data from the backup directly into a database |
|
parquet_db_port |
No |
Positive integer |
3000 |
Set the database port to connect and restore parquet data from the backup directly into a database |
|
parquet_db_user |
No |
String representing a database username |
john |
Set the database user to connect and restore parquet data from the backup directly into a database |
|
parquet_db_password |
No |
String rerpresenting a database password |
myPass123! |
Set the database password to connect and restore parquet data from the backup directly into a database |
|
parquet_save_mode |
No |
Append |
Append, Overwrite, ErrorIfExists or Ignore |
Overwrite |
Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore |
access_key |
No |
Original backup value |
String |
AKIAIOSFODNN7EXAMPLE |
Set a different access key to access to the destination |
secret_key |
No |
Original backup value |
String |
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY |
Set a different secret key to access to the destination |
region |
No |
Original backup value |
String: region code existing in: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html |
us-east-2 |
Set the destination region |
debug |
No |
0 |
0, 1, 2 ,3, 4, 5, 6, 7, 8, 9 |
8 |
Change debug level |
Restore Use Cases
The following restore scenarios are supported, and steps to execute them are described:
Generate a new instance or cluster from a the snapshot that was taken during the selected backup
Run a restore session selecting appropriate backup jobs
Select all the contents of the backup
Use
Where=/
Generate a new instance or cluster from an arbitrary snapshot that is existing in Amazon RDS, and configure a specific new instance id:
Follow previously described ‘a’ scenario.
Set
instance_identifier
with the value of the desired new nameSet
from_snapshot_id
with the value of the desired previous snapshots
Restore an instance in Point-In-Time Recovery mode:
Follow previously described ‘a’ scenario
Before confirming the restore operation, set
pitr_from_instance_id
with the desired instance or cluster to use, or let the restore used the instance from the backup job selectedYou may want to run a
.query
command (parameter=instance) to check the last available restore time for your instanceSet
pitr_date
with the desired value, or setpitr_latest
to yes.
Restore an instance to Amazon RDS, but adjust any configuration parameter of it (advanced):
Follow previously described ‘a’, ‘b’ or ‘c’ scenarios.
Adjust any desired parameter from the following list:
instance_class
,availability_zone
,parameter_groups
,vpc_security_groups_ids
,tags
,multi_az
,db_port
,storage_type
,storage_throughput
,iops
Note that the configuration you set here will be applied as entered. Therefore, the consistency of that configuration will depend on all elements being correct (existing and consistent) at Amazon RDS side for your particular infrastructure
Restore an instance to Amazon RDS, but to a different location:
Follow previously described ‘a’, ‘b’, ‘c’ or ‘d’ scenarios.
Adjust
region
,access_key
,secret_key
with the destination values
Restore instance Apache Parquet files to a running database in the File Daemon host:
Follow previously described ‘a’ scenario.
Adjust database connection with ‘parquet_xxx’ parameters
By default, if no host is established, a socket connection will be attempted. If a host is specified, the connection will use TCP/IP
Pay attention to the
parquet_save_mode
, which will allow you to control how the restore should behave in terms of finding previous values in your database
Restore instance files or volume files to a local directory:
Run a restore session selecting appropriate backup jobs
Select the desired files (or all of them) inside a given
i-xxxxxxx/
folderUse
Where=/
Adjust
to_local_path
to the desired path
Restore Example Session
Note
It is also possible to run backup or restore operations from any of the Bacula Graphical User Interfaces.
restore jobid=1 Client=127.0.0.1-fd where="/"
Using Catalog "MyCatalog"
You have selected the following JobId: 1
Building directory tree for JobId(s) 1 ...
41 files inserted into the tree.
You are now entering file selection mode where you add (mark) and
remove (unmark) files to be restored. No files are initially added, unless
you used the "all" keyword on the command line.
Enter "done" to leave this mode.
cwd is: /
$ cd "/@amazon_rds/"
Invalid path given.
cwd is: /
$ dir
---------- 0 root root 0 1970-01-01 01:00:00 /@amazon-rds/
$ estimate
41 total files; 0 marked to be restored; 0 bytes.
$ mark *
41 files marked.
$ done
Bootstrap records written to /tmp/regress/working/127.0.0.1-dir.restore.3.bsr
The Job will require the following (*=>InChanger):
Volume(s) Storage(s) SD Device(s)
===========================================================================
TEST-2024-06-06:0 File FileStorage
Volumes marked with "*" are in the Autochanger.
41 files selected to be restored.
Using Catalog "MyCatalog"
Run Restore job
JobName: RestoreFiles
Bootstrap: /tmp/regress/working/127.0.0.1-dir.restore.3.bsr
Where: /
Replace: Always
FileSet: Full Set
Backup Client: 127.0.0.1-fd
Restore Client: 127.0.0.1-fd
Storage: File
When: 2024-06-06 14:39:13
Catalog: MyCatalog
Priority: 10
Plugin Options: *None*
OK to run? (Yes/mod/no): mod
Parameters to modify:
1: Level
2: Storage
3: Job
4: FileSet
5: Restore Client
6: When
7: Priority
8: Bootstrap
9: Where
10: File Relocation
11: Replace
12: JobId
13: Plugin Options
Select parameter to modify (1-13): 13
Automatically selected : amazon-rds: region="us-east-1" access_key="AKIAQVXBC4DM4VRBK4XL" secret_key="hqvQac/ZikF6+E9AGDOwGjWPMyrz0K6zAC1eQ9KL" instances="jg-pg-aws" start_instances=yes snapshots_retention=2 export_bucket=j-bacula-rds export_role=arn:aws:iam::046642946265:role/service-role/rds-export-role export_key=73ed9600-749e-47b5-93f0-6761f0ac9734 export_delete=yes debug=6
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: *None* (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: *None* (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: *None* (*none*)
parquet_db_password: *None* (*none*)
parquet_save_mode: *None* (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): mod
You have the following choices:
1: instance_identifier (Set the identifier for a new restored database instance or cluster)
2: from_snapshot_id (Set a snapshot identifier, exisiting in AWS to restore an instance or cluster directly from it)
3: instance_class (Set database instance class)
4: availability_zone (Set the destination availability zone for the instance(s) and its/their volume(s))
5: parameter_groups (Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ','))
6: vpc_security_groups_ids (Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ','))
7: tags (Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value...))
8: multi_az (Configure the restored database instance as Multi AZ)
9: db_port (Set the database port)
10: storage_type (Set the instance storage type)
11: storage_throughput (Set the instance storage throughput)
12: iops (Iops value for instance storage)
13: pitr_from_instance_id (Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore)
14: pitr_date (Sets the date for Point in Time Recovery restore)
15: pitr_latest (Run a Point in Time Recovery restore using the latest date available)
16: parquet_db_socket (Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database)
17: parquet_db_engine (Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database)
18: parquet_db_host (Set the host to connect and restore parquet data from the backup directly into a database)
19: parquet_db_name (Set the database name to connect and restore parquet data from the backup directly into a database)
20: parquet_db_port (Set the database port to connect and restore parquet data from the backup directly into a database)
21: parquet_db_user (Set the database user to connect and restore parquet data from the backup directly into a database)
22: parquet_db_password (Set the database password to connect and restore parquet data from the backup directly into a database)
23: parquet_save_mode (Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore)
24: access_key (Set a different access key to access to the destination)
25: secret_key (Set a different secret key to access to the destination)
26: region (Set the destination region)
27: debug (Change debug level)
Select parameter to modify (1-27): 17
Please enter a value for parquet_db_engine: mysql
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: mysql (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: *None* (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: *None* (*none*)
parquet_db_password: *None* (*none*)
parquet_save_mode: *None* (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): mod
You have the following choices:
1: instance_identifier (Set the identifier for a new restored database instance or cluster)
2: from_snapshot_id (Set a snapshot identifier, exisiting in AWS to restore an instance or cluster directly from it)
3: instance_class (Set database instance class)
4: availability_zone (Set the destination availability zone for the instance(s) and its/their volume(s))
5: parameter_groups (Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ','))
6: vpc_security_groups_ids (Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ','))
7: tags (Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value...))
8: multi_az (Configure the restored database instance as Multi AZ)
9: db_port (Set the database port)
10: storage_type (Set the instance storage type)
11: storage_throughput (Set the instance storage throughput)
12: iops (Iops value for instance storage)
13: pitr_from_instance_id (Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore)
14: pitr_date (Sets the date for Point in Time Recovery restore)
15: pitr_latest (Run a Point in Time Recovery restore using the latest date available)
16: parquet_db_socket (Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database)
17: parquet_db_engine (Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database)
18: parquet_db_host (Set the host to connect and restore parquet data from the backup directly into a database)
19: parquet_db_name (Set the database name to connect and restore parquet data from the backup directly into a database)
20: parquet_db_port (Set the database port to connect and restore parquet data from the backup directly into a database)
21: parquet_db_user (Set the database user to connect and restore parquet data from the backup directly into a database)
22: parquet_db_password (Set the database password to connect and restore parquet data from the backup directly into a database)
23: parquet_save_mode (Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore)
24: access_key (Set a different access key to access to the destination)
25: secret_key (Set a different secret key to access to the destination)
26: region (Set the destination region)
27: debug (Change debug level)
Select parameter to modify (1-27): 19
Please enter a value for parquet_db_name: test
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: mysql (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: test (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: *None* (*none*)
parquet_db_password: *None* (*none*)
parquet_save_mode: *None* (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): mod
You have the following choices:
1: instance_identifier (Set the identifier for a new restored database instance or cluster)
2: from_snapshot_id (Set a snapshot identifier, exisiting in AWS to restore an instance or cluster directly from it)
3: instance_class (Set database instance class)
4: availability_zone (Set the destination availability zone for the instance(s) and its/their volume(s))
5: parameter_groups (Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ','))
6: vpc_security_groups_ids (Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ','))
7: tags (Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value...))
8: multi_az (Configure the restored database instance as Multi AZ)
9: db_port (Set the database port)
10: storage_type (Set the instance storage type)
11: storage_throughput (Set the instance storage throughput)
12: iops (Iops value for instance storage)
13: pitr_from_instance_id (Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore)
14: pitr_date (Sets the date for Point in Time Recovery restore)
15: pitr_latest (Run a Point in Time Recovery restore using the latest date available)
16: parquet_db_socket (Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database)
17: parquet_db_engine (Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database)
18: parquet_db_host (Set the host to connect and restore parquet data from the backup directly into a database)
19: parquet_db_name (Set the database name to connect and restore parquet data from the backup directly into a database)
20: parquet_db_port (Set the database port to connect and restore parquet data from the backup directly into a database)
21: parquet_db_user (Set the database user to connect and restore parquet data from the backup directly into a database)
22: parquet_db_password (Set the database password to connect and restore parquet data from the backup directly into a database)
23: parquet_save_mode (Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore)
24: access_key (Set a different access key to access to the destination)
25: secret_key (Set a different secret key to access to the destination)
26: region (Set the destination region)
27: debug (Change debug level)
Select parameter to modify (1-27): 21
Please enter a value for parquet_db_user: root
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: mysql (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: test (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: root (*none*)
parquet_db_password: *None* (*none*)
parquet_save_mode: *None* (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): mod
You have the following choices:
1: instance_identifier (Set the identifier for a new restored database instance or cluster)
2: from_snapshot_id (Set a snapshot identifier, exisiting in AWS to restore an instance or cluster directly from it)
3: instance_class (Set database instance class)
4: availability_zone (Set the destination availability zone for the instance(s) and its/their volume(s))
5: parameter_groups (Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ','))
6: vpc_security_groups_ids (Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ','))
7: tags (Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value...))
8: multi_az (Configure the restored database instance as Multi AZ)
9: db_port (Set the database port)
10: storage_type (Set the instance storage type)
11: storage_throughput (Set the instance storage throughput)
12: iops (Iops value for instance storage)
13: pitr_from_instance_id (Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore)
14: pitr_date (Sets the date for Point in Time Recovery restore)
15: pitr_latest (Run a Point in Time Recovery restore using the latest date available)
16: parquet_db_socket (Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database)
17: parquet_db_engine (Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database)
18: parquet_db_host (Set the host to connect and restore parquet data from the backup directly into a database)
19: parquet_db_name (Set the database name to connect and restore parquet data from the backup directly into a database)
20: parquet_db_port (Set the database port to connect and restore parquet data from the backup directly into a database)
21: parquet_db_user (Set the database user to connect and restore parquet data from the backup directly into a database)
22: parquet_db_password (Set the database password to connect and restore parquet data from the backup directly into a database)
23: parquet_save_mode (Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore)
24: access_key (Set a different access key to access to the destination)
25: secret_key (Set a different secret key to access to the destination)
26: region (Set the destination region)
27: debug (Change debug level)
Select parameter to modify (1-27): 22
Please enter a value for parquet_db_password: root
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: mysql (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: test (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: root (*none*)
parquet_db_password: root (*none*)
parquet_save_mode: *None* (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): mod
You have the following choices:
1: instance_identifier (Set the identifier for a new restored database instance or cluster)
2: from_snapshot_id (Set a snapshot identifier, exisiting in AWS to restore an instance or cluster directly from it)
3: instance_class (Set database instance class)
4: availability_zone (Set the destination availability zone for the instance(s) and its/their volume(s))
5: parameter_groups (Set the name(s) of the parameter groups that will be applied to the restored database instance (separated by ','))
6: vpc_security_groups_ids (Set the id(s) of the VPC Security Groups that will be applied to the restored database instance (separated by ','))
7: tags (Set tags to the restored instance(s) (tag1key:tag1value,tag2key:tag2value...))
8: multi_az (Configure the restored database instance as Multi AZ)
9: db_port (Set the database port)
10: storage_type (Set the instance storage type)
11: storage_throughput (Set the instance storage throughput)
12: iops (Iops value for instance storage)
13: pitr_from_instance_id (Set the instance identifier that will reference the instance to be used to proceed with a Point In Time Recovery restore)
14: pitr_date (Sets the date for Point in Time Recovery restore)
15: pitr_latest (Run a Point in Time Recovery restore using the latest date available)
16: parquet_db_socket (Set the socket path to use a socket based connection to restore parquet data from the backup directly into a database)
17: parquet_db_engine (Set the engine (postgresql or mysql) to restore parquet data from the backup directly into a database)
18: parquet_db_host (Set the host to connect and restore parquet data from the backup directly into a database)
19: parquet_db_name (Set the database name to connect and restore parquet data from the backup directly into a database)
20: parquet_db_port (Set the database port to connect and restore parquet data from the backup directly into a database)
21: parquet_db_user (Set the database user to connect and restore parquet data from the backup directly into a database)
22: parquet_db_password (Set the database password to connect and restore parquet data from the backup directly into a database)
23: parquet_save_mode (Set the restore mode for a parquet restore: Append, Overwrite, ErrorIfExists or Ignore)
24: access_key (Set a different access key to access to the destination)
25: secret_key (Set a different secret key to access to the destination)
26: region (Set the destination region)
27: debug (Change debug level)
Select parameter to modify (1-27): 23
Please enter a value for parquet_save_mode: Overwrite
Plugin Restore Options
Option Current Value Default Value
instance_identifier: *None* (*none*)
from_snapshot_id: *None* (*none*)
instance_class: *None* (*none*)
availability_zone: *None* (*none*)
parameter_groups: *None* (*none*)
vpc_security_groups_ids: *None* (*none*)
tags: *None* (*none*)
multi_az: *None* (*none*)
db_port: *None* (*none*)
storage_type: *None* (*none*)
storage_throughput: *None* (*none*)
iops: *None* (*none*)
pitr_from_instance_id: *None* (*none*)
pitr_date: *None* (*none*)
pitr_latest: *None* (*none*)
parquet_db_socket: *None* (*none*)
parquet_db_engine: mysql (*none*)
parquet_db_host: *None* (*none*)
parquet_db_name: test (*none*)
parquet_db_port: *None* (*none*)
parquet_db_user: root (*none*)
parquet_db_password: root (*none*)
parquet_save_mode: Overwrite (*none*)
access_key: *None* (*none*)
secret_key: *None* (*none*)
region: *None* (*none*)
debug: *None* (*none*)
Use above plugin configuration? (Yes/mod/no): yes
Run Restore job
JobName: RestoreFiles
Bootstrap: /tmp/regress/working/127.0.0.1-dir.restore.3.bsr
Where: /
Replace: Always
FileSet: Full Set
Backup Client: 127.0.0.1-fd
Restore Client: 127.0.0.1-fd
Storage: File
When: 2024-06-06 14:39:13
Catalog: MyCatalog
Priority: 10
Plugin Options: User specified
OK to run? (Yes/mod/no): yes
Job queued. JobId=4
list joblog jobid=4
*list joblog jobid=4
| 127.0.0.1-dir JobId 4: Start Restore Job RestoreFiles.2024-06-06_14.39.14_13 |
| 127.0.0.1-dir JobId 4: Restoring files from JobId(s) 1 |
| 127.0.0.1-dir JobId 4: Connected to Storage "File" at 127.0.0.1:8103 with TLS |
| 127.0.0.1-dir JobId 4: Using Device "FileStorage" to read. |
| 127.0.0.1-dir JobId 4: Connected to Client "127.0.0.1-fd" at 127.0.0.1:8102 with TLS |
| 127.0.0.1-fd JobId 4: Connected to Storage at 127.0.0.1:8103 with TLS |
| 127.0.0.1-sd JobId 4: Ready to read from volume "TEST-2024-06-06:0" on File device "FileStorage" (/tmp/regress/tmp). |
| 127.0.0.1-sd JobId 4: Forward spacing Volume "TEST-2024-06-06:0" to addr=247 |
| 127.0.0.1-sd JobId 4: Elapsed time=00:00:01, Transfer rate=159.2 K Bytes/second |
| 127.0.0.1-fd JobId 4: amazon-rds: Plugin log of this job available in: /tmp/regress/working/amazon-rds/amazon-rds-debug-0.log |
| 127.0.0.1-fd JobId 4: amazon-rds: Jar Version: 1.0.0 |
| 127.0.0.1-fd JobId 4: amazon-rds: Starting backend restore process |
| 127.0.0.1-fd JobId 4: amazon-rds: No port provided. Using default port for mysql:3306 |
| 127.0.0.1-fd JobId 4: amazon-rds: Instance identifier was not set |
| 127.0.0.1-fd JobId 4: amazon-rds: From snapshot id was not set |
| 127.0.0.1-fd JobId 4: amazon-rds: Pitr latest : false |
| 127.0.0.1-fd JobId 4: amazon-rds: Pitr date was not set |
| 127.0.0.1-fd JobId 4: amazon-rds: Pitr from instance id was not set |
| 127.0.0.1-fd JobId 4: amazon-rds: Parquet DB Name: test |
| 127.0.0.1-fd JobId 4: amazon-rds: Parquet DB User: root |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:cdimages with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:cdimages restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:fileevents with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:fileevents restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:filemedia with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:filemedia restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:restoreobject with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:restoreobject restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:events with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:events restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:malwaremd5 with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:malwaremd5 restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:mediatype with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:mediatype restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:file with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:file restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:pool with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:pool restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:metaattachment with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:metaattachment restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:location with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:location restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:status with 28 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:status restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:counters with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:counters restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:storage with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:storage restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:unsavedfiles with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:unsavedfiles restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:path with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:path restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:client with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:client restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:jobmedia with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:jobmedia restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:basefiles with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:basefiles restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:tagclient with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:tagclient restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:log with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:log restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:malwaresha256 with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:malwaresha256 restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:tagobject with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:tagobject restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:snapshot with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:snapshot restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:object with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:object restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:tagjob with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:tagjob restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:tagmedia with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:tagmedia restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:device with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:device restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:jobhisto with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:jobhisto restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:pathhierarchy with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:pathhierarchy restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:media with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:media restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:pathvisibility with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:pathvisibility restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:job with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:job restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:fileset with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:fileset restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:metaemail with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:metaemail restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:locationlog with 0 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:locationlog restored |
| 127.0.0.1-fd JobId 4: amazon-rds: Restoring table:version with 1 records to database: test in mode:overwrite |
| 127.0.0.1-fd JobId 4: amazon-rds: Table:version restored |
| 127.0.0.1-fd JobId 4: amazon-rds: No more items to restore. Restore ended |
| 127.0.0.1-dir JobId 4: Bacula 127.0.0.1-dir 18.0.3 (22May24):
Build OS: x86_64-pc-linux-gnu ubuntu 22.04
JobId: 4
Job: RestoreFiles.2024-06-06_14.39.14_13
Restore Client: "127.0.0.1-fd" 18.0.3 (22May24) x86_64-pc-linux-gnu,ubuntu,22.04
Where: /
Replace: Always
Start time: 06-jun-2024 14:39:16
End time: 06-jun-2024 14:39:27
Elapsed time: 11 secs
Files Expected: 41
Files Restored: 41
Bytes Restored: 118,684 (118.6 KB)
Rate: 10.8 KB/s
FD Errors: 0
FD termination status: OK
SD termination status: OK
Termination: Restore OK |
| 127.0.0.1-dir JobId 4: Begin pruning Jobs older than 6 months . |
| 127.0.0.1-dir JobId 4: No Jobs found to prune. |
| 127.0.0.1-dir JobId 4: Begin pruning Files. |
| 127.0.0.1-dir JobId 4: No Files found to prune. |
| 127.0.0.1-dir JobId 4: End auto prune. |
Go back to: Operations.