Get desktop application:
View/edit binary Protocol Buffers messages
Service Vtctl allows you to call vt commands through gRPC.
Service Vtctld exposes gRPC endpoints for each vt command.
AddCellInfo registers a local topology service in a new cell by creating the CellInfo with the provided parameters.
AddCellsAlias defines a group of cells that can be referenced by a single name (the alias). When routing query traffic, replica/rdonly traffic can be routed across cells within the group (alias). Only primary traffic can be routed across cells not in the same group (alias).
ApplyRoutingRules applies the VSchema routing rules.
ApplySchema applies a schema to a keyspace.
ApplyKeyspaceRoutingRules applies the VSchema keyspace routing rules.
ApplyShardRoutingRules applies the VSchema shard routing rules.
ApplyVSchema applies a vschema to a keyspace.
Backup uses the BackupEngine and BackupStorage services on the specified tablet to create and store a new backup.
BackupShard chooses a tablet in the shard and uses it to create a backup.
CancelSchemaMigration cancels one or all migrations, terminating any running ones as needed.
ChangeTabletTags changes the tags of the specified tablet, if possible.
ChangeTabletType changes the db type for the specified tablet, if possible. This is used primarily to arrange replicas, and it will not convert a primary. For that, use InitShardPrimary. NOTE: This command automatically updates the serving graph.
CheckThrottler issues a 'check' on a tablet's throttler
CleanupSchemaMigration marks a schema migration as ready for artifact cleanup.
CompleteSchemaMigration completes one or all migrations executed with --postpone-completion.
CompleteSchemaMigration completes one or all migrations executed with --postpone-completion.
CopySchemaShard copies the schema from a source tablet to all tablets in a keyspace/shard.
CreateKeyspace creates the specified keyspace in the topology. For a SNAPSHOT keyspace, the request must specify the name of a base keyspace, as well as a snapshot time.
CreateShard creates the specified shard in the topology.
DeleteCellInfo deletes the CellInfo for the provided cell. The cell cannot be referenced by any Shard record in the topology.
DeleteCellsAlias deletes the CellsAlias for the provided alias.
DeleteKeyspace deletes the specified keyspace from the topology. In recursive mode, it also recursively deletes all shards in the keyspace. Otherwise, the keyspace must be empty (have no shards), or DeleteKeyspace returns an error.
DeleteShards deletes the specified shards from the topology. In recursive mode, it also deletes all tablets belonging to the shard. Otherwise, the shard must be empty (have no tablets) or DeleteShards returns an error for that shard.
DeleteSrvVSchema deletes the SrvVSchema object in the specified cell.
DeleteTablets deletes one or more tablets from the topology.
EmergencyReparentShard reparents the shard to the new primary. It assumes the old primary is dead or otherwise not responding.
ExecuteFetchAsApp executes a SQL query on the remote tablet as the App user.
ExecuteFetchAsDBA executes a SQL query on the remote tablet as the DBA user.
ExecuteHook runs the hook on the tablet.
ExecuteMultiFetchAsDBA executes one or more SQL queries on the remote tablet as the DBA user.
FindAllShardsInKeyspace returns a map of shard names to shard references for a given keyspace.
ForceCutOverSchemaMigration marks a schema migration for forced cut-over.
GetBackups returns all the backups for a shard.
GetCellInfo returns the information for a cell.
GetCellInfoNames returns all the cells for which we have a CellInfo object, meaning we have a topology service registered.
GetCellsAliases returns a mapping of cell alias to cells identified by that alias.
GetFullStatus returns the full status of MySQL including the replication information, semi-sync information, GTID information among others
GetKeyspace reads the given keyspace from the topo and returns it.
GetKeyspaces returns the keyspace struct of all keyspaces in the topo.
GetKeyspaceRoutingRules returns the VSchema keyspace routing rules.
GetPermissions returns the permissions set on the remote tablet.
GetRoutingRules returns the VSchema routing rules.
GetSchema returns the schema for a tablet, or just the schema for the specified tables in that tablet.
GetSchemaMigrations returns one or more online schema migrations for the specified keyspace, analagous to `SHOW VITESS_MIGRATIONS`. Different fields in the request message result in different filtering behaviors. See the documentation on GetSchemaMigrationsRequest for details.
GetShardReplication returns the replication graph for a shard in a cell.
GetShard returns information about a shard in the topology.
GetShardRoutingRules returns the VSchema shard routing rules.
GetSrvKeyspaceNames returns a mapping of cell name to the keyspaces served in that cell.
GetSrvKeyspaces returns the SrvKeyspaces for a keyspace in one or more cells.
UpdateThrottlerConfig updates the tablet throttler configuration
GetSrvVSchema returns the SrvVSchema for a cell.
GetSrvVSchemas returns a mapping from cell name to SrvVSchema for all cells, optionally filtered by cell name.
GetTablet returns information about a tablet.
GetTablets returns tablets, optionally filtered by keyspace and shard.
GetThrottlerStatus gets the status of a tablet throttler
GetTopologyPath returns the topology cell at a given path.
GetTransactionInfo reads a given transactions information.
GetTransactions returns the unresolved transactions for the request.
GetVersion returns the version of a tablet from its debug vars.
GetVSchema returns the vschema for a keyspace.
GetWorkflows returns a list of workflows for the given keyspace.
InitShardPrimary sets the initial primary for a shard. Will make all other tablets in the shard replicas of the provided primary. WARNING: This could cause data loss on an already replicating shard. PlannedReparentShard or EmergencyReparentShard should be used in those cases instead.
LaunchSchemaMigration launches one or all migrations executed with --postpone-launch.
MaterializeCreate creates a workflow to materialize one or more tables from a source keyspace to a target keyspace using a provided expressions.
WorkflowAddTables adds tables to the existing materialize/movetables workflow.
MigrateCreate creates a workflow which migrates one or more tables from an external cluster into Vitess.
MountRegister registers a new external Vitess cluster.
MountUnregister unregisters an external Vitess cluster.
MountShow returns information about an external Vitess cluster.
MountList lists all registered external Vitess clusters.
MoveTablesCreate creates a workflow which moves one or more tables from a source keyspace to a target keyspace.
MoveTablesComplete completes the move and cleans up the workflow and its related artifacts.
PingTablet checks that the specified tablet is awake and responding to RPCs. This command can be blocked by other in-flight operations.
PlannedReparentShard reparents the shard to the new primary, or away from an old primary. Both the old and new primaries need to be reachable and running. **NOTE**: The vtctld will not consider any replicas outside the cell the current shard primary is in for promotion unless NewPrimary is explicitly provided in the request.
RebuildKeyspaceGraph rebuilds the serving data for a keyspace. This may trigger an update to all connected clients.
RebuildVSchemaGraph rebuilds the per-cell SrvVSchema from the global VSchema objects in the provided cells (or all cells in the topo none provided).
RefreshState reloads the tablet record on the specified tablet.
RefreshStateByShard calls RefreshState on all the tablets in the given shard.
ReloadSchema instructs the remote tablet to reload its schema.
ReloadSchemaKeyspace reloads the schema on all tablets in a keyspace.
ReloadSchemaShard reloads the schema on all tablets in a shard. In general, we don't always expect all replicas to be ready to reload, and the periodic schema reload makes them self-healing anyway. So, we do this on a best-effort basis, and log warnings for any tablets that fail to reload within the context deadline.
RemoveBackup removes a backup from the BackupStorage used by vtctld.
RemoveKeyspaceCell removes the specified cell from the Cells list for all shards in the specified keyspace (by calling RemoveShardCell on every shard). It also removes the SrvKeyspace for that keyspace in that cell.
RemoveShardCell removes the specified cell from the specified shard's Cells list.
ReparentTablet reparents a tablet to the current primary in the shard. This only works if the current replica position matches the last known reparent action.
ReshardCreate creates a workflow to reshard a keyspace.
RestoreFromBackup stops mysqld for the given tablet and restores a backup.
RetrySchemaMigration marks a given schema migration for retry.
RunHealthCheck runs a healthcheck on the remote tablet.
SetKeyspaceDurabilityPolicy updates the DurabilityPolicy for a keyspace.
SetShardIsPrimaryServing adds or removes a shard from serving. This is meant as an emergency function. It does not rebuild any serving graph (i.e. it does not run RebuildKeyspaceGraph).
SetShardTabletControl updates the TabletControl topo record for a shard and tablet type. This should only be used for an emergency fix, or after a finished Reshard. See the documentation on SetShardTabletControlRequest for more information about the different update modes.
SetWritable sets a tablet as read-write (writable=true) or read-only (writable=false).
ShardReplicationAdd adds an entry to a topodata.ShardReplication object. It is a low-level function and should generally not be called.
ShardReplicationFix walks the replication graph for a shard in a cell and attempts to fix the first problem encountered, returning information about the problem fixed, if any.
ShardReplicationPositions returns the replication position of each tablet in a shard. This RPC makes a best-effort to return partial results. For example, if one tablet in the shard graph is unreachable, then ShardReplicationPositions will return non-error, and include valid results for the reachable tablets.
ShardReplicationRemove removes an entry from a topodata.ShardReplication object. It is a low-level function and should generally not be called.
SleepTablet blocks the aciton queue on the specified tablet for the specified duration. This is typically used for testing.
SourceShardAdd adds the SourceShard record with the provided index. This should be used only as an emergency function. It does not call RefreshState for the shard primary.
SourceShardDelete deletes the SourceShard record with the provided index. This should be used only as an emergency cleanup function. It does not call RefreshState for the shard primary.
StartReplication starts replication on the specified tablet.
StopReplication stops replication on the specified tablet.
TabletExternallyReparented changes metadata in the topology server to acknowledge a shard primary change performed by an external tool (e.g. orchestrator). See the Reparenting guide for more information: https://vitess.io/docs/user-guides/configuration-advanced/reparenting/#external-reparenting.
UpdateCellInfo updates the content of a CellInfo with the provided parameters. Empty values are ignored. If the cell does not exist, the CellInfo will be created.
UpdateCellsAlias updates the content of a CellsAlias with the provided parameters. Empty values are ignored. If the alias does not exist, the CellsAlias will be created.
Validate validates that all nodes from the global replication graph are reachable, and that all tablets in discoverable cells are consistent.
ValidateKeyspace validates that all nodes reachable from the specified keyspace are consistent.
ValidatePermissionsKeyspace validates that all the permissions are the same in a keyspace.
ValidateSchemaKeyspace validates that the schema on the primary tablet for shard 0 matches the schema on all of the other tablets in the keyspace.
ValidateShard validates that all nodes reachable from the specified shard are consistent.
ValidateVersionKeyspace validates that the version on the primary of shard 0 matches all of the other tablets in the keyspace.
ValidateVersionShard validates that the version on the primary matches all of the replicas.
ValidateVSchema compares the schema of each primary tablet in "keyspace/shards..." to the vschema and errs if there are differences.
WorkflowDelete deletes a vreplication workflow.
WorkflowUpdate updates the configuration of a vreplication workflow using the provided updated parameters.
GetMirrorRules returns the VSchema routing rules.