MySQLでバックアップ(mysqldump、バイナリログ)

   ブックマークに追加する



MySQLでバックアップをとる方法をまとめておきます。結構大切ですからね。
今回はオンラインバックアップとロールフォワードリカバリについてです。

私はMySQLのサイトは以下でバックアップととっています。

# mysqldump --user=root --password=password --single-transaction --master-data=2 
--flush-logs --hex-blob --default-character-set=utf8 database >
/home/user/backup/mysql/mysql-dump.sql

cronでバックアップをとる時は、以下のようなシェルを作成します。
名前は、mysql-dump-backup.shとかにしています。

#!/bin/sh

backupdate=`date +%Y%m%d%H%M`

mysqldump --user=root --password=password --single-transaction --master-data=2 
--flush-logs --hex-blob --default-character-set=utf8 database >
/home/user/backup/mysql/mysql-dump_$backupdate.sql

ロールフォワードリカバリはバイナリログで行うのですが、とる場合ととらない場合があります。
一応基準としては、自分以外の人にもサービスを提供している場合は念のためとっておきます。

my.cnfに以下を追加するとバイナリログの取得ができます。
log-bin=/var/lib/mysql/log/mysql-host
sync_binlog=1

設定例は以下の通り

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-bin=/var/lib/mysql/blog/mysql-host
sync_binlog=1

以下のページを参考にしました
MySQL バックアップ・リストア手順 ? [WordPress] Tips Community

トラックバック(0)

このブログ記事に対するトラックバックURL(トラックバックは承認後に公開されます)

コメントする

このブログ記事について

このページは、Humが2008年4月10日 01:20に書いたブログ記事です。

ひとつ前のブログ記事は「MySQLでスロークエリログを出力する方法」です。

次のブログ記事は「いま、どのポートが開いているか確認する方法(netstat)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

あわせて読みたいブログパーツ
フィードメーター - ウェブ-HACKS 「とりあえずやってみよう!」ブログ   
track feed
  • SEO対策 
  • _ 
  • _ 
  •  
  •  

このブログはクリエイティブ・コモンズでライセンスされています。