mysql:9866
From: "HIROSE, Masaaki" <"HIROSE, Masaaki" <hirose31@xxxxxxxxxx>>
Date: Fri, 16 Jul 2004 00:08:46 +0900
Subject: [mysql 09866] Re: レプリケーションスレーブの能動的な同期
ひろせです on "[mysql 09845] Re: レプリケーションスレーブの能動的な同期" <20040714002204.34cb26c1.y-ito@xxxxxxxxxx> at Wed, 14 Jul 2004 00:22:04 +0900 Yasumitsu Ito <y-ito@xxxxxxxxxx> wrote: > > ところで、レプリケーションが取れている状態で > > マスターであるテーブルに値をインサートし、 > > 直後にスレーブ側で > > > > mysql> show processlist; > > > > を実行すると、私の環境では以下のように、 > > Time: 欄が非常に大きく表示されてしまいます。 > > > > *************************** 2. row *************************** > > Id: 75 > > User: system user > > Host: > > db: NULL > > Command: Connect > > Time: 4294967273 > > State: Has read all relay log; waiting for the I/O slave thread to update it > > Info: NULL > > *************************** 3. row *************************** > > > > バグかと思い、 MySQL-4.0.20 (OS: VineLinux 2.93) で試したのですが、 > > やはり同じ値です。 > > バグなのでしょうか? > > ちなみに、 > > 2^32 = 4294967296 > > でした。 > > 上記現象ですが、別の環境 > > TurboLinux 8.0 WS == replication => TurboLinux 8.0 WS > MySQL-4.0.18-*.rpm (本家RPM) > > では起きませんでした。 > Timeはちゃんと0から始まりました。 http://dev.mysql.com/doc/mysql/ja/Replication_FAQ.html の Q: スレーブがマスタと比較してどれだけ遅れているかを知るにはどうすればい いですか。つまり、スレーブによってレプリケートされた最後のクエリの日 付を知る方法はありますか。 によれば、 A: …実際、スレーブ SQL スレッドがマスタから読み取ったイベントを実行す ると、このスレッドは自分の時間をそのイベントのタイムスタンプに修正し ます(これが、TIMESTAMP もレプリケートする理由です)。結果、SHOW PROCESSLIST 出力の Time カラムでスレーブ SQL スレッドに対して表示さ れる秒数は、最後にレプリケートされたイベントのタイムスタンプとスレー ブマシンの実際の時刻の差になります。… とあるので、スレーブよりマスターの時計が進んでいると、このように Time の値が 2^32 に近い数値になるんじゃないでしょうか。 ではでは -- ひろせ http://www.irori.org/
9789 2004-07-07 15:33 [Yasumitsu Ito <y-ito] レプリケーションスレーブの能動的な同期 9790 2004-07-07 21:58 ┣["Ohashi Koji" <ohash] mysqldumpの出力結果を取り込もうとするとUnknwon command 9804 2004-07-09 19:06 ┗["HIROSE, Masaaki" <h] 9805 2004-07-09 23:43 ┗[Yasumitsu Ito <y-ito] 9845 2004-07-14 00:22 ┗[Yasumitsu Ito <y-ito] -> 9866 2004-07-16 00:08 ┗["HIROSE, Masaaki" <h]