• 締切済み

mysql で mysqldump が出来なくなりました。

MySQL 3.23.49を使用しています。 今までcronでmysqldumpを利用して バックアップをとっていましたが、 apt-get upgrade 後以下のエラーがでるようになりました。 どのようにすれば今まで通りバックアップできるのでしょうか? mysqldump: unrecognized option `--max_allowed_packet=16M'

  • MySQL
  • 回答数3
  • ありがとう数2

みんなの回答

回答No.3

apt-get updateでmysqlか、あるいは他の何らかのライブラリなどが上書きされたりバージョンの不整合が起きたりしてしまったのかも知れませんね。何がupgradeされたかわかりますか? MySQLを上書きインストール、または一旦アンインストールしてもう一度インストールしてみたらどうですか?

apache6
質問者

補足

mysqlをアンインストールして、インストールしましたが、 起動しませんでした。 あきらめて、OS(debian3.1)ごと再インストール(ネットワークインストール)しましたが その後リブートするとOSが起動しません。

回答No.2

エラーが出たのはmysqldumpじゃなくてmysqlそのものの方ですか?それとエラーが出た直接のきっかけはapt-get upgradeで間違いないのでしょうか? まず、おかしくなる前の最新のバックアップファイルを確実に保存しておきましょう。それで、エラーログなどを確認して、起動しない原因を調べましょう。 最悪は再インストールしてバックアップデータをリストア、って感じでしょうか。rpmインストールだとそんなに手間でも無いと思いますが、環境にもよりますけど。 こういう時は一つ一つ現象と原因を確認していくしかありません。

apache6
質問者

補足

他のパソコンでも同様に ap-get update→ap-get check→ap-get upgrade のち、mysqldumpを実行すると mysqldump: unrecognized option `--max_allowed_packet=16M' が表示され、設定を変更せずmysqlをrestartすると 起動しなくなりました。 エラーログmysql.errには 050616 12:36:00 mysqld ended の一行だけです。

回答No.1

`--max_allowed_packet=16M' のオプションが未承認というエラーなので、とりあえずこれを外せば動くようになりませんか? でもなぜこのようなエラーが出るのかは解りません。upgradeをして、バージョンはいくつになったんですか?upgradeした結果、3.23.49になったのでしょうか?

apache6
質問者

補足

mysqlを再起動すると起動しなくなりました。 max_allowed_packet=16Mをコメントアウトしても 起動してくれません。 update→check→upgradeは定期的に行っているやつで、 バージョンは3.23.49のままです。 またこのエラーが表示されるようになった頃に データーベースに対して大量のデータが登録されました。それでも2万件弱です。

関連するQ&A

  • 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でできないのであれば、他にどのような手法があるのでしょうか? 完全に丸投げの質問で申し訳ないのですが、どうぞご教示をお願いいたします。

  • 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からMySQLのバックアップをとるには?

    レンタルサーバのLinux+PHP4.2.1+MySQL3.23.42の環境で行っております。 HTML(PHP)フォームから、「バックアップ」ボタンが押されたときに、 MySQLのバックアップをとる(mysqldump)するプログラムを作りたいのですが、 mysqldumpコマンドは、SQLとしてクエリ送信できるのでしょうか? 例えば、 $strSQL = "mysqldump -u **** -p**** DB名 テーブル名 > dumptest.bak"; mysql_db_query($strSQL); のような感じでは、成功しませんでした。 mysql("DB名","mysqldump -u **** -p**** DB名 テーブル名 > dumptest.bak"; さらに、このような方法もあるみたいですが、 エラーも起こらないしdumpもされませんでした。 phpMyAdminなどは、どうやって実行しているんでしょうね。。。 知っている方がいましたら、是非ご教授くださいませ。

    • ベストアンサー
    • PHP
  • VineLinuxの自動アップデート

    昔LinuxでサーバーでWindowsでいうWindowsUpdateと同じようにOSのパッチを当てる処理をしていたのですが、 自分が書いたにもかかわらず、忘れてしまいました。 cronで午前4時に以下のスクリプトを動作させております。 #!/bin/sh apt-get update apt-get upgrade -y apt-get update これで毎日アップデートしていることでしょうか?

  • MySQLのリストアができない

    dumpは問題なくでき、リストアをしたときに ERROR 2013(HY000) at line 2873: Lost connection to MySQL server during query となり、MySQLサーバーから切断だけでなく、サービス自体が強制終了されてしまいます。 なにかやり方があるのでしょうか? やってみた対策を書きます。 •dumpファイルが100M程でデータが大きいことが原因かと思い set global max_allowed_packetにて500Mまで大きくしました。 (この値はとりあえず大きくしただけです。) ・sql文にinsert intoが多すぎのが問題かと思い dump時に--extended-insert=trueを指定しました。 リストア時はなにもオプションは指定しておりません。 バージョンは5.5 現在サーバーを使用せず個人パソコンでやっており、メモリは4Gなのですが リストア中に急に3.2Gほど使用している状態になり終了します。 メモリが問題なのでしょうか? それともホームサーバ等のサーバー特化機にすれば解決するのでしょうか? よろしくお願い申し上げます。

  • mysqldumpにおけるメモリの使用

    mysqldumpを使用して日次バックアップを取得しているのですが、 新しいサーバに変えたあとにDump時間が長くなっています。 MySQLバージョン:v4.0 サーバスペック:   新サーバのほうが高い(メモリは16GB→60GB)   InnoDBのバッファプールサイズを12GB→45GBに増やしました。 現象:   新サーバ以降後に、Swap in/outが頻繁に発生しています。   freeやvmstatで見る限り、メモリ空きは0ではない状況です。 mysqldump指定オプション:   --opt や --quickを指定してもdump時間は短縮されませんでした。 InnoDBのバッファプールサイズの指定が大きすぎたのでしょうか。 何か解決策はないでしょうか。

    • ベストアンサー
    • MySQL
  • phpからmysqlに接続できません。

    Apache/1.3.26 Debian3.0 GNU/Linux PHP/4.1.2 mysql/3.23.49-log の環境です。 $MyLink = mysql_connect(..略..); の箇所でFatal error: Call to undefined function: mysql_connect() in /var/www/bbs/bbs.php on line 23 のエラーがでます。 このPHPファイルは本のソース(CD)ですので間違いは 無いと思います。 ただし、本はmysql/3.23,PHP/4.1.1を使ってます。 何が良くないのでしょうか? 検索で PHP-4.2.x当たりで、ライセンスの関係からディフォルトの インストールオプションでは、mysqlのサポート関数がインストールされないので、 --with-mysql[=DIR] オプションが必要なはずです。 とありましたが、インストールは apt-get -install php4 で行いました。

  • 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
  • MYSQLで新規データベースが作れません。

    OSはDebian GNU/Linux 3.0です。 MYSQLは最新でapt-getでインストールしました。 初期設定はrootのパスワード変更のみ行ってます。 mysql -u root -p でMYSQLにログインし、 mysql> create table test_table ( -> id int(10), -> memo char(240) -> ); と4行入力すると、下記のエラーが出ます。 ERROR 1046: No database Selected どのようにすればよいでしょうか?

  • Debianのアップグレードについて詳しいHPを教えてください。

    Debianのアップグレードについて詳しいHPを教えてください。 つい最近Debianを入れたばかりの初心者です。 慣れて来たので、testingのsqueezeにアップグレードしようと思うのですが、 apt-get update apt-get upgrade apt-get dist-upgrade で、エラー吐いたり、英文の訳の解らん質問が来たりで出来てません。 Debianのアップグレード(できればsqueeze)について詳しいHPや、 備忘録的なHPなどありましたらお教えください。よろしくお願いします。