MySQL :: MySQL 5.7 Release Notes :: Changes in
MySQL 5.7.6 (2015-03-09, Milestone 16) から抜粋。
MySQL Server from Community Edition distributions now tries to
deploy with SSL support enabled automatically if no SSL options
are specified explicitly and it finds any of the ca.pem,
server-cert.pem, and server-key.pem files in the data directory.
In this case, clients can use a secure connection merely by
specifying --ssl on the command line.
今までは--ssl指定するとついでに--ssl-ca, --ssl-cert,
--ssl-keyを指定してやらないといけなかったのが、datadirからその辺のファイルが見つかれば指定しなくてもよしなにやってくれるらしい。
あと、サーバー側の--sslはデフォルトで有効状態に。
というわけで、 …
MySQL 5.7.5のmysql_install_dbだと
$ bin/mysql_install_db --no-defaults --basedir=./ --datadir=./test_575 -v
2015-03-12 11:23:45 [NOTE] Creating data directory ./test_575
2015-03-12 11:23:45 [NOTE] Generating random password to /root/.mysql_secret...done.
2015-03-12 11:23:45 [NOTE] Executing /opt/mysql/5.7.5/bin/mysqld --no-defaults --bootstrap --datadir=./test_575 --lc-messages-dir=./share --lc-messages=en_US --basedir=.
2015-03-12 11:23:46 [NOTE] Creating system tables...done.
2015-03-12 11:23:46 [NOTE] Filling system tables with data...done.
2015-03-12 11:23:47 [NOTE] Filling help table with data...done.
2015-03-12 11:23:47 [NOTE] Creating default user root@localhost
2015-03-12 11:23:47 [NOTE] Creating default proxy root@localhost
2015-03-12 11:23:48 [NOTE] Success!
…
日々の覚書: プレビュー "MySQL 5.7.6のInnoDB日本語全文検索 MeCab
Plugin" に引き続き、今度はngramなトークナイザー。ドキュメントは ここ 。
MeCab Pluginと違って特にINSTALL
PLUGINとかせずに即使える。
mysql> ALTER TABLE articles ADD FULLTEXT KEY (title, content) WITH PARSER ngram;
Query OK, 0 rows affected (6 hours 25 min 20.67 sec)
Records: 0 Duplicates: 0 Warnings: 0
( д ) ゚ ゚ 6時間半!? …
取り敢えずダミーデータを突っ込んだテーブルを自己結合しつつぐりぐりソートしてテンポラリーテーブルを作らせる。
$ perl -M"Digest::MD5 'md5_hex'" -e 'for ($n = 1; $n <= 1000000; $n++) { printf("%d\t%s\n", $n, md5_hex($n)); }' > /tmp/md5
mysql> create table t1 (num serial, val varchar(32));
Query OK, 0 rows affected (0.01 sec)
mysql> LOAD DATA INFILE '/tmp/md5' INTO TABLE t1;
Query OK, 1000000 rows affected (8.88 sec)
Records: 1000000 Deleted: 0 Skipped: 0 Warnings: 0
mysql> explain SELECT * FROM t1 LEFT JOIN t1 AS t2 USING(num) LEFT JOIN t1 AS t3 USING(num) ORDER BY t1.val ASC, t2.val DESC, t3.val ASC;
+----+-------------+-------+------------+--------+---------------+------+---------+-----------+--------+----------+---------------------------------+
| id | select_type | table | partitions | type | possible_keys | key | …[さらに読む]
MySQL 5.7.6で追加された新しいp_sのステージ情報から、 合法的に InnoDBに進捗どうですか?
を聞けるようになったらしい。
MySQL :: MySQL 5.7 Reference Manual :: 14.13.11.1
Monitoring ALTER TABLE Progress for InnoDB Tables Using
Performance Schema
setup_instrumentsでalter table関連のやつ(デフォルトOFF)と
mysql> SELECT * FROM setup_instruments WHERE name LIKE 'stage/innodb/alter%';[さらに読む]
+------------------------------------------------------+---------+-------+
| NAME | ENABLED | TIMED |
+------------------------------------------------------+---------+-------+
| stage/innodb/alter table (end) | NO | NO |
| stage/innodb/alter table (flush) …
MySQL 5.7.6メモそのいくつか。
今までgtid-mode= ONとOFFのマスター,
スレーブは混在できなかったので、ONにするときは一度レプリケーション群を全部止めて起動しなおさなければいけなかった。それが、出来るようになったという話。
MySQL Bugs: #71543: A new GTID_MODE is needed to
evaluate/migrate to GTID: ANONYMOUS_IN-GTID_OUT.
MySQL :: WL#7083: GTIDS: set gtid_mode=ON
online
Percona Server
5.6.22では一足先にリリースされてましたね。やってることは同じだけど実装が違うっぽい予感。
Online GTID rollout now available in Percona …
ワーニングが出るようになってますね。
「sql_modeのデフォルトにNO_AUTO_CREATE_USERを設定しようと思う」っていうネタがMorgan
Tockerのブログにあがってましたのでその布石でしょうか。
mysql> SELECT @@sql_mode;[さらに読む]
+---------------------------------------------------------------+
| @@sql_mode |
+---------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
+---------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO replicator IDENTIFIED BY 'replicator';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> …
MySQL :: MySQL 5.7 Reference Manual :: 12.9.9
InnoDB MeCab Full-Text Parser Plugin の内容のおさらい。
まず、基本的なライブラリーと辞書は(この記事を書いている時点では).tar.gzバイナリーに同梱されているっぽいのでそちらを使う。Oracle公式のyumリポジトリー
からインストールできるrpmには含まれていないように見えるので、その場合は別途突っ込まないといけないはずだけど、libpluginmecab.soが何かにダイナミックリンクしているわけではないので、辞書だけ取ってきてmecabrcに設定すればいけるような気がする。詳しく調べてない。
…
MySQL::Sandboxを使ってレプリケーションをセットアップしようと思ったらふと気付いた。
[mysql@v157-7-154-209 ~]$ make_replication_sandbox 5.7.6 --how_many_slaves=2
installing and starting master
ERROR 1064 (42000) at line 3: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'password('msandbox')' at line 1
mysqldump: Got error: 1045: Access denied for user 'msandbox'@'localhost' (using password: YES) when trying to connect
can't load grants
error installing the master
(512 )
Syntax Error…?
手で打ってみた。
mysql> SET PASSWORD= PASSWORD('root_password');
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near …[さらに読む]
いいことだと思います :)
MySQL :: MySQL 5.7 Reference Manual :: 5.1.3
Server Command Options
2015-02-17T07:09:49.446585Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict locatio
n of generated files. Consider setting it to a valid, non-empty path.
ちなみにこのオプション、5.0.38からあるけど知名度が低い。いい加減、自分たちが何かアクションしないと誰も設定してくれないことに気付いたのかしら。。
MySQL :: MySQL 5.0 Reference Manual :: 5.1.3
Server Command Options
( ´-`).oO(前に …