ベストアンサー mysqldumpの方法以外でDBをコピーあるいは 2012/06/28 10:55 バックアップする方法は何がありますでしょうか? みんなの回答 (1) 専門家の回答 質問者が選んだベストアンサー ベストアンサー yambejp ベストアンサー率51% (3827/7415) 2012/06/28 12:29 回答No.1 mysqlhotcopy 参考URL: http://dev.mysql.com/doc/refman/5.1/ja/mysqlhotcopy.html 通報する ありがとう 0 カテゴリ [技術者向] コンピューターデータベースMySQL 関連するQ&A Mysqlでmysqldumpする方法を教えて。 プログラマーが残していたphpプログラムがあります。 php自体は弄れるのですが、データーベース系の話は、私はさっぱり分かりません。 今回は、mysqlのデーターのバックアップを取りたいのですが、やりかたが分かりません。 mysqldumpしてダウンロードするようなのですが、そもそもサーバにログインする方法が分かりません。 mysqldumpを実行するために、何が必要なのか、どういう手順が必要なのか、 本当に全く分からない状態です。 mysql5を入れて、コマンドラインでやるのかと思って、インストールしようとしたのですが、インストールもうまくいかない感じです。 phpmyadminのように簡単にできるものがあれば、お教えいただければと思います。 (ちなみに、phpmyadminのエクスポートは容量制限に引っかかってできませんでした) お手数かと思いますが、よろしくお願いします。 mysqldumpについて MySQL初心者です。 すみません。教えてください。 mysqldump -u(ユーザー) -p(パスワード) --default-character-set=sjis (データベース名) > (ファイル名).sqlでバックアップを実行すると自動的に1つのsqlファイルに全テーブル分、以下のように生成されているのですが、リストアする時は既存のデータベースを削除(drop database データベース名;) する必要がない。又、権限付与(grant)もする必要が無いということになりますでしょうか? 逆にdatやdumpファイルとしてバックアップしているものについては、データベースの削除&権限付与等行う必要があるということになりますでしょうか? DROP IF EXISTS 'テーブル名' ; CREATE TABLE 'テーブル名' ( ) INSERT INTO 'テーブル名' VALUES ( ) CRCの使い方、mysqldumpについて 先日、社内DBのcronによる定期バックアップのデータが圧縮により破損したらしく、 顧客データを数日前まで戻さなくてはいけなくなりました。 私の所属している部署ではなかったのですが、同様の問題が発生するかもしれないので、 cronで毎日取っているバックアップデータをチェックするなどの方法を求められました。 ただ、私は経験もないため何をどうすればいいのか分かりません。 CRCでチェックすればいいのでは?と言われたのでCRCについて調べたのですが、 ググってみたのですが、CRCエラーの対処法や、CRCの解説がほとんどで、実際の使い方が見つかりません。 どのようにすれば、CRCでチェックサムを付加することができるのでしょうか? 付加したデータは専用の通信をするのでしょうか? scpやrsyncのようなコマンドがあると思っていたのですが、見つかりません… CRCでやりたいことは以下になります。 「DBサーバ 」と「DBバックアップサーバ」があり、 OSは「DBサーバ」が CentOS release 6.3 (Final) で、 「DBバックアップサーバ」が CentOS release 6.5 (Final) です。 「DBバックアップサーバ」上で mysqldump {「DBサーバ 」} {DB名} > {hoge.sql} をcronで実行しています。 この {hoge.sql} が正常か異常かを確かめたいのです。 サーバ上で障害等ない場合、mysqldumpで異常なデータが出力されたりすることはあるのでしょうか? HD上の空きには余裕がある状態で、他に特にサーバ上での問題もない場合、圧縮でデータが破損することはあるのでしょうか? CRCでできないのであれば、他にどのような手法があるのでしょうか? 完全に丸投げの質問で申し訳ないのですが、どうぞご教示をお願いいたします。 mysql で mysqldump が出来なくなりました。 MySQL 3.23.49を使用しています。 今までcronでmysqldumpを利用して バックアップをとっていましたが、 apt-get upgrade 後以下のエラーがでるようになりました。 どのようにすれば今まで通りバックアップできるのでしょうか? mysqldump: unrecognized option `--max_allowed_packet=16M' コピー以外の方法は? エクセルで、A1に今日の日づけがでるようにし、H列に出荷日を入力するようにしました。5行目から取引先や個数、出荷日などを(A5からH5)までいれ、条件付書式にて出荷日当日のものは行全体(AからHまで)が赤くなるようなパターンを条件で入れてあります。この条件を、6列目以降でも使っていくときは、コピーで「形式を選んで・・・」の「書式」を使って一行ずつ行うしか方法はないのでしょうか?実際には、一行やって、次に二行をコピーして次に四行をコピーしてるのですが。5列目以降一度にできる方法があればよいのですが。よろしくお願いします。 コピー以外の方法・・・ はじめまして。いつもありがとうございます。 参考にさせていただいております。 私漢字検定を受検しようと思っています。 漢字検定の問題用紙と本があるのですが、 繰り返し使用したいと思っています。 一般的にはコピーかと思うのですが、他によい方法等あれば教えてください。 カテ違いかもしれませんが、こちらのほうがお力を拝借しやすいと思い投稿しています。 FDのコピー方法について FDのバックアップを取りたくて、FD全体ごとコピーしたいのですが、出来ません。 Aドライブにフロッピーを入れて、右クリックでバックアップを選んでも、抽出するところで、 「読み込めません」とエラーが出て、先に進めません。 フロッピーからハードディスクに一旦コピーしようとしても、同様のエラーでコピーの抽出が 出来ないようです。 MS-DOSモードでA:>dirとすると、ファイルがありませんと表示されます。 が、確実にファイルはあるのです。 拡張子は「usr」という私にとっては見知らぬ形式です。 とにかく、コピーを取ってバックアップを作りたいのです。 コピー禁止の何かが入っているのでしょうか?(想像ですが) これを解除する方法を教えて下さい。 自分のソフトで自分のためにコピーするだけなので。 良い方法をご存じの方、よろしくお願いいたします。 Windows98/95で動作する物です。 差分コピー方法 差分コピーの方法について教えて下さい。 DiskAに保存したデータのバックアップをDiskBに保存したいと思っていますが、xcopy等ですと全体をコピーして無駄な時間を要してしまいますが、差分コピーでDiskAとDiskBの同期を取りたいと考えています。 市販のバックアップソフトを使えば出来ると思いますが、フリーソフト又はコマンドでできますでしょうか? ご経験のある方教えて下さい。 異なるOS間でのDBコピー方法 現在WindowsSever2003上で稼動しているDBをaixサーバに移行したいのですが、DB単位でのexp/impで可能でしょうか? exp/impで可能であれば、aixサーバ側でimp前に必要な作業(データファイルの作成、DBの作成?)を教えていただけると助かります。 もっと手軽に出来る方法があれば教えていただけると有難いです。 バージョンはコピー元、コピー先共にOracle10gになります よろしくお願いします。 mysqldumpの使い方がイマイチ分かりません。 こんにちは。よろしくおねがいします。 MySQLからMSSQLServerへデータを移すなどという事をやっているのですが、途中、詰まっています。 助言いただける方がいましたら、どうかよろしくおねがいしますm(_ _)m 【環境】 移行元: Windows2003Server MySQL5.1 移行先: Windows2003Server MSSQLServer2000 【やること】 MySQLにあるデータをMSSQLServerに移行する。 【方法】 1.移行元で、コマンドプロンプト起動。以下のコマンドを打ち込み、ファイルにする。 mysqldump -u ユーザ名 -pパスワード --default-character-set=binary --tab=D:/tmp --fields-terminated-by=, --fields-optionally-enclosed-by=\" --lines-terminated-by="\r\n" DB名 2.ファイルをテキストエディタで開き、「UTF8→SJIS」に変換し、保存しなおす。 3.ファイルを、移行先で、「bcpユーティリティ」を使用して、テーブルに放り込む。 【困っているところ】 mysqldumpを実行した後のファイルに、どうしたらいいのか不明なデータが入る。 テーブル構成は フィールド1:int(auto_increment) フィールド2:text(utf8_general_ci) のみです。 phpMyAdmin上で、データの挿入から、フィールド2に対して、「改行を含むデータ」を登録した場合、不明データが入ります。 ■登録データ あああああ いいいいいいい ううううう えええええええ おおおおおおお ■mysqldumpで作成されるデータ "あああああ\ いいいいいいい\ ううううう\ えええええええ\ おおおおおおお" 多分、今まで気にしていなかった(Win-MSSQL環境がほとんどなので...)改行コードが~といったところでは無いかとは思っていますが、 いろいろ試していますが解決に至っていません。 解説できる方がいらっしゃいましたら、どうかお力をお貸しいただけると助かりますm(_ _)m 試したこと。 --result-file=file あたりを使ってみた。 。。。意味なし? http://dev.mysql.com/doc/refman/5.1/ja/load-data.html 一応、読んで、オプションへの指定を変えて出力して取り込んでみるものの、特に変わらず。。。 RMANでリストア→DBオープンする方法 RMANで毎日DB全体をオンラインバックアップしています。 本日DB全体のリカバリが必要となったのですが、 「障害が発生した日の早朝に取得したバックアップをリストアした時点の状態に復旧して欲しい」とお客様から要望が来ました。 RMANで、リストアしただけでDBを起動させる方法ってあるのでしょうか? restore database;のあと、resetlogsオプションつきでDBを起動させようとしましたが、「不完全リカバリでないためresetlogsは使用できません」とエラーで怒られてしまいました。当然ですよね。。。 ちなみに、コールドバックアップは取得していません。 DB環境は以下の通りです。 OS:Windows2003 R2 SP2 DB:OracleSE 10.2.0.1 なにか良い方法がありましたら教えていただけませんでしょうか。 よろしくお願いします。 SSHでのmysqldumpができません root権限を持たないVPSサーバにSSH接続しMySQLデータベースのバックアップをとりたいのですが、コマンドの書き方がおかしいのか、いっこうにmysqldumpが行われるようすがありません。SSHでの接続は正常に行われデータベース一覧等も取得できてはいます。 しかし、以下のようにコマンドをうってみても、何か入力をそくしているのかなんなのかリターンキーを押すそばから「-> 」が表示され、先に進みません。 これはどうなっているのでしょうか?、何か入力間違いがあるのでしょうか? また保存場所はどこになるのでしょうか? 不慣れな環境の中SSH接続でのMySQLメンテナンスで頭を抱えています。 データベース:mydb ユーザー名:root パスワード:n*****S mysql> mysqldump --default-character-set=binary -u root mydb --password=n*****S > mydbdump.sql DB復元 初心者です。 現在、サーバのHW移行に伴う、DBの移行を行っております。 そこで、MSSQLの『バックアップ』、『復元』機能により移行を行おうと考えております。 しかし、毎日取得しているDBのバックアップを別サーバで復元したところ、以下メッセージが出力されうまくいきません。 自分なりに調べてみたのですが、情報がなかったため質問させていただきます。 よろしくお願い致します。 ■エラーメッセージ Microsoft SQL-DMO(ODBC SQLState:42000) 復元しようとしているデータベースはUnicodeロケ-ルID(33280)または比較スタイル(0)でバックアップされました。このサーバで現在実行されているロケ-ルID(1041)または比較スタイル(196609)とは異なります。バックアップまたは復元操作が異常終了しました。 ■環境(移行元、移行先) Windows2000Server SQLServer7.0 ■やりたいこと サーバ移行に伴う、DB移行 ■質問 (1)復元が失敗した原因 (2)別の移行方法(よい方法があれば) DBバックアップについて教えてください。 DBバックアップについて教えてください。 Windows Server 2008のバックアップ機能を利用して、 増分バックアップを日次で実施したいと考えております。 (本当は差分バックアップがいいのですが・・) 色々調べた結果の私のイメージなのですが、 初日にフルバックアップを実施した後は、 翌日から増分でバックアップを取るわけですよね? (質問(1)) であれば、リストア時の運用を考慮すると、 リカバリポイントである初日のフルバックアップを定期的に 取り直した方が効率的ですよね?? (質問(2)) また、毎日定刻が来たら自動でバックアップされると思うのですが、 日々取ったバックアップファイルはどんどん蓄積されていくんでしょうか。 それともどこかのタイミングで自動的に古いファイルは削除されますか? でないと容量がすぐに圧迫されますよね。。 現在サーバの使用領域は1500Gバイトなので、外付け2TバイトHDDを購入しようと 考えております。 毎日増分バックアップするならあっという間に容量オーバーになる気がするのですが。 アドバイスをお願いいたします。 PCゲームのコピーの方法 PCゲームをバックアップ用にコピーしておきたいのですが方法がわかりません。パソコンに関しては超ド素人なので初歩的な質問ですがどうかよろしくおねがいします mysqldumpについて mysqldumpに関して、2つ目。。。というより、2回目(?)の質問になります。 知恵をお貸しいただける方、どうかよろしくお願いしますm(_ _)m 前質問 http://okwave.jp/qa/q7308667.html 「マイグレーションツール使えばいんじゃね?」 とのアドバイスを参考にとりあえず試してはいるものの、 それはそれ。これはこれ。 として、どうしても前質問のような現象になることの原因が気になります。 ■テーブル構造 フィールド名|種別|照合順序|その他 id|int(10)|なし|auto_increment data|text|utf8_general_ci|なし の2フィールドのみです。 ■データ登録 phpMyAdmin上の操作で、データ挿入を行い、「id」は、auto_incrementのため放置。 「data」に以下データを登録します。 あああああ いいいいいいい ううううう 登録後、再度、別のデータを登録します。 かかかかか ききききききき くくくくく ■mysqldump実行 mysqldump -u ユーザ名 -pパスワード --default-character-set=binary --tab=D:/tmp --fields-terminated-by=, --fields-optionally-enclosed-by=\" --lines-terminated-by="\r\n" DB名 テーブル名 ■実行結果 1,"あああああ\ いいいいいいい\ ううううう" 2,"かかかかか\ ききききききき\ くくくくく" ■疑問箇所 ん?コレなんだ?? 1,"あああああ\←「コレ」 --fields-terminated-by=, は、カラム区切りだから、「1,"あ」で問題なく出来ている。 --fields-optionally-enclosed-by=\" は、文字列系のデータの囲み文字指定。。。「"あああ~ううう"」で問題なさそう。 --lines-terminated-by="\r\n" は、レコードの区切り文字指定。。。「ううう"改行2,"かかか」で、テキストエディタで確認した際も、CRLFになってたみたいだから問題なし。 なんとなーく --lines-terminated-by="\r\n" を --lines-terminated-by="" にして実行してみると 1,"あああああ いいいいいいい ううううう",2,"かかかかか ききききききき くくくくく", 「\」は無くなったが、レコード区切りが無くなるので、全てを1レコードと認識する。。。 そもそも、「--lines-terminated-by」は、レコード区切りのはずなのに、何故改行コードに影響してくるんだろう?? 「文字列データ内の改行コードの指定」なんて無いよな??? と思いながら、何をどうすればいいのか困っています。 1,"あああああ\←「コレ」 の意味をご存知の方いらっしゃいませんか? 参考情報でも、予想でも何でも構わないです。一人だと既に詰まってる状況なので、お知恵をお貸しいただけませんか?よろしくおねがいしますm(_ _)m mysqldumpについて 他のサーバのダンプファイルを別サーバにリストアする場合、違いに同じデータベースを持っているのですが、上書きリストアするとてーぶるは、どうなるのでしょうか? 追加?上書き?される。 mysqldumpについて いつもお世話になっております。 MySQL4.0.21、phpMyAdmin2.6.0を使用しております。 mysqldumpコマンドをSSHでコマンド打つと、特定のテーブル以降のテーブルがダンプされません。 phpMyAdminでダンプするとキチンとダンプされるのです。 なぜなんでしょう?テーブル内のレコードに一部文字化けしているデータが含まれているのですが、エラーでちゃんと出力されていないのでしょうか? コマンドライン上にエラーは表示されません。 原因がわからずお手上げ状態です【><。】 DB間でデータをコピーしたい DB間でデータをコピーしたいと考えています。 DataTableを使う方法とDataReaderを使う方法を思いつきました。 前者はSQL文によってはメモリの消費量が恐ろしいことになるので使いたくありません。 後者は安全なSQL文の生成ができるメソッドを作成できる自信が有りません。 .NETにこういったニーズを満たせるメソッドは無いものでしょうか? 環境は OS:Windows Vista IDE:Visual Studio 2005 コピー元:MySQL 5.0 コピー先:SQL Server 2005 です。 XEの全データを別のマシンに mysqldumpのようなもの 以前XEをインストールしていたマシンがあるのですが、そのマシンを別の用途に使うため、オラクルのデータのみバックアップしたいのですが、 MySQLでいうところのmysqldumpのようなコマンドはありますか? オラクル超初心者で、何もわかっていませんが、オラクルの場合、シーケンスや$Vなど正しくバックアップできるのでしょうか? 別のマシンに簡単に移し変えたいです。