私が歌川です

@utgwkk が書いている

go-sql-driver/mysqlを使ってMySQLの疎通確認を行うコマンドラインツールを書いた

絶対もうあるでしょう、と思いつつも書きました。go-sql-driver/mysql を使っているのでlibmysqlclientが入っていなくても動くと思います。

github.com

mysql コマンドでホスト名・ポート番号を指定して接続するのと同じコマンドライン引数が使えます。ほかのコマンドライン引数は必要になったら対応します。

$ go-mysqlping -h127.0.0.1 -P3306 -uroot -ppassword

1秒おきにDBアクセスしつつcontextでキャンセルできるようにする、みたいなのを初めて書いたけど意外と書けるものですね。time.Tickという関数があることは知っているけど、最初にアクセスするときに1秒待ってほしくないので手作りしています*1。goroutineがリークしていたら教えてください。