@Konboi memo

主に技術に関してつらつらと。

mysql

GoでMySQLからdatetimeのデータを引いてtime.Time に食わせるときに嵌った

db, err := sql.Open("mysql", "<user>:<password>@/<db name>?parseTime=true&loc=Asia%2FTokyo") parseTime=true をつけるといい感じにparesしてくれる ただこれだとUTCになるっぽうので loc=Asia/Tokyo をつけるとよい github.com</db></password></user>

本番のマスターのDBでhistoryを残さないために

本番のマスターのDBで直接SQLを叩くことはほとんどありません。 が、どうしてもやんごとない事情でSQLを直接叩かないといけない時がでてきます。 SQLの実行自体はいいのですが、他の人が誤ってhistoryから実行したら怖いですね。 そうならないように現在のプロジ…

夏のドキッとしたmigrateの話

はじめに 現在担当しているプロジェクトではmigrateにGitDDLを使っております。 先日本番環境でそれなりにデータが入ったテーブルに対してALTERをかけました。 その際に起こったちょっとドキッとする話を今後の自分のためにも書いてこうと思います。 GitDDLにつ…

雑にindexの効果を調べた

メンターをしている後輩くんのソースをレビューしててindexが足りてなかった。 それがなんでダメなのか雑に調べた。 player_hoge id player_id index_id created_at updated_at みたいなテーブルがある。 使われ方はplayer_idとindex_idの2つでselectする機会が…

本番サーバーに ro_mysql コマンドを作っておくと捗る

はじめに ユーザーさんからのお問い合わせだったり、ディレクターからのお願いだったりで、 本番サーバーのDBでクエリを叩くのは少なくないと思います。 特別に用がある場合以外は、レプリケーション先のサーバーに接続しに行くと思いますが、 もし、指定したHost…

MySQL

最近はサーバーサイドのことを、ちらほらやらせてもらっている。 今までは、jsとかCとか軽く触った程度で全くサーバーサイドのことを やって来なかったので、毎日が勉強です。mysql のよくコマンドについてまとめおこうと思います。 というのも、DBの中身を…

mysqlのユーザー削除

ローカルで開発環境を構築中、wikiを斜め読みしながら構築してたもんだから、途中ユーザーの作成とか DBとかの構築をミスってた。で、もっかい作ってたら mysql> create user user_name identified by 'pass'; ERROR 1396 (HY000): Operation CREATE USER fa…