See also, 日々の覚書: MySQL 8.0.4でMySQLの正規表現演算がだいぶマシになる MySQL 8.0.4で新たに追加された関数として、 REGEXP_SUBSTR と REGEXP_INSTR がある。 REGEXP_REPLACE もあるけどこれはいいや( mroonga_snippet 的なことができるかもなのでまた別で遊ぶかも) …
[さらに読む]
MySQL8.0.4
RCがリリースされたので、その中でJSON関連の関数JSON_TABLEがリリースされていたので、合わせて挙動を確認してみました。
MySQLにはJSON関数が30弱ありますが、便利なJSON関数が増えてきているので、これまで以上にNOSQL関連データを扱う処理の選択肢として活用出来そうです。
MySQL 8.0.4 Release Candidateの変更点
参照:https://mysqlserverteam.com/the-mysql-8-0-4-release-candidate-is-available/
多くの変更があるので、上記ブログを確認頂いた方が良さそうです。
一部抜粋:
Security:
caching_sha2_password default authentication mechanism
Dynamic Linking of OpenSSL in MySQL
Server(yaSSL->OpenSSL)
…
オープンソースカンファレンス2018大阪(OSC2018-Osaka)に参加してきました。
日本MySQLユーザ会(MyNA)としてブース出展とセミナー1枠開催を。
夜行バスで早朝になんばに到着し、時間に余裕があったのであちらこちら歩き回ってすっかり大阪を堪能しきった気分で私のOSCは始まりました。
…
[さらに読む]TL;DR
- log_error_verbosity のデフォルトが3(Error + Warning + Note) から 2(Error + Warning)に変更されたよ
- MySQL 8.0.4からエラーログのフィールドに
error_idが追加されたよ - “Note”, “Warning”, “Error”の3つだった
severityに “System”が追加されたよ- “System” は “Error” より強いレベルなので
log_error_verbosityが1(最小値)でも出力される
- “System” は “Error” より強いレベルなので
- ↓こんな出力になるよ
2018-01-25T01:22:56.821986Z 0 [System] [MY-010116] /usr/mysql/8.0.4/bin/mysqld (mysqld 8.0.4-rc) starting as process 9206 ...
Messages written to the error log by the log_sink_internal log …
[さらに読む]
Incompatible Change: The caching_sha2_password and
sha256_password authentication plugins provide more secure
password encryption than the mysql_native_password plugin, and
caching_sha2_password provides better performance than
sha256_password. Due to these superior security and performance
characteristics of caching_sha2_password, it is now the preferred
authentication plugin, and is also the default authentication
plugin rather than mysql_native_password. This change affects
both the server and the libmysqlclient client library: MySQL :: MySQL 8.0 Release Notes :: Changes in
MySQL 8.0.4 (2018-01-23, Release Candidate)
MySQLはそれぞれのアカウントが「どうやって認証されるべきか」をアカウント情報の中に持っている(5.6とそれ以降)
mysql.user テーブルには plugin …
5.6.1で既に実装されていてDefaultでONになっているので,5.6や5.7では普段殆ど気にしてませんでしたが、質問頂いたのでindex_condition_pushdownの条件を再確認。
DefaultはONになっています。あえて、OFFにするメリットはあまり無いかと思います。
Index Condition Pushdown(ICP):
ストレージエンジンからフェッチしたレコードをMySQLが評価してWHERE区の条件による絞り込みを行っていたが、
インデックスが貼られたカラムを用いた評価については、ストレージエンジンへ条件式を渡し(プッシュダウン)、ストレージエンジン側で評価を行わせることによってオーバーヘッドの低減させる。
ICPの目標は、完全なレコードの読み取りの回数を減らし、それによって I/O 操作を減らすことです。InnoDB …
[さらに読む]
プラグインディレクトリーを覗いてたら pfs_example_plugin_employee.so
なるファイルがあって知らないものなので調べてみた。 知らないプラグインを見つけた時の身元調査用に使えるかも知れないのでメモ。
まずはビルドしたディレクトリーの中で find
、MySQL(に限らないのかもだけど)ではコンパイルした時にソースコードのすぐとなりにバイナリーが出来上がるので、変に名前の一部からディレクトリーの名前を類推するよりもこっちの方が楽だったりする。
$ find -name "pfs_example_plugin_employee.so"
./plugin/pfs_table_plugin/CMakeFiles/CMakeRelink.dir/pfs_example_plugin_employee.so
./plugin_output_directory/pfs_example_plugin_employee.so
という訳でソースは plugin/pfs_table_plugin の近くにありそう。
…[さらに読む]
MySQL Enterprise Edition on official docker image
商用版のライセンスを利用者が別途準備する事で(Bring Your Own
License)商用版のMySQLをDockerで利用する事が可能です。
https://blogs.oracle.com/mysql/mysql-enterprise-edition-now-in-docker-store
MySQLライセンスについては此方を参照下さい。
https://www.mysql.com/jp/products/
物理サーバーライセンスなので、Dockerを複数立ち上げるような開発環境ではコストメリットが大きいかと思います。
STEP1: Dockerストアにアクセス
https://store.docker.com
https://store.docker.com/images/mysql-enterprise-server
…
[さらに読む]