Cloud Spanner Client - Class Backup (1.87.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 Google\Cloud\Spanner\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 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
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<\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
Name Description
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
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation<\google\cloud\spanner\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 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
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
Google\Cloud\Spanner\Backup

resumeOperation

{ Resume a long running operation

Example:
```php
$operation = $backup->resumeOperation($operationName);
```

@param string $operationName The long running operation name.
@param array $info [optional] The operation data.
@return LongRunningOperation

}

Returns
Type Description
void

longRunningOperations

{ List long running operations.

Example:
```php
$operations = $backup->longRunningOperations();
```

@param array $options [optional] {
    Configuration Options.

    @type string $name The name of the operation collection.
    @type string $filter The standard list filter.
    @type int $pageSize Maximum number of results to return per
          request.
    @type int $resultLimit Limit the number of results returned in total.
          **Defaults to** `0` (return all results).
    @type string $pageToken A previously-returned page token used to
          resume the loading of results from a specific point.
}
@return ItemIterator<LongRunningOperation>

}

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