MySQL Fabricつらい(mysqlコマンドラインクライアントにHA切り替え機能を実装する編)
Connector/CでマスタースレーブHA打ち分け編の応用で、mysqlコマンドラインクライアントにHA打ち分け機能を追加してみました。パッチはこんな感じ。MySQL 5.7.5-m15のmysqlコマンドラインクライアントベースだけど、labs版のConnector/Cが5.6をベースにしてるっぽい気配がして、おとなしく5.6のコマンドラインクライアントベースにすればよかったかも。。***...
View ArticleMySQL Fabricつらい(FABRIC_OPT_MODE = roはスレーブだけを見に行くわけじゃない)
mysqlコマンドラインクライアントにHA切り替え機能を実装する編でいじったコマンドラインクライアントでちょこちょこいじってたらなんか不思議な挙動に辿り着く。mysql> \F roCurrent FABRIC_OPT_DEFAULT_MODE is romysql> SELECT @@port, @@read_only;+--------+-------------+| @@port...
View ArticleMroonga + MySQL 5.6とMariaDB 10.0だとスピードが結構違う?
あんま真面目に調べてないんですがメモ。mysql> SELECT COUNT(*) FROM t1 WHERE MATCH(text_column) AGAINST('*D+ xxx' IN BOOLEAN MODE);+----------+| COUNT(*) |+----------+| 45402 |+----------+1 row in set (0.03 sec)MariaDB...
View Articletopライクにperformance_schemaを眺めるらしいpstopとやら
pstop – a top-like program for MySQL (based on performance_schema) を見て試してみたメモ。$ git clone https://github.com/sjmudd/pstop.git$ cd pstop$ lltotal 52-rw-rw-r-- 1 ec2-user ec2-user 710 Nov 17 10:03...
View ArticleMySQL Fabricつらい(Fabricサーバー上のMySQLプロトコルの口でFabricのAPIが呼べる編)
もともとは、mysqlコマンドラインクライアントにHA切り替え機能を実装する編でいじってたクライアントにもう少しパラメーターを突っ込もうとか...
View ArticleMySQL Fabricつらい(FABRIC_OPT_MODE = roでスレーブだけを見に行かせる方法が見つかったと思ったのに失敗した)
FABRIC_OPT_MODE = roはスレーブだけを見に行くわけじゃないの時にはweightにしたがってコネクションがラウンドロビンされるから、スレーブのweightを大きくして誤魔化す的なことをしていたけど、なんかそれっぽいものを見つけた。$ mysqlfabric group lookup_servers my_first_fabricPassword for admin:Fabric...
View ArticleMySQL Sandboxで./use_allをrootでやりたい
いっつも忘れるのだ!前に使ってても忘れるのだ!http://yoku0825.blogspot.jp/2014/11/mysql-fabric_29.htmlこたえ: MYCLIENT_OPTIONS$ ./use_all "select current_user"# server: 1:current_usermsandbox@localhost# server:...
View ArticleMySQL 5.7.5-labsのQuery Rewrite Plugin
Query Rewrite pluginの一番ベーシックな使い方はこちら。The Query Rewrite Plugins | MySQL Server BlogMySQL 5.7.5-labsに$basedir/lib/plugin/install_rewriter_plugin.sqlを食わせてやれば取り敢えず有効になる。MySQL 5.7.5-m15にはこのプラグインは存在しないので注意。$...
View Articlept-query-digest --type tcpdumpに3306以外のポートのダンプを食わせる方法
ハマったのでメモ。サンドボックスな環境でMySQLのポートを64055にしていたら、pt-query-digest --type tcpdumpでそのまま食ってくれなかった。結論、--portとかじゃなく、--watch-serverで指定するんだった。$ sudo tcpdump -i any -p /tmp/test.cap -c 100$ tcpdump -r /tmp/test.cap -n...
View ArticleMySQL Fabricつらい(FabricサーバーがMySQLプロトコルのポートでしゃべってる内容を見てみる)
tcpdump&Wiresharkでさくっと。お手製MySQL Fabric対応mysqlコマンドラインクライアントからMySQL FabricのMySQLプロトコルをしゃべる口に接続して、ちょこちょことステートメントを叩いてみる。$ client/mysql -P 32275 -uadmin -pxxxx --protocol=tcp -h 127.0.0.1...
View Article過去、現在、未来、全宇宙に存在する全てのクソクエリーを、生まれる前に自分の手でカジュアルに消し去ること(仮)
この記事は MySQL Casual Advent Calendar 2014の3日目の記事です。クソクエリーについての名言がつい先週生まれたばかりですが、みなさま如何お過ごしでしょうか。そういえば今年は Kuso-query As A Code みたいな話もさせてもらいました。過去、現在、未来、全宇宙に存在する全てのクソクエリーを、生まれる前に自分の手でカジュアルに消し去るため(仮)に、MySQL...
View ArticleMySQL Fabricつらい(mysql_select_dbがサポートされてない)
昨日パケットキャプチャを取って調べてたときに気付いた、mysql_select_dbが効かない件をぴゃーっと雑に調べてみた。sql-common/client.cのmysql_select_dbを見ると、4493 int STDCALL4494 mysql_select_db(MYSQL *mysql, const char *db)4495 {4496 int error;4497...
View ArticleMySQL Fabricつらい(PerlのDBD::mysqlを対応させる旅路)
この記事は Perl Advent Calendar 2014の4日目の記事です。最近 MySQL Fabricという "MySQLにお手軽HA & シャーディング、しかもプロキシ不要!"なんてことを謳っているミドルウェアで遊んでいるわけですが、このMySQL...
View ArticleMySQL 5.6以降のmysqlコマンドラインクライアントでプロンプトに色を付けるcmakeオプション
この記事は MySQL Casual Advent Calendar 2014の10日目の記事で、7日目の記事 grcでMySQLのクエリ結果に色を付ける へのアンサーエントリーです :)MySQL 5.6.12から、mysqlコマンドラインクライアントが使うデフォルトのreadlineが、フツーの(?)...
View ArticleMariaDB 10.0のCONNECTストレージエンジンからOracle DBに接続してみる
この記事は JPOUG Advent Calendar 2014の10日目の記事です。MariaDB 10.0には CONNECTストレージエンジンという MS...
View ArticleMroongaの全文検索が上手くいかない気がするときの初動メモ
この記事は Groonga Advent Calendar 2014の12日目の記事です。最初は「Mroonga with MySQL Fabric(仮)」というタイトルを考えていたんですが、MySQL...
View ArticleMySQL Fabricのファームにすぐに突っ込めるようなDockerイメージを作ってみた
今までずっと MySQL::Sandbox で試してきたけど、ふと思いついたのでDockerイメージにしてみた。Dockerが面白くて肝心のMySQL Fabricを全然触ってなかった気がするけど、いいの。取り合えずMySQL Fabricに必要な要素としては、* gtid-mode= ON* server-idはカブらないように*...
View ArticleMySQL Fabricつらい(複数グループの視認性が悪いのでスクリプト書いた…けど実は既にあった)
MySQL Fabricの何が面倒って、複数グループあっても登録してるサーバーを全部一覧したいときにそのコマンドがない(ような気がする)ところ。取り敢えずシェルスクリプト書いた。https://github.com/yoku0825/my_script/blob/master/mysqlfabric_tree.sh$ ./mysqlfabric_tree.shglobal...
View ArticleDockerでMySQL Fabricをさっくり試すための整備をしたつもり
みんな、僕と地雷友達になってよ!https://github.com/yoku0825/my_script/blob/master/make_centos_baseimage_for_docker.shMySQL Fabricのファームにすぐに突っ込めるようなDockerイメージ を使ってもろもろ整理した結果、こんなんなりました。確認した環境は、 どっかのVPS の...
View Article