共计 1231 个字符,预计需要花费 4 分钟才能阅读完成。
mysql-go
mysql-go
为什么有这个轮子
- 在维护服务器时,一般需要进行 mysql 连接相关的测试,有的没有安装 mysql, 安装官方的 mysql 太麻烦,我想一个文件能搞定,无库文件依赖,全静态编译的单文件
- mysql 官方的命令行客户端没有静态编译的版本 (网上也没找到) (如果能提供类似需求的功能完善的轮子更好)
- 一般紧急临时用,mysql 官方的命令行客户端体积很大,几百 M
- 日常管理还是建议使用 navicate 之类的客户端
仓库地址
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 < xxx.sql
mysql -uroot -p123456 -h127.0.0.1 -P3306 -Ddbname -e 'select * from users limit 10;'
安装
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
正文完