Skip to main content

Base on the MYCLI CLI for MySQL Database,add additional secure manner via ssh tunnel

Project description

# smycli

Base on the cli tool *mycli* (HomePage: []( ),
add additional secure manner via proxy

Quick Start

If you already know how to install python packages, then you can install it via pip:

You might need sudo on linux.

$ sudo pip install smycli

### Usage

$ smycli --help
Usage: smycli [OPTIONS] [DATABASE]

--ssh-host TEXT Ssh host of the proxy,spicify this option to
indcate use ssh tunnel;if not spicified,use
mycli directly
--ssh-port INTEGER Ssh port of the proxy.
--ssh-user TEXT Ssh user of the proxy.
--ssh-pkey TEXT Ssh pravite key
--ssh-password TEXT the password for pravite key or password auth
-h, --host TEXT Host address of the database.
-P, --port INTEGER Port number to use for connection. Honors
-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
--auto-vertical-output Automatically switch to vertical output mode
if the result is wider than the terminal
-t, --table Display batch output in table 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.

### Examples
#connect mydb on localhost user mycli directly
$ smycli -h localhost -u root mydb

#connect mydb on dbhost but via the tunnel "localhost->sshhost" which is encrypted,then "sshhost->dbhost" is not encrypted.
$ smycli -u admin -h dbhost -P 3306 --ssh-user=root --ssh-host sshhost mydb

#connect mydb on dbhost but via the tunnel "localhost->dbhost" which is encrypted on the whole traffic.
$ smycli -u admin -h dbhost -P 3306 --ssh-user=root --ssh-host dbhost mydb


except the excillent features of cli tool `mycli`,smycli has additional ones:
* encrypt the traffic data via ssh
* via the "proxy node" ,connect to DB hosts from anywhere, safely

All rights of `mycli` is reserved BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS,the license is [here](,and other rights is reserved by the BY THE COPYRIGHT HOLDERS .
All rights of `smycli` is reserved .

## Detailed Install Instructions:
you can install mycli as follows:

$ sudo pip install mycli

### Thanks:
Thanks to all the ones who made this excellent tool `mycli`.

### Compatibility

Tests have been run on OS X and Linux.

THIS HAS NOT BEEN TESTED IN WINDOWS, but the libraries used in this app are Windows compatible. This means it should work without any modifications.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smycli-0.1.6.tar.gz (8.3 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page