さくらサーバーのMYSQLをバックアップする方法についての質問です。


データが全部で1Gほどある(テーブル1つで数百Mのものもあります)のでphpmyadminからはエクスポートできません。
MYSQLの操作をphpmyadminからしかやったことがないまったくの素人でして、どのようなソフトからどうやってエクスポート&インポートしたらよいのかがわかりませんので、ご教授ください。

さくらサーバー:スタンダード
MYSQL5.1

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/05/30 23:28:17
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:koriki-kozou No.3

回答回数480ベストアンサー獲得回数79

ポイント100pt

>データが全部で1Gほどある(テーブル1つで数百Mのものもあります)

cron の設定は特に問題はないけれどファイルサイズが大きくなると処理時間がかかるし、毎日1GBフルバックアップなんてのは馬鹿げていますよね

ローカルにダウンロードするのも一苦労どころの話じゃない


仮に、cronで毎日1回バックアップを取るとしても、新しい日付のデータだけをバックアップすればいいだけの話だからwhere条件をつけてmysqldumpを実行すればいい

(最初だけ、面倒だけど数日分ずつ、何度かに分けて実行する必要あり。ひととおり終われば、そこからが本当に毎日1日分だけのバックアップで済むようになる)


まずは下記参照して、昨日1日分だけ、一昨日分だけを抜き出す作業を行って、ローカルにダウンロードして、ローカル環境に復元できるかどうかまでをテストしてみて欲しい。

テストに成功すれば、次には、ファイルサイズなどから一週間分や一ヶ月分などにもチャレンジしていけばいいだろう。

自動化は手動が確実にできるようになってから考えても遅くないし、いきなり自動化にチャレンジすると、どこが悪いのか探せなくなるしね

http://it.kndb.jp/entry/show/id/1067

http://dev.mysql.com/doc/refman/5.1/ja/mysqldump.html


以上、まずはやってみて

id:dekapurio

回答有難うございます。

うまくいきました。where条件付のものも試してみたいと思います。

2010/05/30 23:25:15

その他の回答4件)

id:Bombastus No.1

回答回数409ベストアンサー獲得回数52

ポイント5pt

下記のようなcronを組んでください。

#! /bin/sh

/usr/local/bin/mysqldump –opt -c -Q –host=サーバー名(mysql?.db.sakura.ne.jp) –user=ユーザー名 –password=パスワード データベース名 > バックアップ・ファイル名

id:dekapurio

さくらは2009年にCRONの仕様が変更されていますが、これで大丈夫でしょうか?

2010/05/30 18:26:10
id:dy7 No.2

回答回数5ベストアンサー獲得回数1

ポイント20pt

定期的にバックアップする必要がないのであればcronを使う必要はありません。

さくらのサーバーにインストールされている「mysqldump」を使ってエクスポートできると思います。

WordPress をインストールしたさくらインターネットの共有鯖で MySQL4 から MySQL 5 に移行しつつ文字コードを EUC-JP から UTF-8 に変える方法 « ややゆっくりしていってネ!!!

id:dekapurio

回答有難うございます。

mysqldumpを使いうまくいきました。

2010/05/30 23:24:33
id:koriki-kozou No.3

回答回数480ベストアンサー獲得回数79ここでベストアンサー

ポイント100pt

>データが全部で1Gほどある(テーブル1つで数百Mのものもあります)

cron の設定は特に問題はないけれどファイルサイズが大きくなると処理時間がかかるし、毎日1GBフルバックアップなんてのは馬鹿げていますよね

ローカルにダウンロードするのも一苦労どころの話じゃない


仮に、cronで毎日1回バックアップを取るとしても、新しい日付のデータだけをバックアップすればいいだけの話だからwhere条件をつけてmysqldumpを実行すればいい

(最初だけ、面倒だけど数日分ずつ、何度かに分けて実行する必要あり。ひととおり終われば、そこからが本当に毎日1日分だけのバックアップで済むようになる)


まずは下記参照して、昨日1日分だけ、一昨日分だけを抜き出す作業を行って、ローカルにダウンロードして、ローカル環境に復元できるかどうかまでをテストしてみて欲しい。

テストに成功すれば、次には、ファイルサイズなどから一週間分や一ヶ月分などにもチャレンジしていけばいいだろう。

自動化は手動が確実にできるようになってから考えても遅くないし、いきなり自動化にチャレンジすると、どこが悪いのか探せなくなるしね

http://it.kndb.jp/entry/show/id/1067

http://dev.mysql.com/doc/refman/5.1/ja/mysqldump.html


以上、まずはやってみて

id:dekapurio

回答有難うございます。

うまくいきました。where条件付のものも試してみたいと思います。

2010/05/30 23:25:15
id:koriki-kozou No.4

回答回数480ベストアンサー獲得回数79

ポイント10pt

Tera Term でSSH接続すればコマンドで操作できるようになる


接続に必要な情報は3つ

SAKURA Internet // サポート - オンラインマニュアル -  : SSH について

http://support.sakura.ad.jp/support/manual/rs/tech_ssh.shtml

ホスト 初期ドメイン(※1) example.sakura.ne.jp

アカウント アカウント名 example

パスフレーズ サーバパスワード (※2) ********

※1 「初期ドメイン」とは、サーバの登録完了時にあらかじめ付与されている基本ドメイン名です。 sakura.ne.jpのドメインにサブドメインを付与した形でお渡ししております。 お申込み受付完了後にメールをお送りいたしておりますので、詳細についてはそちらをご覧ください。

※2 サーバパスワードはサーバへの登録完了後にお送りしているメールに記載されています。


ホスト/アカウント/パスフレーズの設定画面(TeraTermでのSSH接続画面)

Windows用定番SSHクライアント「Tera Term」の使い方

http://sourceforge.jp/magazine/09/02/02/0412259/2

id:dekapurio

回答有難うございます。

2010/05/30 23:25:46
id:kick_m No.5

回答回数1372ベストアンサー獲得回数54

ポイント10pt

基本はmysqladminですね。これでやらないとするとmysqlのコマンドを使うのですが、ふつはwebサーバーしかmysqlに接続できないので、webサーバーにログインして、shを使う必要があります。shは使えますか?

http://www

id:dekapurio

かねやんmysqladminというやつですか?

試してみます。

2010/05/30 23:26:26
  • id:dekapurio
    mysqldump -u ユーザ名 -p -t・・・・・・
    というのは、何に打ち込めばいいのでしょうか?
    PCにはTeraTermというソフトが入っていますが(使ったことはありません)、それでいいのでしょうか?

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません