TL;DR mysqldが 本当に 刺さって動作を停止している時のためのメモです。重いだけの時に使うものじゃない。 ざっと見る方法であって、解決方法じゃない。 まずは慌てず騒がずエラーログを見る。クラッシュしてるログが出てるならそれはそれでOK。mysqld_safe とか systemd を使っている場合、 mysqld が自動再起動されているかも知れない。クラッシュリカバリーの真っ最中はプロセスが浮いていても接続できないので、クラッシュリカバリー中だったら見守る。
TL;DR MySQL 8.0(細かくは8.0.4っぽい)とそれ以降は「外部キー制約を持っているテーブルにSELECTするとそのテーブルの親テーブルにもメタデータロック(MDL)を置くようになった」 MDLであるがゆえに foreign_key_checks をOFFにしようが 無効化はできない MySQL :: WL#6049: Meta-data locking for FOREIGN KEY tables WL#6049 “Meta-data locking for FOREIGN KEY tables” and WL#11059 · mysql/mysql-server@6626f76 これ以降にもいくつかコミットが続いている 論より証拠。 サンプルスキーマはこんなかんじ。 CREATE TABLE `item` ( `item_id` int NOT NULL, `registe
GROUP BY implicitly sorts by default (that is, in the absence of ASC or DESC designators), but relying on implicit GROUP BY sorting in MySQL 5.7 is deprecated. $ perl -ML -E 'for (my $n= 1; $n <= 10; $n++) { for (my $m= 1; $m <= 100; $m++) { printf("%d\t%d\n", $n, $m) } }' | sort -R > /tmp/seq mysql80 165> CREATE TABLE t1 (n int, m int); Query OK, 0 rows affected (0.05 sec) mysql80 165> LOAD DATA
日々の覚書: MySQL 5.7.6でmysql.userテーブルのパスワードのカラム名がなんか変わった で「MySQL 5.7ではパスワードハッシュが格納されるカラムが password から authentication_string に変更になった」としていたけれど、ちょっと調べてみたらなんかそれなりに歴史的経緯っぽいものがありました。 旧来(MySQL 5.0, 5.1)は2種類の認証プラグイン( mysql_native_password = 俗称41桁ハッシュ、 mysql_old_password = 俗称16桁ハッシュ) があったが、それを識別するための plugin カラムは無く、「クライアントから送られてきたダイジェストの長さ」でどちらのプラグインを使うか決めて password カラムに入っているパスワードハッシュを引き出して使っていた MySQL 5.5から plu
Sushi = Beer ?! An introduction of UTF8 support in MySQL 8.0 | MySQL Server Blog (ユーザーによる日本語訳: 寿司=ビール問題 : MySQL 8.0でのUTF8サポート入門 (MySQL Server Blogより) | Yakst)で言及されていた日本語用の照合順序 utf8mb4_ja_0900_as_cs 。 mysql80> SHOW COLLATION LIKE 'utf8%ja%'; +-----------------------+---------+-----+---------+----------+---------+ | Collation | Charset | Id | Default | Compiled | Sortlen | +-----------------------+-
MySQL 5.7では迂闊にperformance_schemaをOFFするとSHOW STATUSが使えない(修正されました) 動作は5.7.7で確認していて、 5.7.8で暗黙のデフォルトがOFFになるって書いてある のでやってみた。 MySQL 5.7.6から show_compatibility_56 というサーバー変数が追加されている。 SHOW {GLOBAL|SESSION} STATUS, SHOW {GLOBAL|SESSION} VARIABLES は今まで内部的にinformation_schemaのテーブルを叩いていた。これをperformance_schemaのテーブルを叩くように変えるのがこのパラメーター。 ONだとinformation_schemaから、OFFだとperformance_schemaから情報を取ってくる。 mysql57> SELECT @@
Morgan Tocker というMySQLの中の人(MySQL Community Teamのひと)が 自身のブログ で、MySQL 5.7のデフォルト値の変更に関する意見を募集していたりする。 Proposed MySQL 5.7 defaults. Please send feedback! http://t.co/Uq6c7STXBE — morgo (@morgo) 2015, 1月 23 Proposal to change Replication and InnoDB Settings in MySQL 5.7 http://t.co/gr3AwwmoEv — morgo (@morgo) 2015, 1月 14 ので、ちょっと解説してみます。わたしが勝手に思っていることを述べているだけなので、詳しくは原文をあたってください。 まずはこっち。 Proposal to chan
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く