• ベストアンサー
  • すぐに回答を!

mysqlデータベースリストア

MySQL初心者です。 基本的な質問ですが、教えてください。 MYSQLデータベースのバックアップは、コマンドラインからmysqldumpでバックアップを行うと思います。 CMD>mysqldump -u(ユーザーグループ) -p(パスワード) (データベース名) > (バックアップファイル名).sql バックアップSQLを使って再度リストアで入れなおす場合は、 drop database (データベース名);と create database (データベース名); を実行してから行う必要があるのでしょうか? (バックアップファイル名).sqlの中身を見てみると、 CREATE TABLE '(テーブル名)' (・・・・ ・・・)の前に DROP TABLE IF EXISTS '(テーブル名)'; のようにテーブルのdropをしてからの処理はあるのですが。

共感・応援の気持ちを伝えよう!

  • MySQL
  • 回答数1
  • 閲覧数287
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • yambejp
  • ベストアンサー率51% (3827/7415)

ゴミが残る可能性があるのでリストアの観点からいえばdropした方が確実 たとえばバックアップ後、データ更新(追加・削除ふくむ)があった場合、 バックアップ時点にデータを戻したいなら各テーブルの中身が残っていると 不都合がある可能性がたかい

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • 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 ( )

    • ベストアンサー
    • MySQL
  • MySQLデータベースリカバリ文字コード指定

    Windows環境でのMySQLのデータベースバックアップで、以下のように文字コードを指定してバックアップが行われています。 mysqldump -uユーザ名 -pパスワード --default-character-set=sjis データベース名 > ****.sql バックアップからリストアするのですが、同じサーバ上で既存の同じデータベース(名)があるので 一度DROP DATABASE データベース名;してからCREATE DATABASE データベース名;を行うつもりです。 以下の2点について教えてください。 (1)create databaseする際に文字コードを指定する必要がありますでしょうか? create database データベース名 CHARACTER SET sjis; (2)リストア実行時に文字コードを指定する必要がありますでしょうか? mysqldump -uユーザ名 -pパスワード --default-character-set=sjis データベース名 < ****.sql 因みに ※my.iniには文字コードの指定で、sjis指定の表記がありました。 ※Moveble TypeでMySQLをデータベースとして使用しています。  よろしくお願いします。

    • ベストアンサー
    • MySQL
  • MySQLのデータベースのチェックはできませんか

    MySQLでcreate viewで作ったテーブルが削除できません。 show tablesで出てくるのですが、 drop table xxxxxするとテーブルが存在しないというエラーが出ます。 たぶんデータベースが壊れていると思うのですが、チェックして修復みたいなことはできませんでしょうか。

    • ベストアンサー
    • MySQL
  • バックアップとリストアについて

    Mysqlのデータバックアップを mysqldump -u root -x --all-databases > dump.sql のように行っております。 私の場合、すべてのデータベースをバックアップしたいので、allにしてます。 リストアの際には mysql -u root -p < dump.sql としております。 しかし、データベースが復元されません。 allとしてバックアップを行ったのに、データベースが全く復元されません。 何か特別な方法があるのでしょうか?

    • ベストアンサー
    • MySQL
  • mysqldumpでバックアップしたデータのリストア

    下記のようにmysqldumpでバックアップしています。 mysqldump --opt --user=user --password=pass --database dbname > backup.sql これをリストアする場合はdbnameを削除後 mysql -u user -p pass dbname < backup.sql だったと思うのですが、Mysql Administratorのリストアにてこのバックアップしたファイルを指定することは出来ますか? そのままAdministratorにファイルを指定したら 「The selected file was generated by mysqldump and cannot be restored by this application.」というエラーが発生します。 ご存知の方おられましたらご教授お願いします。

    • ベストアンサー
    • MySQL
  • 【至急】さくらサーバーMySQLインポート出来無

    誰か助けて下さい!! さくらインターネットのデータベースで、 MySQLのヴァージョンが低くて、 設置不能のブログ(ワードプレス等)があったので、 ヴァージョンを最新する方法を探していました。 「一回消して再登録する」という記事を読んで、 バックアップも取った上で再登録したのですが、 データをインポートできません。 以前のものは mysql24.db.sakura.ne.jp 今回のは mysql443.db.sakura.ne.jp です。 エクスポートしたデータは「SQL」 「SQL圧縮」「 CSV 」の3つで保存してあります。 再度データベースを作るときにデータベース名を入力する欄がありましたが 以前使っていたものには、そんな入力は要求されなかったような気がします。 もしかしたら、それが原因かも…と思っているのですが、 お分かりになる方いらっしゃいませんでしょうか。 エラーはこちら *-------------------------* エラー 実行した SQL: -- -- データベース: `aaa_01` -- CREATE DATABASE `aaa_01` ; MySQLのメッセージ: #1007 - Can't create database 'aaa_01'; database exists *------------------------------*

  • バッチファイル作成

    WindowsにMySQLを入れました。そこに、データベースやテーブルの作成をコマンドプロンプトからではなく、バッチで実行したいのですが、とりあえず、create database。sql と create table のテキストファイルは、作ったものの、どうしたらいいのかわかりません。教えてください。

    • ベストアンサー
    • MySQL
  • MySqlで、DBのファイルサイズ圧縮は?

    お尋ねします。 MySqlのINNODBのファイル容量を削減する方法は、 1.mysqldump -A -u root -p パスワード --opt > ダンプファイル名 でダンプ 2.DBファイルを”rm”で削除(あるいは、別フォルダに退避) 3.CREATE DATABASE データベース名 CHARACTER SET utf8; でDB再構築 4.mysql -u root -p パスワード < ダンプファイル名 でリストア で、良いんでしょうか?(^^;

  • データベースのインポート方法。

    データベースのインポート方法。 wordpressを使用していてサーバが度々落ちるので、新しいサーバに移行したいと考えています。 ですが、新しいサーバへのデータベースのインポート方法に手間取っています。 エラーは以下のように出ます。 ↓↓↓ エラー 実行した SQL: -- -- Table structure for table `○○○` -- DROP TABLE IF EXISTS `○○○` ; MySQLのメッセージ: ドキュメント #1046 - No database selected ↑↑↑ phpMyAdminと言うものを使用しております。 ・データベースに新しいテーブルを作成する ・文字コードを合わせる 辺りなのかと思っておりますが、テーブルのフィールド数と言うものが良く判りません。 文字コードは移行前サーバはECU-JPと書かれていますが、移行先の文字セットeucjpmsと言うものでよいのでしょうか? 原因が解りましたらご教授お願い致したく書き込みました。 宜しくお願い致します。

    • ベストアンサー
    • MySQL
  • PHPからMySQLのデータベースが作成できない

    PHP:4.4.4 MySQL:4.1.21 です。 PHPからデータベースを作りたいのですがうまくいきません。 以下のように記述しています。 $sql = "CREATE DATABASE ".$DBNAME; $rst = mysql_query($sql,$con); $DBNAMEには作りたいデータベースの名前が入っています。また、$conにはIDが入っており接続はできているようです。しかしこの後で$rstをechoするとTRUEでもFALSEでもなく、何も入っていない状態です。 これはどうすればデータベースをcreateできるのでしょうか? 非推奨のようですがmysql_create_dbを使ってたところ画面が真っ白になってしまいました。

    • 締切済み
    • PHP