MySQL 5.7で絶対に必要になると思うlog_timestampsの設定
気づかなかったけど、これ5.7.2から入ってたのか。フツーに扱うDATETIME型(やその親戚)は time_zone 変数に支配されるけど、ログに出力される時刻は log_timestamps 変数に支配される。この変数の取りうる値は UTC または SYSTEM で、暗黙のデフォルトはUTC 。。mysql57> SELECT @@version;+---------------+|...
View ArticleInnoDB Deep Talks #2 (仮) でちっともディープじゃない話をしてきました
先週土曜日に 【増枠120名】InnoDB Deep Talk #2(仮) - connpass というイベントがありました。主宰の @ts4th さん、お疲れ様でした。ピザごちそうさまでした。Togetterまとまってましたね。InnoDB Deep Talk #2(仮) - Togetterまとめわたしの ぐだぐだInnoDB...
View ArticleMySQL 5.6 InnoDB FTSのinnodb_ft_*_stopword_tableがもんにょりしている
日々の覚書: MySQL 5.6 InnoDB FTSのストップワードテーブルを設定する のつづき。innodb_ft_server_stopword_table はmysqld全体で1つのグローバル変数のみを持ち、それはつまり全てのテーブルと全てのインデックスでこのストップワードテーブルを共有することになる。それに対して innodb_ft_user_stopword_table...
View ArticleMySQL 5.7.6でデータベースの初期化が変わる mysql_install_dbからmysqld --initialize
MySQL 5.7.6のメモその1。MySQLの初期化がmysql_install_dbからmysqld --initializeに変わる。リリースノートのいわく、mysql_install_db functionality now has been integrated into the MySQL server, mysqld. To initialize a MySQL...
View ArticleMySQL 5.7.6でmysql.userテーブルのパスワードのカラム名がなんか変わった
日々の覚書: プレビュー "MySQL 5.7.6ではSET PASSWORD = PASSWORD(..) するとSyntax Errorと言われる" で引っかかってる時に気が付いた。今どのユーザーが登録済みか、SQLでよくやるじゃないですか。mysql> SELECT user, host, password FROM...
View ArticleMySQL 5.7.6でエラーコードが変わった件
MySQL 5.7.5と5.7.6をどこかに置いてdiffを取るのが便利。コマンドはこんな感じ。[root@v157-7-154-209 mysql]# diff -y -W 150 --suppress-common-lines 5.7.5/include/mysqld_error.h 5.7.6/include/mysqld_error.h |...
View ArticleMySQL 5.7.6は--secure-file-privを設定してないとWarningを吐くようになった
いいことだと思います :)MySQL :: MySQL 5.7 Reference Manual :: 5.1.3 Server Command Options2015-02-17T07:09:49.446585Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict...
View ArticleMySQL 5.7.6ではSET PASSWORD = PASSWORD(..) するとSyntax Errorと言われる
MySQL::Sandboxを使ってレプリケーションをセットアップしようと思ったらふと気付いた。[mysql@v157-7-154-209 ~]$ make_replication_sandbox 5.7.6 --how_many_slaves=2installing and starting masterERROR 1064 (42000) at line 3: You have an error...
View ArticleMySQL 5.7.6のInnoDB日本語全文検索 MeCab Plugin
MySQL :: MySQL 5.7 Reference Manual :: 12.9.9 InnoDB MeCab Full-Text Parser Plugin の内容のおさらい。まず、基本的なライブラリーと辞書は(この記事を書いている時点では).tar.gzバイナリーに同梱されているっぽいのでそちらを使う。Oracle公式のyumリポジトリー...
View ArticleMySQL 5.7.6でCREATE USERせずにGRANTステートメントを叩くとワーニング
ワーニングが出るようになってますね。「sql_modeのデフォルトにNO_AUTO_CREATE_USERを設定しようと思う」っていうネタがMorgan Tockerのブログにあがってましたのでその布石でしょうか。mysql> SELECT @@sql_mode;+---------------------------------------------------------------+|...
View ArticleMySQL 5.7.6でGTIDのローリング有効化ができるようになったので、システム全体を一度にシャットダウンしなくてもOK
MySQL 5.7.6メモそのいくつか。今までgtid-mode= ONとOFFのマスター, スレーブは混在できなかったので、ONにするときは一度レプリケーション群を全部止めて起動しなおさなければいけなかった。それが、出来るようになったという話。MySQL Bugs: #71543: A new GTID_MODE is needed to evaluate/migrate to GTID:...
View ArticleMySQL 5.7.6のPerformance SchemaでInnoDBのALTER TABLE進捗どうですか
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...
View ArticleMySQL 5.7では暗黙のテンポラリーテーブルにもInnoDBが使われる
取り敢えずダミーデータを突っ込んだテーブルを自己結合しつつぐりぐりソートしてテンポラリーテーブルを作らせる。$ perl -M"Digest::MD5 'md5_hex'" -e 'for ($n = 1; $n <= 1000000; $n++) { printf("%d\t%s\n", $n, md5_hex($n)); }' > /tmp/md5mysql> create...
View ArticleMySQL 5.7.6のInnoDB日本語全文検索 ngram
日々の覚書: プレビュー "MySQL 5.7.6のInnoDB日本語全文検索 MeCab Plugin" に引き続き、今度はngramなトークナイザー。ドキュメントは ここ 。MeCab Pluginと違って特にINSTALL PLUGINとかせずに即使える。mysql> ALTER TABLE articles ADD FULLTEXT KEY (title, content) WITH...
View ArticleMySQL 5.7.6でmysql_install_db(とmysqld --initialize)がSSL証明書のファイルを作っているぽいのであとで調べたい
MySQL 5.7.5のmysql_install_dbだと$ bin/mysql_install_db --no-defaults --basedir=./ --datadir=./test_575 -v2015-03-12 11:23:45 [NOTE] Creating data directory ./test_5752015-03-12 11:23:45 [NOTE] Generating...
View ArticleMySQL 5.7.6からSSL周りのセットアップが扱いやすくなった
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...
View Articlemysqlfabric shardingで分割したデータの読み込み
mysql fabricにて書き込みのRANGEシャーディングしたテーブルから、 データを読み込みの確認。 分割定義 # Create Sharding Grop1 mysqlfabric group create shard1 mysqlfabric group add shard1 127.0.0.1:63304 mysqlfabric group add shard1...
View Articlemysqlfabric group add実行時のデータ同期
mysqlfabric group add実行時の新規追加サーバーのデータ同期について。 1)マスターDBに必要なバイナリーログがある場合は、新規Slaveがログを読み込んでデータ同期。 2) マスターDBに必要なバイナリーログが無い場合は、新規Slaveにデータをリストアしてからmysqlfabric group addコマンドを実行。 ■ mysqlfabric group...
View ArticleMySQL Fabricにおけるsharding Table定義の変更
MySQL Fabricにて”Global” という名前でグループを作成し,その中にサーバを三台登録してあります。 本日は、Shardingの作成とShardingされたTableとグループ全体に対してDDLを実行しました。 【目的】 ShardingされたMySQL Fabric GroupへのCRATE,ALTERなどのDDLの実行と適用範囲の確認 ■ Sharding作成前の状況...
View ArticleMySQL Audit Logのローテーション
MySQL 監査ログのローテション MySQL Enterprise Auditで取得した監査ログをMySQL Utilitiesを利用して、 定期的にローテーション出来るかどうか確認してみました。 ログをローテーションした結果 Audit Logのローテーションとしては、以下の2パターンがあります。 1) ログサイズによる自動ローテーション...
View Article