Using an ApsaraDB for RDS Client with Auto-Completion Features

MyCLI is a command line interface (CLI) for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting features. This tool support auto-completion of table names, database names, aliases, and SQL syntax. It also keeps track of the queries entered for your convenience.

You’ll need to use the pip command to install it on Linux or Unix-like system as MyCLI is written in Python. You can learn more about MyCLI here http://mycli.net/

MyCLI is fully compatible with Alibaba Cloud. To use it, first launch an Elastic Compute Service (ECS) instance where you want to deploy the client to. Make sure that this ECS instance is whitelisted for ApsaraDB for RDS access. You can set up the whitelist using this guide.

Prerequisites

MyCLI tool is based on Python and needs to be installed via pip. Make sure PIP and python development libraries are installed. If you have set up your ECS instance correctly, just run these three lines of codes to install MyCLI.

yum install python-pip
yum -y install python-devel
pip install mycli

Details of MyCLI

If you’re not sure how to use MyCLI, you can always run the --help command to learn about its various options, as shown below.

$ mycli --help
Usage: mycli [OPTIONS] [DATABASE]
Options:
-h, --host TEXT Host address of the database.
-P, --port INTEGER Port number to use for connection. Honors
$MYSQL_TCP_PORT
-u, --user TEXT User name to connect to the database.
-S, --socket TEXT The socket file to use for connection.
-p, --password TEXT Password to connect to the database
--pass TEXT Password to connect to the database
--ssl-ca PATH CA file in PEM format
--ssl-capath TEXT CA directory
--ssl-cert PATH X509 cert in PEM format
--ssl-key PATH X509 key in PEM format
--ssl-cipher TEXT SSL cipher to use
--ssl-verify-server-cert Verify server's "Common Name" in its cert
against hostname used when connecting. This
option is disabled by default
-v, --version Version of mycli.
-D, --database TEXT Database to use.
-R, --prompt TEXT Prompt format (Default: "\t \u@\h:\d> ")
-l, --logfile FILENAME Log every query and its results to a file.
--defaults-group-suffix TEXT Read config group with the specified suffix.
--defaults-file PATH Only read default options from the given file
--myclirc PATH Location of myclirc file.
--auto-vertical-output Automatically switch to vertical output mode
if the result is wider than the terminal
width.
-t, --table Display batch output in table format.
--csv Display batch output in CSV format.
--warn / --no-warn Warn before running a destructive query.
--local-infile BOOLEAN Enable/disable LOAD DATA LOCAL INFILE.
--login-path TEXT Read this path from the login file.
-e, --execute TEXT Execute query to the database.
--help Show this message and exit.

Usage Examples

Just run the command below to run MyCLI on your ApsaraDB for RDS instance.

$ mycli ®Ch{RDS DNS Alias} ®Cu{RDS User Name} -p{RDS Password}

Once connected, you can use MyCLI just as you would use your default CLI.

Further Reading

Alibaba Cloud also provides its own command auto-completion function on the Alibaba Cloud CLI. To learn more, visit https://www.alibabacloud.com/help/doc-detail/29998.html

Reference:

https://www.alibabacloud.com/blog/using-an-apsaradb-for-rds-client-with-auto-completion-features_593884?spm=a2c41.11873495.0.0

Follow me to keep abreast with the latest technology news, industry insights, and developer trends.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store