Cloud Spanner Client - Class Backup (1.89.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');

Namespace

Google \ Cloud \ Spanner

Methods

__construct

Create an object representing a Backup.

Parameters
Name Description
connection Connection\ConnectionInterface

The connection to the Cloud Spanner Admin API. This object is created by SpannerClient, and should not be instantiated outside of this client.

instance 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
Name Description
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
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation<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
Name Description
newBackup 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
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation<Backup>

delete

Marks this backup for deletion.

Example:

$backup->delete();
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
void

exists

Tests whether this backup exists.

This method sends a service call.

Example:

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

[optional] Configuration options.

Returns
Type Description
bool

info

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

Example:

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

[optional] Configuration options.

Returns
Type Description
array

name

Return the backup name.

Example:

$name = $backup->name();
Returns
Type Description
string

reload

Reload the backup info from the Cloud Spanner API.

Example:

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

[optional] Configuration options.

Returns
Type Description
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 Backup::reload() to refresh the cached value.

Example:

use Google\Cloud\Spanner\Backup;

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

[optional] Configuration options.

Returns
Type Description
int|null

updateExpireTime

Update the expire time of this backup.

Example:

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

New expire time.

options array

[optional] Configuration options.

Returns
Type Description
Backup

resumeOperation

{ Resume a long running operation

Returns
Type Description
void

longRunningOperations

{ List long running operations.

Returns
Type Description
void

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