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

mysqldumpでデータを1行も読み込まない

mysqldumpについて教えてください。 さくらインターネットのレンタルサーバを使っています。 telnetで接続し、 mysqldump --host=mysql**.db.sakura.ne.jp --user=★★ --password=**** ★★ < 適当な名前.sql で、サーバ上にある***.sqlを読み込ませようとしたところ、何故かテーブルを作る(上書きする)だけで、データは1行も読み込まれませんでした。 データはINSERT INTOで始まっています。 どのような原因が考えられますか?

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

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

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

  • ベストアンサー
  • 回答No.1

ログインしてから source 適当な名前.sql でファイルを読み込めませんか?

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

関連する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のデータに移行について質問させていただきます。 サーバの移転に伴い、データベースも移行することになりました。 MySQLの文字コードが変わっているため、新しいサーバで文字化けを 起こしてしまいます。 1)データのダンプ   $ mysqldump --user=root --password --default-character-set=latin1 DB名 > dump.sql 2)新しいサーバで文字コード変換   $ perl -pi -e 's/utf-8/latin1/' dump.sql 3)インポート   $ mysql --user=root --password DB名 < dump.sql 上記の方法で問題がありますでしょうか。 ご教示よろしくお願いいたします。 <旧サーバ>  MySQL:3.23.58  文字コード:euc-jp <新サーバ>  MySQL:5.0.45  文字コード:utf-8

  • 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データをバックアップしたいと考えていまして コマンドプロンプト ↓ telnetでログイン ↓ mysqldump...... と考えていたのですが、telnetが許可されていませんでした。 mysqldumpを実行するには他にどのような方法がありますか。 宜しくお願いします。

  • cronを使って、CSVファイルのデータをMYSQLへ定期的に投入したい

    cronを使って、CSVファイルのデータをMYSQLへ定期的に投入したいのですが、 色々試行錯誤してみてもうまくいきません。 (試しにmkdirを実行し、cronが動作していることは確認済みです) 以下が試行錯誤の内容です。 【1】 MYSQLIMPORT文を使用。 mysqlimport --host=ホスト名 -u ユーザ名 --password=パスワード --local --replace DB名 "ファイル名(フルパス)" SSHからの実行で動作確認をした文をそのままcronに登録しましたが、データは投入されず。 【2】 LOAD DATA INFILE文を使用 mysql --local-infile=1 --host=ホスト名 -u ユーザ名 --password=パスワード <<eof use DB名; LOAD DATA LOCAL INFILE 'ファイル名(フルパス)' INTO TABLE テーブル名 FIELDS TERMINATED BY ','; 命令はShellにまとめて書き、呼び出しました。 同様にSSHでは動作したものの、cronでは動作せず。 【3】 まずはDBを更新できるかどうかの確認を行うため、MYSQL接続とINSERT文をShellに書き出しました。 mysql --host=ホスト名 -u ユーザ名 --password=パスワード <<eof use DB名; INSERT INTO テーブル名 VALUES (1,1,1,1,1); SSHで動作確認したShellをcronで実行させたが、更新されず。 【4】 PHPスクリプトの実行 PHPを使って更新出来ないかテスト。 こちらもSSHでは動作したものの、cronとなると動作せず。 単純なINSERT文すら実行出来ないことから、cronではレコードを更新できないのでは?と思い始めております。 なにか設定が必要だったり、見落としている点があれば、ご教授ください。 サーバーはさくらサーバーで、MYSQLのバージョンは4です。 cron以外での実装方法があれば、そちらも併せてご教授ください。 よろしくお願いします。

  • 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
  • テーブルに入っているデータと重複チェックしたい

    やりたいこと: phpを実行して取得したデータの内容と既にDBのテーブルに格納されているデータを 比較して、 異なっていれば、新しいデータとして INSERT INTO文で テーブルにデータを登録する。 同じであれば、登録しない。 という処理がしたいです。 $sql = "select * from hoge where url= $page_uri"; $kakunin = mysql_query($sql , $db ); if ( $page_uri == $kakunin ){ //同じデータならスキップ break; } else{ $sql = mysql_query("INSERT INTO hoge VALUES (0,'$page_uri','$pon')"); と書いているのですが、以下のエラーが出てしまいます。。 Fatal error: Cannot break/continue 1 level in /www/xx.php on line 42 これは、breakは使えないよ ってことでしょうか? breakでなくても やりたいことが実現できればこだわりはないのですが、、 アドバイスよろしくお願いします。

    • 締切済み
    • PHP
  • 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 一応、読んで、オプションへの指定を変えて出力して取り込んでみるものの、特に変わらず。。。

    • ベストアンサー
    • MySQL
  • データが追加されません

    mysql2.23 + PHPのプログラムで あらかじめ次のようなテーブルを作っています。 CREATE TABLE metadata(id smallint unsigned not null auto_increment primary key, me_date datetime, me_info text, me_file varchar (50)); 次にPHPで $meta_server = "metadata"; $conn = mysql_connect("localhost","root","root"); とここまでは大丈夫なのですが、その後 $sql = "INSERT INTO metadata(me_date, me_info, me_file) VALUES( '".substr$table', '".$note."', '".$filename."');"; $db = mysql_db_query($meta_server,$sql); としてもデータがテーブルに入りません。 どこに問題があるのでしょうか? 誰かヒントをお願いします。

  • insert into $DB (data1, data2) values (\"$data1\", \"$data2\")で変数扱いされません

    $sql = "insert into $DB (data1, data2) values (\"$data1\", \"$data2\") ; PHPにてMySQLを操作していますが、上記のように insertする項目の文字列に数字が入ると insertする際に、data1がそのままdata1として書き込まれてしまいます。 $sata1 = 'text or int'; data1 = $data1; として書き込みたいのですが… アドヴァイスお願い致します。