スマートスタイル TECH BLOG

データベース&クラウド技術情報

MySQL( 3 )

Tagged
Primary keyの選び方
1221

Primary keyの選び方

Primary keyの選び方 テーブル定義を行うときに一つのテーブルの中にPrimary keyの候補(一意制約あり、NOT NULL制約あり)が複数存在する場合、InnoDBのテーブルではどのカラムをPrimary Indexとして選択するのが望ましいのでしょうか? 前提知識としてのInnoDBのデータ構造(Pri...
時系列データの削除について
2514

時系列データの削除について

時系列データの削除について サービスを構築する場合、どのようなサービスでも時系列に沿ってデータを記録するログのようなテーブルは、必ずと言って良いほど存在しています。 この時系列でデータを記録するログテーブルは、サービスが稼働し続ける限り追記され続けます。データが溜まり続けるとデータベースのストレージ容量を圧迫するため、...
pt-deadlock-loggerでデッドロックの情報を収集する
1723

pt-deadlock-loggerでデッドロックの情報を収集する

はじめに MySQLでデッドロックに関する問題があり調査したいとき、InnoDB Monitor出力の LATEST DETECTED DEADLOCK セクションから直近に発生したデッドロックを確認することができます。ただし、これは直近で発生した1件しか確認ができません。 innodb_print_all_deadl...
ProxySQL Cluster の紹介
1715

ProxySQL Cluster の紹介

はじめに ハイパフォーマンスで多彩な機能として人気のデータベース用プロキシ ProxySQL ですが、ネイティブなクラスタ機能を有していることをご存じでしょうか。 ProxySQL Cluster – ProxySQL v1.4.2 で実験的に実装され、その後 Bug 修正もありつつ、v2.1.0, 2.4...
MySQL 8.0
1251

Query Rewrite プラグインの利用と性能影響について

はじめに MySQL では 5.7 から、Query Rewrite プラグイン を使用することができます。 このプラグインが有効になっている場合、サーバーでクエリが実行される前にチェックされて、指定した条件に合致していた場合は書き換えがおこなわれてから実行されるようになります。 このとき、書き換えの対象となるのは M...
Skeema を使ってみた
2100

Skeema を使ってみた

Terraform や Kubernates のマニフェスト等、インフラ界隈ではより安全でバージョン管理可能、かつ自動化に組み込みやすい「宣言型」の方法での構築が流行ですが、MySQLにもサードパーティ製の宣言型スキーマ定義ツールであるSkeemaがありますので、今回試してみました。 検証環境 おなじみの dbdepl...
MySQLのコアファイルの出力について
2836

MySQLのコアファイルの出力について

MySQLのサポート業務では、(ユーザー視点では)突然 Signal 6 や Signal 11 をmysqldが受け取ってダウンするという問い合わせを頂く事が度々あります。 MySQLは数多くのバグフィックスや改善によって、頻繁にダウンすることはありません。 ちなみにGithub上のここ10年のCOMMIT数を数えて...
InnoDB Cluster・Group Replication の監視方法について
1893

InnoDB Cluster・Group Replication の監視方法について

今回は、InnoDB Cluster, Group Replication の監視方法に関して紹介していきます。 パフォーマンススキーマのグループレプリケーション関連テーブルを把握する まず基本的な情報として、Group Replication では通常の MySQL の監視項目に追加して監視すべきパフォーマンススキー...
Return Top