sql >> データベース >  >> RDS >> Mysql

MySQLバックアップ:個々のMyISAMテーブルファイルを、異なるMySQLバージョンと異なるOSを持つ別のサーバーにコピーできますか?

    同じサーバーのバージョン間でのみファイルレベルのコピーMyISAMテーブル:
    -CPU'エンディアン'(SPARC!=x86)
    -MySQLバージョンは変換なしでアップグレード可能(5.0.48コピーから5.0インデックス構造が変更されたため、.52は不良ですが、5.0.52から5.1.45へのコピーは有効です。

    競合状態に注意してください...データベースがテーブルを読み取っているときに、FTPまたはその他のツールを使用してファイルにアクセスしている可能性があります。 .MYI内には、最も害のないテーブル読み取りでも更新されるテーブル「カウンター」があります。

    以下により、ファイルレベルの操作でMyISAMテーブルの整合性が確保されることがわかりました。

    LOCK TABLE x WRITE;
    FLUSH TABLE x; -- closes all file handles into table by mysql.
       < perform file-level manipulations >
    FLUSH TABLE x; -- A 'stat' of the table occurs and info-schema is updated appropriately.
    UNLOCK TABLES;
    

    テーブルをロック書き込みしない場合、ファイルレベルのコピー/操作を実行しているときにmysqlがテーブルにアクセス(読み取りまたは書き込み)する可能性があります。

    これは、破損の心配なしに、外部ロックが無効になっているHOTデータベース上のテーブルに対して「myisampack」、「myisamchk」を許可するために使用されるメカニズムと同じです。

    --J Jorgenson-



    1. Oracleに複数のレコードを挿入します

    2. より大きなRDSインスタンスに切り替えるタイミング

    3. 現在の日付が2つの日付の間にあるかどうかを確認しますOracleSQL

    4. あるmysqlデータベースから別のmysqlデータベースにテーブルをコピーする方法