public static interface DatabaseAdminGrpc.AsyncService
Cloud Spanner Database Admin API The Cloud Spanner Database Admin API can be used to:
- create, drop, and list databases
- update the schema of pre-existing databases
- create, delete and list backups for a database
- restore a database from an existing backup
Methods
copyBackup(CopyBackupRequest request, StreamObserver<Operation> responseObserver)
public default void copyBackup(CopyBackupRequest request, StreamObserver<Operation> responseObserver)
Starts copying a Cloud Spanner Backup.
The returned backup long-running operation
will have a name of the format
projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>
and can be used to track copying of the backup. The operation is associated
with the destination backup.
The metadata field type is
CopyBackupMetadata.
The response field type is
Backup, if successful. Cancelling the returned operation will stop the
copying and delete the backup.
Concurrent CopyBackup requests can run on the same source backup.
Parameters | |
---|---|
Name | Description |
request |
CopyBackupRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |
createBackup(CreateBackupRequest request, StreamObserver<Operation> responseObserver)
public default void createBackup(CreateBackupRequest request, StreamObserver<Operation> responseObserver)
Starts creating a new Cloud Spanner Backup.
The returned backup long-running operation
will have a name of the format
projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>
and can be used to track creation of the backup. The
metadata field type is
CreateBackupMetadata. The
response field type is
Backup, if successful. Cancelling the returned operation will stop the
creation and delete the backup.
There can be only one pending backup creation per database. Backup creation
of different databases can run concurrently.
Parameters | |
---|---|
Name | Description |
request |
CreateBackupRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |
createDatabase(CreateDatabaseRequest request, StreamObserver<Operation> responseObserver)
public default void createDatabase(CreateDatabaseRequest request, StreamObserver<Operation> responseObserver)
Creates a new Cloud Spanner database and starts to prepare it for serving.
The returned long-running operation will
have a name of the format <database_name>/operations/<operation_id>
and
can be used to track preparation of the database. The
metadata field type is
CreateDatabaseMetadata. The
response field type is
Database, if successful.
Parameters | |
---|---|
Name | Description |
request |
CreateDatabaseRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |
deleteBackup(DeleteBackupRequest request, StreamObserver<Empty> responseObserver)
public default void deleteBackup(DeleteBackupRequest request, StreamObserver<Empty> responseObserver)
Deletes a pending or completed Backup.
Parameters | |
---|---|
Name | Description |
request |
DeleteBackupRequest |
responseObserver |
io.grpc.stub.StreamObserver<Empty> |
dropDatabase(DropDatabaseRequest request, StreamObserver<Empty> responseObserver)
public default void dropDatabase(DropDatabaseRequest request, StreamObserver<Empty> responseObserver)
Drops (aka deletes) a Cloud Spanner database.
Completed backups for the database will be retained according to their
expire_time
.
Note: Cloud Spanner might continue to accept requests for a few seconds
after the database has been deleted.
Parameters | |
---|---|
Name | Description |
request |
DropDatabaseRequest |
responseObserver |
io.grpc.stub.StreamObserver<Empty> |
getBackup(GetBackupRequest request, StreamObserver<Backup> responseObserver)
public default void getBackup(GetBackupRequest request, StreamObserver<Backup> responseObserver)
Gets metadata on a pending or completed Backup.
Parameters | |
---|---|
Name | Description |
request |
GetBackupRequest |
responseObserver |
io.grpc.stub.StreamObserver<Backup> |
getDatabase(GetDatabaseRequest request, StreamObserver<Database> responseObserver)
public default void getDatabase(GetDatabaseRequest request, StreamObserver<Database> responseObserver)
Gets the state of a Cloud Spanner database.
Parameters | |
---|---|
Name | Description |
request |
GetDatabaseRequest |
responseObserver |
io.grpc.stub.StreamObserver<Database> |
getDatabaseDdl(GetDatabaseDdlRequest request, StreamObserver<GetDatabaseDdlResponse> responseObserver)
public default void getDatabaseDdl(GetDatabaseDdlRequest request, StreamObserver<GetDatabaseDdlResponse> responseObserver)
Returns the schema of a Cloud Spanner database as a list of formatted DDL statements. This method does not show pending schema updates, those may be queried using the Operations API.
Parameters | |
---|---|
Name | Description |
request |
GetDatabaseDdlRequest |
responseObserver |
io.grpc.stub.StreamObserver<GetDatabaseDdlResponse> |
getIamPolicy(GetIamPolicyRequest request, StreamObserver<Policy> responseObserver)
public default void getIamPolicy(GetIamPolicyRequest request, StreamObserver<Policy> responseObserver)
Gets the access control policy for a database or backup resource.
Returns an empty policy if a database or backup exists but does not have a
policy set.
Authorization requires spanner.databases.getIamPolicy
permission on
resource.
For backups, authorization requires spanner.backups.getIamPolicy
permission on resource.
Parameters | |
---|---|
Name | Description |
request |
com.google.iam.v1.GetIamPolicyRequest |
responseObserver |
io.grpc.stub.StreamObserver<com.google.iam.v1.Policy> |
listBackupOperations(ListBackupOperationsRequest request, StreamObserver<ListBackupOperationsResponse> responseObserver)
public default void listBackupOperations(ListBackupOperationsRequest request, StreamObserver<ListBackupOperationsResponse> responseObserver)
Lists the backup long-running operations in
the given instance. A backup operation has a name of the form
projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>
.
The long-running operation
metadata field type
metadata.type_url
describes the type of the metadata. Operations returned
include those that have completed/failed/canceled within the last 7 days,
and pending operations. Operations returned are ordered by
operation.metadata.value.progress.start_time
in descending order starting
from the most recently started operation.
Parameters | |
---|---|
Name | Description |
request |
ListBackupOperationsRequest |
responseObserver |
io.grpc.stub.StreamObserver<ListBackupOperationsResponse> |
listBackups(ListBackupsRequest request, StreamObserver<ListBackupsResponse> responseObserver)
public default void listBackups(ListBackupsRequest request, StreamObserver<ListBackupsResponse> responseObserver)
Lists completed and pending backups.
Backups returned are ordered by create_time
in descending order,
starting from the most recent create_time
.
Parameters | |
---|---|
Name | Description |
request |
ListBackupsRequest |
responseObserver |
io.grpc.stub.StreamObserver<ListBackupsResponse> |
listDatabaseOperations(ListDatabaseOperationsRequest request, StreamObserver<ListDatabaseOperationsResponse> responseObserver)
public default void listDatabaseOperations(ListDatabaseOperationsRequest request, StreamObserver<ListDatabaseOperationsResponse> responseObserver)
Lists database longrunning-operations.
A database operation has a name of the form
projects/<project>/instances/<instance>/databases/<database>/operations/<operation>
.
The long-running operation
metadata field type
metadata.type_url
describes the type of the metadata. Operations returned
include those that have completed/failed/canceled within the last 7 days,
and pending operations.
Parameters | |
---|---|
Name | Description |
request |
ListDatabaseOperationsRequest |
responseObserver |
io.grpc.stub.StreamObserver<ListDatabaseOperationsResponse> |
listDatabaseRoles(ListDatabaseRolesRequest request, StreamObserver<ListDatabaseRolesResponse> responseObserver)
public default void listDatabaseRoles(ListDatabaseRolesRequest request, StreamObserver<ListDatabaseRolesResponse> responseObserver)
Lists Cloud Spanner database roles.
Parameters | |
---|---|
Name | Description |
request |
ListDatabaseRolesRequest |
responseObserver |
io.grpc.stub.StreamObserver<ListDatabaseRolesResponse> |
listDatabases(ListDatabasesRequest request, StreamObserver<ListDatabasesResponse> responseObserver)
public default void listDatabases(ListDatabasesRequest request, StreamObserver<ListDatabasesResponse> responseObserver)
Lists Cloud Spanner databases.
Parameters | |
---|---|
Name | Description |
request |
ListDatabasesRequest |
responseObserver |
io.grpc.stub.StreamObserver<ListDatabasesResponse> |
restoreDatabase(RestoreDatabaseRequest request, StreamObserver<Operation> responseObserver)
public default void restoreDatabase(RestoreDatabaseRequest request, StreamObserver<Operation> responseObserver)
Create a new database by restoring from a completed backup. The new
database must be in the same project and in an instance with the same
instance configuration as the instance containing
the backup. The returned database long-running
operation has a name of the format
projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>
,
and can be used to track the progress of the operation, and to cancel it.
The metadata field type is
RestoreDatabaseMetadata.
The response type
is Database, if
successful. Cancelling the returned operation will stop the restore and
delete the database.
There can be only one database being restored into an instance at a time.
Once the restore operation completes, a new restore operation can be
initiated, without waiting for the optimize operation associated with the
first restore to complete.
Parameters | |
---|---|
Name | Description |
request |
RestoreDatabaseRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |
setIamPolicy(SetIamPolicyRequest request, StreamObserver<Policy> responseObserver)
public default void setIamPolicy(SetIamPolicyRequest request, StreamObserver<Policy> responseObserver)
Sets the access control policy on a database or backup resource.
Replaces any existing policy.
Authorization requires spanner.databases.setIamPolicy
permission on resource.
For backups, authorization requires spanner.backups.setIamPolicy
permission on resource.
Parameters | |
---|---|
Name | Description |
request |
com.google.iam.v1.SetIamPolicyRequest |
responseObserver |
io.grpc.stub.StreamObserver<com.google.iam.v1.Policy> |
testIamPermissions(TestIamPermissionsRequest request, StreamObserver<TestIamPermissionsResponse> responseObserver)
public default void testIamPermissions(TestIamPermissionsRequest request, StreamObserver<TestIamPermissionsResponse> responseObserver)
Returns permissions that the caller has on the specified database or backup
resource.
Attempting this RPC on a non-existent Cloud Spanner database will
result in a NOT_FOUND error if the user has
spanner.databases.list
permission on the containing Cloud
Spanner instance. Otherwise returns an empty set of permissions.
Calling this method on a backup that does not exist will
result in a NOT_FOUND error if the user has
spanner.backups.list
permission on the containing instance.
Parameters | |
---|---|
Name | Description |
request |
com.google.iam.v1.TestIamPermissionsRequest |
responseObserver |
io.grpc.stub.StreamObserver<com.google.iam.v1.TestIamPermissionsResponse> |
updateBackup(UpdateBackupRequest request, StreamObserver<Backup> responseObserver)
public default void updateBackup(UpdateBackupRequest request, StreamObserver<Backup> responseObserver)
Updates a pending or completed Backup.
Parameters | |
---|---|
Name | Description |
request |
UpdateBackupRequest |
responseObserver |
io.grpc.stub.StreamObserver<Backup> |
updateDatabase(UpdateDatabaseRequest request, StreamObserver<Operation> responseObserver)
public default void updateDatabase(UpdateDatabaseRequest request, StreamObserver<Operation> responseObserver)
Updates a Cloud Spanner database. The returned
long-running operation can be used to track
the progress of updating the database. If the named database does not
exist, returns NOT_FOUND
.
While the operation is pending:
- The database's reconciling field is set to true.
- Cancelling the operation is best-effort. If the cancellation succeeds,
the operation metadata's
cancel_time
is set, the updates are reverted, and the operation terminates with a
CANCELLED
status. - New UpdateDatabase requests will return a
FAILED_PRECONDITION
error until the pending operation is done (returns successfully or with error). - Reading the database via the API continues to give the pre-request values. Upon completion of the returned operation:
- The new values are in effect and readable via the API.
- The database's
reconciling
field becomes false.
The returned long-running operation will
have a name of the format
projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>
and can be used to track the database modification. The metadata field type is UpdateDatabaseMetadata. The response field type is Database, if successful.
Parameters | |
---|---|
Name | Description |
request |
UpdateDatabaseRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |
updateDatabaseDdl(UpdateDatabaseDdlRequest request, StreamObserver<Operation> responseObserver)
public default void updateDatabaseDdl(UpdateDatabaseDdlRequest request, StreamObserver<Operation> responseObserver)
Updates the schema of a Cloud Spanner database by
creating/altering/dropping tables, columns, indexes, etc. The returned
long-running operation will have a name of
the format <database_name>/operations/<operation_id>
and can be used to
track execution of the schema change(s). The
metadata field type is
UpdateDatabaseDdlMetadata. The operation has no response.
Parameters | |
---|---|
Name | Description |
request |
UpdateDatabaseDdlRequest |
responseObserver |
io.grpc.stub.StreamObserver<Operation> |