`mysqlctl` is a command-line client used for managing `mysqld` instances.
It is responsible for bootstrapping tasks such as generating a configuration file for `mysqld` and initializing the instance and its data directory.
The `mysqld_safe` watchdog is utilized when present.
This helps ensure that `mysqld` is automatically restarted after failures.
Usage:
mysqlctl [command]
Available Commands:
completion Generate the autocompletion script for the specified shell
help Help about any command
init Initializes the directory structure and starts mysqld.
init_config Initializes the directory structure, creates my.cnf file, but does not start mysqld.
position Compute operations on replication positions
reinit_config Reinitializes my.cnf file with new server_id.
shutdown Shuts down mysqld, without removing any files.
start Starts mysqld on an already 'init'-ed directory.
teardown Shuts mysqld down and removes the directory.
Flags:
--app-idle-timeout duration Idle timeout for app connections (default 1m0s)
--app-pool-size int Size of the connection pool for app connections (default 40)
--catch-sigpipe catch and ignore SIGPIPE on stdout and stderr if specified
--config-file string Full path of the config file (with extension) to use. If set, --config-path, --config-type, and --config-name are ignored.
--config-file-not-found-handling ConfigFileNotFoundHandling Behavior when a config file is not found. (Options: error, exit, ignore, warn) (default warn)
--config-name string Name of the config file (without extension) to search for. (default "vtconfig")
--config-path strings Paths to search for config files in. (default [/tmp])
--config-persistence-min-interval duration minimum interval between persisting dynamic config changes back to disk (if no change has occurred, nothing is done). (default 1s)
--config-type string Config file type (omit to infer config type from file extension).
--db-charset string Character set/collation used for this tablet. Make sure to configure this to a charset/collation supported by the lowest MySQL version in your environment. (default "utf8mb4")
--db-conn-query-info enable parsing and processing of QUERY_OK info fields
--db-connect-timeout-ms int connection timeout to mysqld in milliseconds (0 for no timeout)
--db-credentials-file string db credentials file; send SIGHUP to reload this file
--db-credentials-server string db credentials server type ('file' - file implementation; 'vault' - HashiCorp Vault implementation) (default "file")
--db-credentials-vault-addr string URL to Vault server
--db-credentials-vault-path string Vault path to credentials JSON blob, e.g.: secret/data/prod/dbcreds
--db-credentials-vault-role-mountpoint string Vault AppRole mountpoint; can also be passed using VAULT_MOUNTPOINT environment variable (default "approle")
--db-credentials-vault-role-secretidfile string Path to file containing Vault AppRole secret_id; can also be passed using VAULT_SECRETID environment variable
--db-credentials-vault-roleid string Vault AppRole id; can also be passed using VAULT_ROLEID environment variable
--db-credentials-vault-timeout duration Timeout for vault API operations (default 10s)
--db-credentials-vault-tls-ca string Path to CA PEM for validating Vault server certificate
--db-credentials-vault-tokenfile string Path to file containing Vault auth token; token can also be passed using VAULT_TOKEN environment variable
--db-credentials-vault-ttl duration How long to cache DB credentials from the Vault server (default 30m0s)
--db-dba-password string db dba password
--db-dba-use-ssl Set this flag to false to make the dba connection to not use ssl (default true)
--db-dba-user string db dba user userKey (default "vt_dba")
--db-flags uint Flag values as defined by MySQL.
--db-flavor string Flavor overrid. Valid value is FilePos.
--db-host string The host name for the tcp connection.
--db-port int tcp port
--db-server-name string server name of the DB we are connecting to.
--db-socket string The unix socket to connect on. If this is specified, host and port will not be used.
--db-ssl-ca string connection ssl ca
--db-ssl-ca-path string connection ssl ca path
--db-ssl-cert string connection ssl certificate
--db-ssl-key string connection ssl key
--db-ssl-mode SslMode SSL mode to connect with. One of disabled, preferred, required, verify_ca & verify_identity.
--db-tls-min-version string Configures the minimal TLS version negotiated when SSL is enabled. Defaults to TLSv1.2. Options: TLSv1.0, TLSv1.1, TLSv1.2, TLSv1.3.
--dba-idle-timeout duration Idle timeout for dba connections (default 1m0s)
--dba-pool-size int Size of the connection pool for dba connections (default 20)
-h, --help help for mysqlctl
--keep-logs duration keep logs for this long (using ctime) (zero to keep forever)
--keep-logs-by-mtime duration keep logs for this long (using mtime) (zero to keep forever)
--lameduck-period duration keep running at least this long after SIGTERM before stopping (default 50ms)
--log-err-stacks log stack traces for errors
--log-format string log output format: json for machine-readable JSON, text for human-readable colored output (default "json")
--log-level string minimum log level when structured logging is enabled (debug, info, warn, error) (default "info")
--log-rotate-max-size uint size in bytes at which logs are rotated (glog.MaxSize) (default 1887436800)
--log-structured enable structured JSON logging (default true)
--max-stack-size int configure the maximum stack size in bytes (default 67108864)
--mysql-port int MySQL port. (default 3306)
--mysql-server-version string MySQL server version to advertise. (default "8.4.6-Vitess")
--mysql-socket string Path to the mysqld socket file.
--mysqlctl-client-protocol string the protocol to use to talk to the mysqlctl server (default "grpc")
--mysqlctl-mycnf-template string template file to use for generating the my.cnf file during server init
--mysqlctl-socket string socket file to use for remote mysqlctl actions (empty for local actions)
--onclose-timeout duration wait no more than this for OnClose handlers before stopping (default 10s)
--onterm-timeout duration wait no more than this for OnTermSync handlers before stopping (default 10s)
--pid-file string If set, the process will write its pid to the named file, and delete it on graceful shutdown.
--pool-hostname-resolve-interval duration if set force an update to all hostnames and reconnect if changed, defaults to 0 (disabled)
--pprof strings enable profiling
--pprof-http enable pprof http endpoints
--purge-logs-interval duration how often try to remove old logs (default 1h0m0s)
--replication-connect-retry duration how long to wait in between replica reconnect attempts. Only precise to the second. (default 10s)
--security-policy string the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only)
--service-map strings comma separated list of services to enable (or disable if prefixed with '-') Example: grpc-queryservice
--socket-file string Local unix socket file to listen on
--table-refresh-interval int interval in milliseconds to refresh tables in status page with refreshRequired class
--tablet-dir string The directory within the vtdataroot to store vttablet/mysql files. Defaults to being generated by the tablet uid.
--tablet-uid uint32 Tablet UID. (default 41983)
-v, --version print binary version
Use "mysqlctl [command] --help" for more information about a command.
Options (71)
| Option | Description | Source |
|---|---|---|
--app-idle-timeout duration | Idle timeout for app connections (default 1m0s) | help |
--app-pool-size int | Size of the connection pool for app connections (default 40) | help |
--catch-sigpipe | catch and ignore SIGPIPE on stdout and stderr if specified | help |
--config-file string | Full path of the config file (with extension) to use. | help |
--config-file-not-found-handling ConfigFileNotFoundHandling | Behavior when a config file is not found. | help |
--config-name string | Name of the config file (without extension) to search for. | help |
--config-path strings | Paths to search for config files in. | help |
--config-persistence-min-interval duration | minimum interval between persisting dynamic config changes back to disk (if no change has occurred, nothing is done). | help |
--config-type string | Config file type (omit to infer config type from file extension). | help |
--db-charset string | Character set/collation used for this tablet. | help |
--db-conn-query-info | enable parsing and processing of QUERY_OK info fields | help |
--db-connect-timeout-ms int | connection timeout to mysqld in milliseconds (0 for no timeout) | help |
--db-credentials-file string | db credentials file; | help |
--db-credentials-server string | db credentials server type ('file' - file implementation; | help |
--db-credentials-vault-addr string | URL to Vault server | help |
--db-credentials-vault-path string | Vault path to credentials JSON blob, e.g.: secret/data/prod/dbcreds | help |
--db-credentials-vault-role-mountpoint string | Vault AppRole mountpoint; | help |
--db-credentials-vault-role-secretidfile string | Path to file containing Vault AppRole secret_id; | help |
--db-credentials-vault-roleid string | Vault AppRole id; | help |
--db-credentials-vault-timeout duration | Timeout for vault API operations (default 10s) | help |
--db-credentials-vault-tls-ca string | Path to CA PEM for validating Vault server certificate | help |
--db-credentials-vault-tokenfile string | Path to file containing Vault auth token; | help |
--db-credentials-vault-ttl duration | How long to cache DB credentials from the Vault server (default 30m0s) | help |
--db-dba-password string | db dba password | help |
--db-dba-use-ssl | Set this flag to false to make the dba connection to not use ssl (default true) | help |
--db-dba-user string | db dba user userKey (default "vt_dba") | help |
--db-flags uint | Flag values as defined by MySQL. | help |
--db-flavor string | Flavor overrid. | help |
--db-host string | The host name for the tcp connection. | help |
--db-port int | tcp port | help |
--db-server-name string | server name of the DB we are connecting to. | help |
--db-socket string | The unix socket to connect on. | help |
--db-ssl-ca string | connection ssl ca | help |
--db-ssl-ca-path string | connection ssl ca path | help |
--db-ssl-cert string | connection ssl certificate | help |
--db-ssl-key string | connection ssl key | help |
--db-ssl-mode SslMode | SSL mode to connect with. | help |
--db-tls-min-version string | Configures the minimal TLS version negotiated when SSL is enabled. | help |
--dba-idle-timeout duration | Idle timeout for dba connections (default 1m0s) | help |
--dba-pool-size int | Size of the connection pool for dba connections (default 20) | help |
-h, --help | help for mysqlctl | help |
--keep-logs duration | keep logs for this long (using ctime) (zero to keep forever) | help |
--keep-logs-by-mtime duration | keep logs for this long (using mtime) (zero to keep forever) | help |
--lameduck-period duration | keep running at least this long after SIGTERM before stopping (default 50ms) | help |
--log-err-stacks | log stack traces for errors | help |
--log-format string | log output format: json for machine-readable JSON, text for human-readable colored output (default "json") | help |
--log-level string | minimum log level when structured logging is enabled (debug, info, warn, error) (default "info") | help |
--log-rotate-max-size uint | size in bytes at which logs are rotated (glog.MaxSize) (default 1887436800) | help |
--log-structured | enable structured JSON logging (default true) | help |
--max-stack-size int | configure the maximum stack size in bytes (default 67108864) | help |
--mysql-port int | MySQL port. | help |
--mysql-server-version string | MySQL server version to advertise. | help |
--mysql-socket string | Path to the mysqld socket file. | help |
--mysqlctl-client-protocol string | the protocol to use to talk to the mysqlctl server (default "grpc") | help |
--mysqlctl-mycnf-template string | template file to use for generating the my.cnf file during server init | help |
--mysqlctl-socket string | socket file to use for remote mysqlctl actions (empty for local actions) | help |
--onclose-timeout duration | wait no more than this for OnClose handlers before stopping (default 10s) | help |
--onterm-timeout duration | wait no more than this for OnTermSync handlers before stopping (default 10s) | help |
--pid-file string | If set, the process will write its pid to the named file, and delete it on graceful shutdown. | help |
--pool-hostname-resolve-interval duration | if set force an update to all hostnames and reconnect if changed, defaults to 0 (disabled) | help |
--pprof strings | enable profiling | help |
--pprof-http | enable pprof http endpoints | help |
--purge-logs-interval duration | how often try to remove old logs (default 1h0m0s) | help |
--replication-connect-retry duration | how long to wait in between replica reconnect attempts. | help |
--security-policy string | the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only) | help |
--service-map strings | comma separated list of services to enable (or disable if prefixed with '-') Example: grpc-queryservice | help |
--socket-file string | Local unix socket file to listen on | help |
--table-refresh-interval int | interval in milliseconds to refresh tables in status page with refreshRequired class | help |
--tablet-dir string | The directory within the vtdataroot to store vttablet/mysql files. | help |
--tablet-uid uint32 | Tablet UID. | help |
-v, --version | print binary version | help |