地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

クラッシュ の検索結果:

【Linux】カーネルクラッシュ関連のパラメータたち

カーネルパニックに関するパラメータ /proc/sys/debug/panic_on_rcu_stall 値: 1 説明: RCU (Read Copy Update) のストールが発生した際にカーネルパニックを引き起こします。 /proc/sys/vm/panic_on_oom 値: 1 または 2 説明: 1の場合、OOM (Out Of Memory) 発生時かつ物理メモリが枯渇している場合にカーネルパニック。 2の場合、OOM 発生時に強制的にカーネルパニック。 /p…

【MySQL】innodb_doublewriteのDETECT_ONLYパラメータ

…であり、特にシステムクラッシュやハードウェア障害が発生した場合に役立ちます。 機能の概要 データ整合性の確保: InnoDBはデータページを書き込む際に、まずそのデータを「ダブルライトバッファ」という特別な領域に書き込みます。このバッファはデータファイルとは別の場所に存在します。 ダブルライトバッファへの書き込み: データページがダブルライトバッファに書き込まれた後、そのデータはディスク上の実際のデータファイルに書き込まれます。 障害時の回復: 書き込み途中にクラッシュが発生…

【MySQL】データディクショナリを調べる

…ックじゃなかったのでクラッシュした際にまあ大変なことになるのは容易である(一部の変更が完全には反映されず、データベースの状態が不整合に陥る可能性があった)。それがatomicになることでクラッシュしても問題がないようになった。ただクラッシュセーフになるだけでトランザクショナルではないのでrollbackができたりするわけではないようだ。つまり成功した場合はその内容が反映されるということになる。 ポスグレだと MySQLではできないロールバックまで実行可能。 everythin…

【MySQL】InnoDBはどのようにデータの破損を検出しているのか

…あります。(ちなみにクラッシュ後に自動的に再起動されるように設定する方法は、使用しているオペレーティングシステムとその管理システムに依存します。systemdとかでも自動起動とかは可能です) www.percona.com innodb_force_recoveryをつけて再起動することで壊れ方次第ですが復旧することができます(クラッシュリカバリは過去に色々書いてるのでみていただければと) dev.mysql.com innodbのチェックサムアルゴリズムは指定できる ディス…

【MySQL】binlogとredoログの2PC

…んだ後にMySQLがクラッシュしたとしたらbinlogとの内容が一致しないということが起こり得ます。処理としては以下のようになります。 prepare状態にしredo logへ書き込む binlogへ書き込む redo logをcommitへ変更する リカバリ 最後のbinlogをスキャンして xid を抽出します (binlog内のイベントを特定します) xid は redo logにも書き込まれます。redo logのprepareの xid と最後のbinlogの xi…

【MySQL】Redoログを無効化する

dev.mysql.com 本番で使うのは想定されていないようだがレプリカラグがひどくて〜とかの場合に一部ケースで使えるかもしれない?クラッシュリカバリできなくなるというが少しでも早く本番投入したいレプリカサーバとかで使うとIOが減ってサービスインまでの時間が短くなるみたいなケースでは使えるのではないだろうか。 参考 atsuizo.hatenadiary.jp

【RDS】RDSでBlue/Greenデプロイ!すごい!!すごい!!!!(色々修正版)

…ySQLのレプリカはクラッシュセーフじゃなかったらしい。IOスレッドとSQLスレッドはそれぞれどこまで適用したかを管理ファイルに書き込んでいたためSQLスレッドがトランザクションを実行してコミットした後にサーバがクラッシュするとSQLスレッドはどこまでbinlogを適用したかを管理ファイルに書き込むこと無く終了してしまう。サーバの再起動時にトランザクションが2回実行されて不整合が起きてしまうという。これを解決するのがrelay_log_info_repositoryをTABL…

【MySQL】クラッシュリカバリのUndoフェーズでやること

MySQLのクラッシュリカバリでUndoフェーズ必要なのなんでだろ— Ryuichi@Gurasan:|| (@ryuichi_1208) 2022年11月6日 散歩中に疑問に思ったので調べた。クラッシュ時のシナリオとリカバリの時の脳内のダンプを書いておく TxA, begin レコードAをUpdate buffer poolの書き換え undoログへ書き込み(2->1へする) redo log bufferへ書き込み 未コミット サーバクラッシュ 再起動 redoフェーズ …

【Linux】TCPの再送制御あたりのソースを眺める

… (2) アプリ側のクラッシュも考慮するならDB側でも対処が必要 参考リンク TCP再送タイムアウト時間の規格と実装 - co1row’s diary TCPの再送時間について – くじらぴーまん LinuxのTCP SYNの再送間隔の初期値が3秒から1秒に変更されていた - 元RX-7乗りの適当な日々 sockets - How to hack into the Unix Kernel to remove the Exponential Backoff from TCP? …

【Linux】TCPの再送制御あたりのソースを眺める

… (2) アプリ側のクラッシュも考慮するならDB側でも対処が必要 参考リンク TCP再送タイムアウト時間の規格と実装 - co1row’s diary TCPの再送時間について – くじらぴーまん LinuxのTCP SYNの再送間隔の初期値が3秒から1秒に変更されていた - 元RX-7乗りの適当な日々 sockets - How to hack into the Unix Kernel to remove the Exponential Backoff from TCP? …