MySQLのMVCC:マルチバージョン同時実行制御の仕組み
MySQLのMVCC:マルチバージョン同時実行制御の仕組み
1.1. 基本概念
MVCC(マルチバージョン同時実行制御)
MVCC(Multi-Version Concurrency Control)は、データベース管理システムにおける同時実行制御の手法の一つです。MySQLでは、サーバーレベルではなくInnoDBストレージエンジンによって実装されています。
スナップショット読み取り
ロックをかけないSELECT操作 ...
6月3日 22:58 投稿
MySQLの主要ログ種別とその役割
MySQLには、運用・監視・トラブルシューティングに不可欠な複数のログ種別が存在する。主なものとして、エラーログ、スロークエリログ、トランザクションログ(redo log / undo log)、バイナリログ(binlog)がある。
1. エラーログ(Error Log)
エラーログは常に有効であり、MySQLサーバーの起動・停止時の情報や重大な警告・エラーを記録する。設定項目 log_error で ...
5月28日 01:23 投稿
SHOW ENGINE INNODB STATUSによるInnoDBの詳細な状態分析
MySQLのInnoDBストレージエンジンにおいて、SHOW ENGINE INNODB STATUSコマンドはパフォーマンス障害の診断や内部状態の把握において最も強力なツールの一つです。このコマンドは、セマフォの競合、トランザクションの状態、デッドロック、I/Oスレッドの動作、バッファプールの統計など、リアルタイムで多岐にわたる情報を出力します。本記事では、出力される各セクション ...
5月27日 08:28 投稿
Percona XtraBackupを活用したMySQLデータベースの非ブロッキングバックアップ手法
Percona XtraBackupの概要
Percona XtraBackupは、InnoDBおよびXtraDBストレージエンジン向けに設計されたオープンソースのホットバックアップツールです。稼働中のデータベースに対して非ブロッキングなバックアップを実行可能で、サービス停止なしにデータ整合性を確保できます。MyISAMテーブルのバックアップにも対応していますが、その場合は一時的に読み取りロックが ...
5月23日 22:09 投稿
MySQLの詳細な解説(継続更新中)
ストレージエンジン
データベース操作
テーブル操作
行操作
ストアドプロシージャ
トランザクションの応用と設定(InnoDBエンジン)
インデックス(InnoDBエンジン)
ロックメカニズム
パフォーマンス最適化
ストレージエンジン
SQLクエリはMySQL Serverを通じてストレージエンジンのインターフェースを呼び出し、InnoDB/MyISAMに対応したファイルを操作してデー ...
5月22日 01:42 投稿
MySQLロック機構の詳細な解説
ロック機構の概要
ロックは、複数のプロセスやスレッドがリソースに同時アクセスする際の調整メカニズムです。データベースにおいて、CPU、メモリ、I/Oといった従来のコンピュータリソースに加え、データも多くのユーザーが共有するリソースです。データへの同時アクセスにおける一貫性と有効性を保証することは、あらゆるデータベースが解決しなければならない課題であり ...
5月15日 23:24 投稿
MySQLの高度な機能と内部構造の解説
データベース正規化の基本原則
第一正規形 (1NF)
テーブルの各カラムは分割不可能な原子値を持つ必要があります。
第二正規形 (2NF)
第一正規形を満たし、主キーが存在し、非キーカラムが主キーに完全依存している状態です。
第三正規形 (3NF)
第二正規形を満たし、非キーカラム間の推移的依存関係が存在しない状態です。
ストレージエンジンの詳細
主要ストレージエ ...
5月15日 18:05 投稿