我造了个轮子,mysql 命令行的客户端

查看 91|回复 9
作者:nilai   
mysql-go
mysql-go
为什么有这个轮子
  • 在维护服务器时,一般需要进行 mysql 连接相关的测试,有的没有安装 mysql, 安装官方的 mysql 太麻烦,我想一个文件能搞定,无库文件依赖,全静态编译的单文件
  • mysql 官方的命令行客户端没有静态编译的版本(网上也没找到) (如果能提供类似需求的功能完善的轮子更好)
  • 一般紧急临时用,mysql 官方的命令行客户端体积很大,几百 M
  • 日常管理还是建议使用 navicate 之类的客户端

    仓库地址
  • https://github.com/xxoxx/mysql-go/

    Feature
  • 类似 linux 下的 grep,这样在管理过程中就少写一些 where,like 等

    mysql> show variables; | grep log_bin
    Variable_name   Value
    log_bin ON
    log_bin_basename        /var/lib/mysql/binlog
    log_bin_index   /var/lib/mysql/binlog.index
    log_bin_trust_function_creators OFF
    log_bin_use_v1_row_events       OFF
    sql_log_bin     ON
    6 rows in set (0.01 sec)
    mysql> show variables; | grep binlog
  • 类似 linux 下的 grep -v 排除过滤

    mysql> show processlist; | grepv sleep
    Id      User    Host    db      Command Time    State   Info
    5       event_scheduler localhost       NULL    Daemon  1902954 Waiting on empty queue  NULL
    115     root    192.168.3.101:63598     NULL    Query   0       init    show processlist
    2 rows in set (0.00 sec)
    使用例子 基本跟官方的用法一至
    mysql -uroot -p123456 -h127.0.0.1 -P3306
    mysql -u root -p 123456 -h 127.0.0.1 -P 3306
    mysql -uroot -p123456 -h127.0.0.1 -P3306 -Ddbname
    mysql -uroot -p123456 -h127.0.0.1 -P3306 -f xxx.sql
    mysql -uroot -p123456 -h127.0.0.1 -P3306 -Ddbname
    安装
    wget https://gitee.com/tinatmp/mysql/releases/download/mysql/mysql_linux -O /usr/local/bin/mysql  chmod +x /usr/local/bin/mysql
    其它
  • 兼容 mysql5.7 mysql8 tidb
  • 测试不全,可能存在 bug

  • ramirezyolis808   
    就包管理器安装一下客户端就可以了呀,又不需要完整安装 server ,有何复杂的?
    Comyn   
    和 mycli 优势在哪里
    nilai
    OP
      
    @Comyn mycli 我看了一下 功能很强大, 但是跟我的需求不想符, 我主要需要的就是 单文件 静态编译 无其它库文件依赖, 我只要能连接上能执行基本的 sql 命令就行
    nilai
    OP
      
    @ramirezyolis808 正常来说是这个道理, 可我接触的有的服务器是没有外网的, 没法直接 apt-get yum dnf 等操作
    Rehtt   
    https://harlequin.sh/
    nilai
    OP
      
    @Rehtt 感谢提供, 这个我看了一下, 这个功能更强大了, 我看它是基于 python 开发的, 它的依赖库估计不少,python 程序用 py2exe pyinstaller 类似的打包的话,一个体积太大, 另一个我曾经碰到过打包后可能存在兼容性问题, 我主要需要的就是 单文件 静态编译 无其它库文件依赖
    miniliuke   
    可以做个支持多种库的还是有点用的.......光支持 mysql 和官方的区别不大
    bashbot   
    没有外网的服务器但是允许你传文件上去?
    这种情况遇到的比较少,遇到封网的服务器至少 scp 和拷贝粘贴也会禁掉,一般都是封端口加跳板机登录。
    gbw1992   
    收藏了
    在一定特殊情况下可能会用到
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部