MySQL 命令行神器:mycli
今天再推荐一款命令行神器 —— Mycli。
Mycli是一个MySQL命令行客户端工具,具有自动完成和语法突出显示功能。
它是由印度人基于python开发的一个工具,,适合初学者或者对数据库熟悉但命令记不住的人群,能很好地克服记不住命令的困难。
安装
建议先安装依赖
$ yum install python-pip python-devel
$ pip install mycli
官方的安装就是先安装python的两个插件后,使用python插件pip来下载安装mycli工具,但很多时候安装都会报错。首先国内的一些yum源可能都不支持安装python-pip工具
安装完python后,你以为直接运行pip install mycli就可以完成安装mycli.
如果遇到以下错误
Cannot uninstall 'configobj'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
执行一下安装
$ pip install --ignore-installed mycli
一般的已经知道如何安装python包,那么您可以简单地执行:
$ pip install mycli
如果是在macOS上,你可以通过homebrew安装它。
$ brew update && brew install mycli
如果您在安装时遇到问题,请查看官网以获取详细说明。
使用
你只需要一个命令 mycli
就可以启动
详细参数参考下面:
$ mycli --help
Usage: mycli [OPTIONS] [DATABASE]
A MySQL terminal client with auto-completion and syntax highlighting.
Examples:
- mycli my_database
- mycli -u my_user -h my_host.com my_database
- mycli mysql://my_user@my_host.com:3306/my_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 Output mycli's version.
-v, --verbose Verbose output.
-D, --database TEXT Database to use.
-d, --dsn TEXT Use DSN configured into the [alias_dsn]
section of myclirc file.
--list-dsn list of DSN configured into the [alias_dsn]
section of myclirc file.
-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 MySQL config groups with the specified
suffix.
--defaults-file PATH Only read MySQL 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 command and quit.
--help Show this message and exit.
本作品采用《CC 协议》,转载必须注明作者和本文链接
欢迎访问我的个人博客 imwnk.cn
本帖由 Summer
于 6年前 加精
谢谢分享
原理是什么?自己实现的还是模拟的?
:+1:
@qufo 这款工具使用python开发的,使用Pyhton 的prompt_toolkit包实现的自动提示
一直在用
我想知道,你们都是什么什么情况下用cli操作数据库?本地不都是直接用Navicat这种图形工具方便吗
@839891627 一般调试情况下都是图形的,但是生产环境上,数据库一般都是限制服务器本地访问的。
sudo apt install mycli
直接下载,就算没有py依赖也会自动安装的一直用这个 用了一年多了 :smile:
有点意思~
提示mac有老版本的sqlite3,所以不能连接到/usr/local 。 虽然带着错误安装成功了,但是运行mycli -uroot后输入密码,密码一直不对。但是密码已确认输的是正确的。所以,没用起来这个软件
mark
真乃神器
为什么我插入中文数据会乱码呢?