Quantcast
Channel: 日々の覚書
Browsing all 581 articles
Browse latest View live

MySQL Casual Talks vol.10でトークしてきたMySQL的アンチパターン

昨夜の MySQL Casual Talks vol.10 は盛り上がりましたね!総勢10名の登壇者ズがおよそ3時間にわたって繰り広げた **カジュアルな** トークの模様は↓にまとめました。MySQL Casual Talks vol.10まとめ - Togetterまとめで、俺のヤーツは久々に(?)...

View Article


mysqlimportはトランザクションがきくのかどうか

TL;DR- 1テキストファイル内でのトランザクションは利く- 複数テキストファイル食わせた時のテキストファイル間のトランザクションは autocommit 依存 効かない  - というか、 autocommit=0 だと mysqlimport さん使えないことが判明  - ただし...

View Article


MariaDB 10.2.4の --flashback を触ってみる

ドキュメントはこちら。Flashback - MariaDB Knowledge Base"Common use case"をとっても雑に説明すると、- `--flashback` をつけたmysqldが吐いたバイナリーログに対して- `mysqlbinlog --flashback` でデコードすると、フラッシュバックっぽいことができるという感じ。まず、サーバー側の `--flashback`...

View Article

OSC 2017 Tokyo/Spring でMySQL 8.0を雑に予測してきた

ネタ的には YAPC::Hokkaido 2016 Sapporo の時のリライト(8.0.1のリリースノートの情報を追加した感じ)で、相変わらずいくつかの側面に分けてMySQL 8.0に期待していることやこうなるんじゃないかな感を発表しました。MySQL...

View Article

sql_select_limitを設定したらXtraBackupがsignal 11で転けた

TL;DRSET GLOBAL sql_select_limit = ?で結果セットのサイズを制限していると、xtrabackupが内部的に発行している SHOWステートメントの出力結果が切り詰められてクラッシュすることがある。xtrabackupで遊んでいたら、ある時からおもむろにsignal 11で落ちるようになった。それ以前はフツーにバックアップ取れてたのに。$ innobackupex -S...

View Article


mysqlディレクトリーに知らない.ibdファイルがある in MySQL 8.0.0

InnoDBログをcatしたら見知らぬibdファイルの名前が書いてあることに気が付いた。 mysql/character_sets.ibdなるファイルに書き込みをしているようだが、mysql80> SHOW TABLES FROM mysql LIKE '%char%';Empty set (0.00 sec)そんなテーブルは存在しない。$ ll...

View Article

Image may be NSFW.
Clik here to view.

MySQL 8.0.1でutf8mb4_ja_0900_as_csが導入された

Sushi = Beer ?! An introduction of UTF8 support in MySQL 8.0 | MySQL Server Blog(ユーザーによる日本語訳: 寿司=ビール問題 : MySQL 8.0でのUTF8サポート入門 (MySQL Server Blogより) | Yakst)で言及されていた日本語用の照合順序...

View Article

MySQL 8.0.1の新顔、GROUPING集約関数

TL;DRWITH ROLLUPの結果行をHAVING条件に書けるようすることができる。 それ以外の時には使わない。MySQL :: MySQL 8.0 Reference Manual :: 13.20 Miscellaneous Functions使い方。 そもそも WITH ROLLUPの使い方を知らないと楽しくもなんともないので WITH ROLLUPの説明から。まずは WITH...

View Article


xtrabackupが実行中かどうかをSQLだけで確認する思考実験

はじまりは 畜生ペンギン@keny_lalaのひとこと。xtrabackupが今稼働中だよーってことがOSコマンドじゃなくてMySQLから分かる方法ありませんか?— kentarokitagawa (@keny_lala) 2017年4月13日Percona Serverには LOCK TABLES FOR BACKUPとかあったよなと思いつつ、たぶんPercona...

View Article


MySQL 8.0.1からJOIN_ORDERヒントが書ける

こんな、ORDER BY狙いのキーを使いたくなるクエリーがあるじゃろ?mysql80> EXPLAIN SELECT Name, Language, Population, Percentage FROM CountryLanguage LEFT JOIN Country ON Country.Code= CountryLanguage.CountryCode WHERE...

View Article

MySQL 5.7.17からエラーログに出るようになった deprecated partition engine に関するNote

こんなやつのこと。2017-04-18T23:54:08.224673+09:00 0 [Note] /usr/mysql/5.7.18/bin/mysqld: ready for connections.Version: '5.7.18-log' socket: '/usr/mysql/5.7.18/data/mysql.sock' port: 64057 Source...

View Article

MySQLのDATETIME型で秒の小数部を扱うときのDEFAULT句

この CREATE TABLEステートメントは転ける。mysql57> CREATE TABLE t1 (num INT UNSIGNED NOT NULL, dt DATETIME(3) DEFAULT CURRENT_TIMESTAMP);ERROR 1067 (42000): Invalid default value for 'dt'CURRENT_TIMESTAMP関数が...

View Article

MySQL 8.0のDROP TABLEがアトミックになっているっぽい件

MySQL 5.7とそれ以前で、「存在するテーブルと存在しないテーブルを一緒にDROP TABLE」しようとするとmysql57> CREATE TABLE t1 (num int);Query OK, 0 rows affected (0.01 sec)mysql57> CREATE TABLE t3 (num int);Query OK, 0 rows affected (0.01...

View Article


MySQL 8.0.1でバイナリーログに original_commit_timestamp と immediate_commit_timestamp...

See also New monitoring replication features and more! | MySQL High Availabilityoriginal_committed_timestampはマスターで実行された時のタイムスタンプが、immediate_commit_timestampはそのサーバーで実際に実行された時のタイムスタンプがそれぞれ入る。...

View Article

MySQLユーザ会会 in 長野 2017に参加してきましたよ

MySQLユーザ会会 in 長野 2017に逝ってきました!開催の経緯とかはとみたさんのブログ MySQLユーザ会会 in 長野 を開催しました - @tmtms のメモ、当日のふいんき(何故か変換できない)はTogetter MySQLユーザ会会 in 長野 2017 -...

View Article


MySQLのSELECT .. FOR UPDATEはREPEATABLE-READでも直近にコミットされたレコードを返す

TL;DRトランザクション分離レベルがREPEATABLE-READの場合、SELECT .. FOR UPDATEやSELECT .. LOCK IN SHARE MODEとロックなしのSELECTの結果が違うことがある。仕様らしい => 漢(オトコ)のコンピュータ道: InnoDBのREPEATABLE READにおけるLocking...

View Article

MySQL 5.6のmysqldumpでMySQL 5.7のサーバーに接続してダンプを取ろうとするとコア吐く件

TL;DRMySQL 5.7.12とそれ以降のmysqldumpなら大丈夫コミットはこれ実はバージョン依存ではなく sql_mode=ONLY_FULL_GROUP_BY依存別のものを調べている時に /var/log/messages を見てたら、なんかがコア吐いてるのに気が付いた。Jun 20 04:26:42 archive_host kernel: mysqldump[28611]:...

View Article


MySQLのauto_incrementは実質ULLONG_MAX - 2で打ち止まるはなし

TL;DRAUTO_INCREMENT属性のあるカラムで払い出す値は負値を取れないことは有名だけれどでも MySQL :: MySQL 5.6 リファレンスマニュアル :: 3.6.9 AUTO_INCREMENT の使用には書いてなかったな、どこに書いてあるんだっけな。。実はauto_incrementの現在地が符号なしBIGINTの最大値 -...

View Article

mysqld_safeに "--ledir option can only be used as command line option"と言われたら

TL;DRmy.cnfに書いてある ledirの行を消す今までmy.cnfに書いてあった ledirは mysqld_safeにコマンドラインオプションとして渡すex. mysqld_safe --defaults-file=/data/mysql/my.cnf --ledir=/usr/local/mysql/binパッケージもの以外のMySQLで、...

View Article

Image may be NSFW.
Clik here to view.

割と安全にpt-online-schema-changeとかpt-table-checksumを取るための簡単なやり方

TL;DR日々の覚書: pt-online-schema-change(と、pt-table-checksumとかもろもろ)の—recursion-methodについてをもっと即物的にした感じマスターの外側のIPを接続元にして...

View Article
Browsing all 581 articles
Browse latest View live