go-mysql-server是一个golang 的mysql server 协议实现包,使用此工具我们可以用来做好多方便的东西
基于mysql 协议暴露自己的本地文件为sql 查询
基于mysql 协议灵活的暴露rest 服务的接口查询为sql
基于mysql 协议方便对于一些数据的查询分析
基于mysql 协议暴露k8s 资源为sql 查询(类似fuse 文件系统?)
基于mysql 协议查询git仓库代码
。。。
一个简单的demo
一个golang 版的简单mysql server
项目初始化(go mod )
go mod init github.com/rongfengliang/my-mysqlserver
main.go
package main
import (
"time"
"gopkg.in/src-d/go-mysql-server.v0"
"gopkg.in/src-d/go-mysql-server.v0/auth"
"gopkg.in/src-d/go-mysql-server.v0/mem"
"gopkg.in/src-d/go-mysql-server.v0/server"
"gopkg.in/src-d/go-mysql-server.v0/sql"
)
// Example of how to implement a MySQL server based on a Engine:
//
// ```
// > mysql --host=127.0.0.1 --port=