package
3.0.0-rc.3+incompatible
Repository: https://github.com/vitessio/vitess.git
Documentation: pkg.go.dev
# Packages
Package backupstorage contains the interface and file system implementation of the backup system.
Package cephbackupstorage implements the BackupStorage interface for Ceph Cloud Storage.
Package filebackupstorage implements the BackupStorage interface for a local filesystem (which can be an NFS mount).
Package gcsbackupstorage implements the BackupStorage interface for Google Cloud Storage.
Package grpcmysqlctlclient contains the gRPC1 version of the mysqlctl client protocol.
Package grpcmysqlctlserver contains the gRPC implementation of the server
side of the remote execution of mysqlctl commands.
Package mysqlctlclient contains the generic client side of the remote mysqlctl protocol.
Package s3backupstorage implements the BackupStorage interface for AWS S3.
Package tmutils contains helper methods to deal with the tabletmanagerdata proto3 structures.
# Functions
Backup is the main entry point for a backup: - uses the BackupStorage service to store a new backup - shuts down Mysqld during the backup - remember if we were replicating, restore the exact same state.
ConcurrentMap applies fun in a concurrent manner on integers from 0 to n-1 (they are assumed to be indexes of some slice containing items to be processed).
CreateMysqldAndMycnf returns a Mysqld and a Mycnf object to use for working with a MySQL installation that hasn't been set up yet.
CreateReparentJournal returns the commands to execute to create the _vt.reparent_journal table.
FindSlaves gets IP addresses for all currently connected slaves.
GetPermissions lists the permissions on the mysqld.
MycnfFile returns the default location of the my.cnf file.
NewMycnf fills the Mycnf structure with vt root paths and derived values.
NewMycnfFromFlags creates a Mycnf object from the command line flags.
NewMysqld creates a Mysqld object based on the provided configuration and connection parameters.
OpenMysqldAndMycnf returns a Mysqld and a Mycnf object to use for working with a MySQL installation that already exists.
PopulateReparentJournal returns the SQL command to use to populate the _vt.reparent_journal table, as well as the time_created_ns value used.
ReadMycnf will read an existing my.cnf from disk, and update the passed in Mycnf object with values from the my.cnf on disk.
RegisterFlags registers the command line flags for specifying the values of a mycnf config file.
ResolveTables returns a list of actual tables+views matching a list of regexps.
Restore is the main entry point for backup restore.
TabletDir returns the default directory for a tablet.
TopLevelDirs returns the list of directories in the toplevel tablet directory that might be located in a different place.
WaitForSlaveStart waits until the deadline for replication to start.
# Variables
DisableActiveReparents is a flag to disable active reparents for safety reasons.
ErrExistingDB is returned when there's already an active DB.
ErrNoBackup is returned when there is no backup.
ErrNotMaster means there is no master status.
# Structs
BackupManifest represents the backup.
FileEntry is one file to backup.
Mycnf is a memory structure that contains a bunch of interesting parameters to start mysqld.
Mysqld is the object that represents a mysqld daemon running on this server.
# Interfaces
MysqlDaemon is the interface we use for abstracting Mysqld.