[前][次][番号順一覧][スレッド一覧]

mysql:13719

From: Yasufumi Kinoshita <Yasufumi Kinoshita <kinoshita.yasufumi@xxxxxxxxxx>>
Date: Thu, 08 Feb 2007 11:24:08 +0900
Subject: [mysql 13719] Re: オンラインバックアップデータのリカバリ時のエラーについて

木下です。

Oracle についてのご理解はあるようですので、Oracleに例えて説明します。
MySQL(少なくとも4.1)では、Oracleでいうところの
「ALTER TABLESPACE xxx BEGIN BACKUP」−「ALTER TABLESPACE xxx END BACKUP」
にあたる処理は実装されていませんので、MySQL動作中に普通にコピーや、
たとえストレージの機能でデータファイル等のスナップショットを取っても、
そのファイルから復元できる保障はありません。

4.1では、オンラインでバックアップを行う場合は、mysqldumpを利用するか、
データファイルのバックアップ
http://dev.mysql.com/doc/refman/4.1/en/innodb-backup.html
にあるように「InnoDB Hot Backup」というソフト(有料)を使用する必要があります。

というわけですので、
ログを見ますと、「バックアップファイルからの復元」ではなく、
「クラッシュからの復元」としての扱いを受けているのがわかると思います。

回答になっていますでしょうか?

hiraken wrote:
> こんばんは。はじめまして
> たかひらと申します。
> 
> 最近、OracleDBユーザから、MySQLユーザへ切り替わってきたものです。
> このMLは、過去ログも含め、非常に参考になる情報ばかりで重宝しております。
> 
> さて現在、バージョン4.1.12 をRed Hat Linux ES4上で稼動させた、
> OLTP系のシステムの、バックアップ・リカバリ設計をしておりまして、
> 以下の方法で、オンラインバックアップを行おうと考えています。
> 
> 【バックアップ手順】
>  1. flush tables with read lock;
>  2. flush logs;
>  3. ストレージのスナップショット
>  4. reset master;
>  5. unlock tables;
>  6. 3で取得したスナップショットをテープ等へバックアップ
> 
> 
> しかし、検証環境でリカバリ動作を確認したところ、データは戻し、MySQLを起 
> 動することができたものの、
> 下記リカバリ手順の2.のタイミングで、/var/log/mysqld.logにエラーが出力さ 
> れているのに気づきました。
> 
> 【リカバリ手順】
>  1.バックアップデータを戻す
>  2.ネットワーク接続なしでMySQLを起動
>  3.バイナリログからロールフォワードリカバリ->MySQLを停止
>  4.MySQLを通常起動
> 
> =[リカバリ時のログ]===================================================== 
> ==========
> 070206 15:10:45  mysqld started
> 070206 15:10:45 [Warning] --innodb-safe-binlog is meaningful only if the 
> global sync_binlog variable
> is 1; now setting it to 1.
> 070206 15:10:45  InnoDB: Database was not shut down normally!
> InnoDB: Starting crash recovery.
> InnoDB: Reading tablespace information from the .ibd files...
> InnoDB: Restoring possible half-written data pages from the doublewrite
> InnoDB: buffer...
> 070206 15:10:45  InnoDB: Starting log scan based on checkpoint at
> InnoDB: log sequence number 0 44818.
> InnoDB: Doing recovery: scanned up to log sequence number 0 44904
> InnoDB: Last MySQL binlog file position 0 4, file name 
> /var/lib/mysql/binlog.000002
> 070206 15:10:45  InnoDB: Flushing modified pages from the buffer pool...
> 070206 15:10:45  InnoDB: Started; log sequence number 0 44904
> 070206 15:10:45 [ERROR] After InnoDB crash recovery, checking if the 
> binary log
> '/var/lib/mysql/binlog.000002' contains rolled back transactions which 
> must be removed from it...
> /usr/libexec/mysqld: ready for connections.
> Version: '4.1.12-log'  socket: '/var/lib/mysql/mysql.sock'  port: 0  
> Source distribution
> =[リカバリ時のログ]===================================================== 
> ==========
> 
> 
> [ERROR] After InnoDB crash recovery, checking if the binary log
> '/var/lib/mysql/binlog.000002' contains rolled back transactions which 
> must be removed from it...
> 
> は、
> 『InnoDBのクラッシュリカバリ後、binlog.000002がロールバックトランザク 
> ションを含むバイナリログならば、
> チェックしなさい。』
> という直訳で理解しましたが、binlog.000002自体が、
> バックアップ手順の2.で、flush logsを実行した時にできた、
> 最新バイナリログですので、中身に処理は記載されておりません。
> 従いましてこの場合、このメッセージを無視していいものかどうか、迷っており 
> ます。
> 
> どなたか、同様のご経験をされた方がいらっしゃいましたら、何卒ご教授願いま 
> せんでしょうか。
> 以上、よろしくお願い申し上げます。
> 
> / Takahira Ken
> 
> 
> 


[前][次][番号順一覧][スレッド一覧]

     13712 2007-02-07 03:18 ["hiraken" <hiraken@x] オンラインバックアップデータのリカバリ時のエラーについて
     13713 2007-02-07 10:26 ┣[<ska_king2005@xxxxxx]                                       
     13714 2007-02-07 17:38 ┃┣[<kaidnu2@xxxxxxxxxx>] MySQL GUI-tool ( Linux 版)インストール方法
     13715 2007-02-07 22:02 ┃┃┗[舘山 聖司 <tateyan@x]                                   
     13716 2007-02-07 22:30 ┃┃ ┗[<kaidnu2@xxxxxxxxxx>]                                 
     13717 2007-02-08 01:54 ┃┗["hiraken" <hiraken@x]                                     
     13718 2007-02-08 10:07 ┃ ┗[<ska_king2005@xxxxxx]                                   
->   13719 2007-02-08 11:24 ┗[Yasufumi Kinoshita <]                                       
     13720 2007-02-08 16:10  ┗[<ska_king2005@xxxxxx]                                     
     13721 2007-02-08 17:21   ┗[Yasufumi Kinoshita <]                                   
     13722 2007-02-09 01:33    ┗["hiraken" <hiraken@x]                                 
     13724 2007-02-14 02:05     ┗["hiraken" <hiraken@x]