Cloud Spanner Client - Class Backup (1.59.0)

Reference documentation and code samples for the Cloud Spanner Client class Backup.

Represents a Cloud Spanner Backup.

Example:

use Google\Cloud\Spanner\SpannerClient;

$spanner = new SpannerClient();

$backup = $spanner->instance('my-instance')->backup('my-backup');

Methods

__construct

Create an object representing a Backup.

Parameters
NameDescription
connection Google\Cloud\Spanner\Connection\ConnectionInterface

The connection to the Cloud Spanner Admin API.

instance Google\Cloud\Spanner\Instance

The instance in which the backup exists.

lroConnection Google\Cloud\Core\LongRunning\LongRunningConnectionInterface

An implementation mapping to methods which handle LRO resolution in the service.

lroCallables array
projectId string

The project ID.

name string

The backup name or ID.

info array

[optional] An array representing the backup resource.

create

Create a Cloud Spanner backup for a database.

Example:

$operation = $backup->create('my-database', new \DateTime('+7 hours'));
Parameters
NameDescription
database string

The name or id of the database that this backup is for.

expireTime DateTimeInterface

​The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days. Once the expireTime has passed, the backup is eligible to be automatically deleted by Cloud Spanner.

options array

Configuration Options.

↳ versionTime DateTimeInterface

The version time for the externally consistent copy of the database. If not present, it will be the same as the create time of the backup.

Returns
TypeDescription
Google\Cloud\Core\LongRunning\LongRunningOperation<\google\cloud\spanner\backup>

createCopy

Create a copy of an existing backup in Cloud Spanner.

Example:

$sourceInstance = $spanner->instance('source-instance-id');
$destInstance = $spanner->instance('destination-instance-id');
$sourceBackup = $sourceInstance->backup('source-backup-id');
$destBackup = $destInstance->backup('new-backup-id');

$operation = $sourceBackup->createCopy($destBackup, new \DateTime('+7 hours'));
Parameters
NameDescription
newBackup Google\Cloud\Spanner\Backup

The backup object that needs to be created as a copy.

expireTime DateTimeInterface

The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days. Once the expireTime has passed, the backup is eligible to be automatically deleted by Cloud Spanner.

options array

Configuration Options.

↳ versionTime DateTimeInterface

The version time for the externally consistent copy of the database. If not present, it will be the same as the create time of the backup.

Returns
TypeDescription
Google\Cloud\Core\LongRunning\LongRunningOperation<\google\cloud\spanner\backup>

delete

Marks this backup for deletion.

Example:

$backup->delete();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
void

exists

Tests whether this backup exists.

This method sends a service call.

Example:

if ($backup->exists()) {
    echo 'Backup exists!';
}
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
bool

info

Get info of a Cloud Spanner backup from cache or request.

Example:

$info = $backup->info();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
array

name

Return the backup name.

Example:

$name = $backup->name();
Returns
TypeDescription
string

reload

Reload the backup info from the Cloud Spanner API.

Example:

$info = $backup->reload();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
array

state

Return the backup state.

When backups are created, they may take some time before they are ready for use. This method allows for checking whether a backup is ready. Note that this value is cached within the class instance, so if you are polling it, first call Google\Cloud\Spanner\Google\Cloud\Spanner\Backup::reload() to refresh the cached value.

Example:

use Google\Cloud\Spanner\Backup;

if ($backup->state() === Backup::STATE_READY) {
    echo 'Backup is ready!';
}
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
int|null

updateExpireTime

Update the expire time of this backup.

Example:

$info = $backup->updateExpireTime(new \DateTime("+ 7 hours"));
Parameters
NameDescription
newTimestamp DateTimeInterface

New expire time.

options array

[optional] Configuration options.

Returns
TypeDescription
Google\Cloud\Spanner\Backup

Constants

STATE_READY

Value: \Google\Cloud\Spanner\Admin\Database\V1\Backup\State::READY

STATE_CREATING

Value: \Google\Cloud\Spanner\Admin\Database\V1\Backup\State::CREATING