MySQL Bugs: #82330: Don't recursively-evaluate
stopword after tokenize
ngramパーサー
を使ってアルファベット混じりの日本語全文検索をしようとすると悲劇が起こる。デフォルトのストップワード一覧は このへん 。
MySQL
5.7.13で全文検索INDEXを使ってるんですけど半角英字でヒットする奴とヒットしないやつが居るんですけどこれって何ででしょう…
ちなみに NGRAMを2文字 です。 例えばbabyって単語が含まれてる文章でbabyって単語がヒットしません。 stop …
現状、まだLab版ですが、MySQL5.7の追加のプラグインとして、マルチマスタまたはアクティブ/アクティブレプリケーションをサポートする
同期レプリケーション型のグループレプリケーションが準備されています。まだ、Lab版という事もあり、機能追加やバグ対応などがまだまだ必要な段階ですが、LAB版→DR版→RC版→GA版と段々と安定してくると思いますので、次のLab版がリリースされたら是非検証環境で試してみて頂ければと思います。
マスターサーバーのHA対応やスレーブが多い環境で、マスターサーバーのレプリケーション負荷分散等に活用出来そうです。
Group Replication関連参考ブログを見て頂けると、基本的なインストール方法が書かれていますので試される場合は、此方を参考にして下さい。
…
[さらに読む]前回 MySQL X Protocol で使用している Protobuf について書きましたが、それだけでは MySQL のプロトコルは解析できません。
TCP を流れるデータは区切りがないので、書き込み側が Protobuf データをただ垂れ流しても、読み込む側がどう読んで良いのかわかりません。
書き込むデータの大きさと、書き込む Protobuf データの型を相手に伝える必要があります。
MySQL X Protocol のパケットは次のようになっているようです。
┌────┬─────────────── │size(4) │type(1) + Protobuf(size-1) └────┴───────────────
最初の4バイト(リトルエンディアン)で続くデータ部のサイズを示します。 …
[さらに読む]既に昨日のdb tech showcaseのスライドでご存じの方も多いだろうが、この度MySQL 5.7の新機能を解説するための書籍を発行させていただくこととなった。8月23日発売予定である。
MySQL 5.7の新機能については、これまでブログでは紹介してこなかった。というのも、あまりにもボリュームが多すぎて、ブログという媒体でカジュアルに紹介するには向いていないと思ったからだ。とはいえ、MySQL 5.7を皆さんに使っていただくには、誰かが新機能をしっかりと解説しなければならない。どうするべきか考えた結果、書籍としてまとめて出させていただくことになった。
…
[さらに読む]表題の通り、db tech showcase Tokyo 2016にて、MySQL 5.7の新機能についての解説を行った。スライドをアップロードしたので、セッションに来てくれた方も、見逃したという方もぜひ見て頂きたい。
What's New in MySQL 5.7 InnoDB from Mikiya Okuno 思えば、4年前のdb tech showcaseでMySQL 5.6の新機能について解説したときは、1回のセッションですべての機能を詳解することができた。ところが、MySQL 5.7に至っては、昨年MyNA会でオプティマイザ関連の新機能についての解説を行ったのに続き、今回はInnoDBの新機能だけに的を絞った解説となった。このように小出しにしているのにはワケがある。いや、そもそも小出しにしているというつもりはない。単にMySQL 5.7の新機能が多すぎて
MySQL Fabricでぼっこぼこにされたはなし で考えていた、MySQL
FabricのMySQLプロトコルの口でAPIを叩いて監視しようと思っているはなし。
MySQLプロトコルの口では "CALL" ステートメントをフックして(というか単にクエリーを正規表現でマッチさせて) MySQL
Fabricの各種APIを呼べるようになっている。
=> 日々の覚書: MySQL
Fabricつらい(Fabricサーバー上のMySQLプロトコルの口でFabricのAPIが呼べる編)
ので、これを使うことにする。叩くAPIはたぶんこの辺。
| mysqlfabric | mysql | … |
|---|
MySQL 5.6以降の InnoDB オンラインDDL について、「これってオンラインでできたっけ?」とここ最近だけで何度か聞かれたので。ちなみにここを見てもわかる。MySQL :: MySQL 5.6 リファレンスマニュアル :: 14.11.1 オンライン DDL の概要何故か概要ページにできるかできないかの表があることと、 ALTER TABLE のページから概要ページに直接リンクがないので見つけにくいらしい。で、このページを思い出せなくてもできるかどうか確認する方法。
- 同じ構造を持った空のテーブルを作ります
mysql57> SHOW …[さらに読む]
日々の覚書: MySQL
5.7のmysql_upgradeは本当にDATETIME型を新しいフォーマットに直してくれるけれど でちょっと触れてるんだけど、DATETIME型(TIME型とTIMESTAMP型もあるけど)には現在2つのフォーマットが合って、
- 5.5とそれ以前のDATETIME型(秒部の小数点数非対応、8バイト、以下 旧DATETIME型)
- 5.6とそれ以降のDATETIME型(秒部の小数点数対応、小数部無しの場合は5バイト、以下DATETIME2型)
で、MySQL
5.7のmysql_upgradeは旧DATETIME型をDATETIME2型にアップグレードしてくれるよ、こいつらはレプリケーションで混ぜるとよろしくないから、これで安心だね、みたいなのが
…
MySQL5.7.13以降における、Enterprise Audit機能の改善
MySQL5.7.13以降で、全てのユーザー若しくは、特定ユーザーが特定のテーブルに対して行った、read,insert,update,delete処理のみを監査出来るようになりました。
フィルター作成はJSONフォーマットで定義するようです。この機能は、以前から待ち望んでいたので、嬉しい機能の一つです。
【検証バージョン】5.7.13-enterprise-commercial-advanced-log
フィルタリング詳細:
https://dev.mysql.com/doc/refman/5.7/en/audit-log-filtering.html
例)
こちらは、confidentialテーブルに対してselectしたSQLだけ監査するようにフィルターしてある場合の監査ログです。
【フィルター】
…[さらに読む]
日々の覚書: innotopが最近息してないなーと思ったんだ から
1か月。innotop v1.11 がリリースされました。
v1.10からのアップデート内容はざっくりと
- MariaDB 10.1のサポート #124
- MySQL 5.7のマルチソースレプリケーションに対応 #129
- 壊れたテストの修正 #135- perl 5.22でエラーになる問題の修正 #136- MySQL 5.7で "L", …