MyCLI:一个增强型MySQL命令行客户端

MyCLI是一款免费开源的 MySQL 命令行客户端,它为 MySQL、MariaDB 以及 Percona Server 提供了自动补全、语法高亮、智能提示等现代化交互能力,大幅提升在终端中写 SQL 的体验和效率。

MyCLI 采用 Python 语言开发,遵循 BSD-3-Clause 开源协议,代码托管在 GitHub:

https://github.com/dbcli/mycli

功能特性

  • 跨平台:MyCLI 可以支持 Windows、macOS 以及 Linux,支持 unicode。
  • 安全连接:支持 SSH 隧道、SSL 连接选项;支持从 my.cnf 读取配置;支持 URI 方式连接数据库。
  • 智能自动补全:提供上下文感知的自动补全功能,支持 SQL 关键字、表名、视图、列名提示,可以根据光标位置智能判断补全内容。
  • 语法高亮:基于 Pygments 实现的 SQL 语法高亮显示,提供多种可选的主题,同时支持自定义主题风格。
  • 查询结果展示:可以通过分页显示优化大型查询结果;提供彩色表格输出;宽表自动切换为垂直模式;可以导出为 CSV、批处理结果等格式。
  • 多行查询与历史记录:支持多行 SQL 编辑;支持命令历史搜索(类似 shell);可以回放历史查询。
  • 常用查询:可以将查询语句命名保存并且重复使用。
  • 快捷键:支持 Emacs(默认)以及 Vim 快捷键,方便命令行操作。
  • 大语言模型:可以通过调用大语言模型辅助编写查询语句。

下载安装

推荐使用 pip 进行快速安装:

bash 复制代码
pip install -U 'mycli[all]'

输入 mycli --help 查看使用帮助:

复制代码
$ 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.
...

参考文档:https://www.mycli.net/docs

总结

MyCLI 是一个专为 MySQL 数据库设计的现代化命令行客户端,通过自动补全、语法高亮等特性极大地提高了工作效率。

相关推荐
jinyishu_15 分钟前
向量数据库入门:记录结构、索引、检索与选型
数据库
写后端的胖头鱼4 小时前
【高频面试题】FullText 全文索引(MySQL)
数据库·mysql·索引·全文索引
路远的数据库笔记4 小时前
SQL Server迁移国产数据库怎么做?九套口岸库零停机割接实战
数据库·经验分享·sqlserver·dba
樱花落木兰4 小时前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
kaiyou20265 小时前
用户研究岗秋招,统计分析能力怎么学习和证明?
数据库·python·学习
mjhcsp5 小时前
DeepSeek V4.1 Flash 批量处理效能实测
java·前端·数据库
ShineWinsu5 小时前
对于Redis:Steam、Geospatial、Hyperloglog、Bitmap、Bitfield类型的解析
数据库·c++·redis·分布式·缓存·面试·zset
lie..5 小时前
30天从零开始学AI应用开发(Day 17):ChromaDB 上手:给本地文档建一个“外挂大脑”
数据库·人工智能·oracle
code_whiter6 小时前
01-MySQL数据库基础
数据库·mysql
weixin_382395236 小时前
本地部署 ERP 选型记录:从 Excel 到轻量系统的这几年
数据库·人工智能·数据挖掘