• ベストアンサー

MYSQLのログにつきまして

MYSQLのログにつきまして mysqlでPostgresqlのpg_logのようにsqlの実行時エラーなどを出力する方法はありますか? --logオプションで起動しても実行されたクエリーがログに出力されるのみで肝心な実行結果ログが出力されず困っています。 phpmyadmiinで誤ったsqlを実行した時に出るエラーのような出力を出せないかと思っています。 以上、宜しくおねがいします。

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

  • ベストアンサー
  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.2

SQL実行結果でしたか。クライアント側対応になるみたいですね。  mysql コマンドラインクライアント実行での画面出力なら、起動時option で --tee=file_name これは、クライアント起動後も変更可能で、 \T file_name  コマンドプロンプトの画面出力内容全部が記録されます。 http://dev.mysql.com/doc/refman/5.1/ja/mysql-command-options.html 他のプログラムからの接続なら、それぞれのプログラム側で、実行毎にエラーチェックするしかなさそうです。phpmyadminのエラー表示は、phpのmysql_error()関数でエラー内容取得しています。 http://jp.php.net/manual/ja/function.mysql-error.php

wf3255
質問者

お礼

見捨てないでご回答いただき誠に感謝いたします。 プログラム側から取得したいと思います。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

エラーログは、--log-error[=file_name] オプション

参考URL:
http://dev.mysql.com/doc/refman/5.1/ja/error-log.html
wf3255
質問者

補足

ご回答ありがとうございます。 >エラーログは、--log-error[=file_name] オプション こちらはmysqldの稼働停止に伴う、あるいはステータスのエラーログだと思います。 当方が探しているのは実行されたsqlの実行結果をどこかのファイルに出力する方法です。  以上、宜しくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • MySQL ログについて(有効にする方法)

    MySQLのログについておしえてください. (http://oshiete1.goo.ne.jp/qa5031135.html で現在質問でログの出力方法が判らずに悩んでおります。) 「どのようなクエリ(SQL文の発行があったのか?)を確認するために、MySQLのログを有効にしたいのですが、設定の手順が良くわからずに困っています。 【参考にしたURL】 http://variable.jp/?p=581 (いまいち設定がわからずに悩んでいます^^;) MySql:Ver 5.0 MySQLのログ出力させたいのですが、 どういった手順を実行することでMySQLのログがどこに出力されるようにできるのでしょうか?

  • PHPからMySQLに接続はできるが、Sql操作ができない

    PHPからMySQLを使おうとしているのですが、 SQLクエリでの操作に対する反応がなく、困っています。 mysql_select_db()でtrueが返ってきているので、 DBにはアクセス出来ているようなのですが、 mysql_query()を実行しても何も返らず、エラーも出ません。 SQLに間違いはなく、あってもエラーがでるはずだったと思うのですが… 何かお分かりのことが御座いましたら、ご協力お願いいたします。

    • ベストアンサー
    • MySQL
  • Perl で MySQL接続の -X オプション(XML出力)を利用したい

    MySQL のコマンドシェルで 接続時に -X オプションを指定すると、SQL結果をXMLで返してくれます。 そこで、これをPerlから利用したいのですが、どうすれば良いのでしょうか。 イメージとしては、以下を考えています。 1.[クライアント]サーバーにデータ取得要求 ↓ 2.[サーバー]MySQLに接続(オプション -X 指定)・SQL実行要求 ↓ 3.[データベース]SQL実行・結果出力(XML) ↓ 4.[サーバー]3の結果をクライアントへ出力(XML) ↓ 5.[クライアント]SQL実行結果受取(XML) せっかくデータベースがXML整形してくれるなら、それを利用したいと考えています。 DBIで出来ないかとCPANを調べてみましたが、それらしい記述を見つけられませんでした。 (英語能力の低さもありますが) 参考になるページ等、ご教示頂ければ有り難く存じます。 以上、失礼いたします。

    • ベストアンサー
    • Perl
  • mysql_queryの処理速度が遅い

    PHP+MySQLでプログラミングをしているのですが、実行時にmysql_queryの処理に時間がかかっています。状況は以下の通りです。 ・処理時間を計測するとmysql_queryの実行に15秒程度かかっています。 ・Webminで直接同じSQL文を実行すると1秒程度で終わります。 ・SQLのコマンドは単純なUPDATEです。 ・indexは設定してあります。 ・DBに格納してあるレコード数は数100件程度です。 ・optimizeは実行してみましたが、あまり効果はありませんでした。 お聞きしたいのはWebminで実行すると1秒程度で終わるSQL文がmysql_queryで実行すると、なぜ時間がかかるのかということです。 mysql_queryで時間がかかる原因およびmysql_queryの処理時間を短縮する方法などがあれば教えてください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • XAMPPのMYSQLでスロークエリの出力

    WindowsXP上のXAMPPでMySQL+PHPを使用したサイト開発を行っていますが、 PHP内で実行されるSQLコマンドが正しくMYSQLへ投入されていることを確認したいと考えています。 スロークエリの機能を用いることで、MYSQLに発行されたSQLコマンドを表示できると思いますが、 XAMPPのMYSQLに対して、どのような設定を行えばよいのかわかりません。 いろいろ調べたところだと、単純にLinux上のスロークエリ設定をでは動作しないようです。 どのような設定を行えば、XAMPP上でスロークエリをファイル出力できるのでしょうか。

    • ベストアンサー
    • MySQL
  • MySQL のログ出力方法について (Error 1130)

    MySQLのログについて質問です。 現在、MySQL Administratorを使用して、遠隔でデータベースサーバにログインしようとしたところ以下のようなエラーが発生しました。 ■エラー内容(クライアントに表示されたもの) MySQL Error Number 1130 Host 'host名' is not allowd to connect to this MySQL server ちなみに、このエラーはデータベースのアクセス権を付与する事で回避でき、無事にデータベースへ接続は出来たのですが、データベースサーバの方に、このようなアクセスしてきたログは残っていませんでした。 そこで、上記のようなエラーが発生した場合、サーバ側のログに出力させる事は可能でしょうか? ちなみに、/etc/my.confのログ設定内容は以下の通りになっています。 ■サーバ側のmy.confに記述してあるログ設定内容 log-error=/var/log/mysqld.log log=/var/log/mysqld.log mysqld.logは、オーナー、グループ共に「mysql」です。 Error Number 1045などは、アクセス時にパスワードが無いというログが、mysqld.logに出力されるのですが、Error Number 1130が残りません。 どうにかして、サーバ側でこのようなアクセスがあった事を確認する方法(ログの出力方法など)はありませんか? 是非とも、ご教示よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • postgresqlとmysqlの違い

    こんにちは。 OSはRedhatLinux7.1を使っています。 Apache_1.3.26 php-4.2.1 PostgreSQL-7.2.1 mysql-3.23.52 を使ってWebアプリケーションを作ろうとしています。 Apache+php+PostgreSQLで、 SJISで書いたphpプログラム(htmlのページの表示もSJISに指定)を使って表示されたページからPostgreSQLにデータを登録しようとするとエラーになります。 Warning: pg_exec() query failed: ERROR: Invalid EUC_JP character sequence found (0x8971) となります。 同じようにApache+php+mysqlでやってみたら登録できます。 PostgreSQLはSJISでデータを登録できないのでしょうか? どこをどのようにすればいいのかわかりません。 初歩的で申し訳ありませんがアドバイスお願いします。

  • mysql_fetch_assocについて

    お世話になります。 MySQLからデータを取得してWEBで表示するために mysql_fetch_assoc関数を使っています。 SQL文を作って、mysql_query関数で実行させ、 結果をmysql_fetch_assocの引数にしているのですが 作成するSQL文に”DESC”を追加すると何も表示されなくなります。 (mysql_num_rowsでデータ数は取得できているのでSQL自体は有効の ようです) SQL文から”DESC"を取ると、mysql_fetch_assocの結果も正常に表示 されるのですが、どうしても降順に並べ替えて表示したいので 解決方法をご存知の方ご教授ください。よろしくお願いします。

    • 締切済み
    • PHP
  • php mysqlについて

    初心者です宜しくお願いします。 phpからデータベースを使いたいのですが(mysql)、mysql_query()関数のところで1366エラーが出ます。 半角英数ならエラーは出ません。 プログラムを貼り付けます。どなたかお願いします、説明をもっと書きたいのですが私もあまりわかってないのでどうもすみません。 今やっていることは全てローカルですwindowsを使ってます、文字コードもshift_jisです。phpもmysqlも一台のコンピュータでやっています。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>MySQLへデータを登録</title> </head> <body> DBとの連携テスト結果<br> <?php // DBに接続 if(!$con=mysql_connect("localhost","root","y3kwyuba")){ echo"connect_error"; exit; } // DBを選択 if(!mysql_select_db("test",$con)){ echo"select_db_error"; exit; } //MySQL4.1への対応 //mysql_query("SET NAMES SJIS"); この上の行のコメントをはずすとうまく動くのですが色々調べましたら、この書き方は推奨されないと書いてありました、他に対策はあるのでしょうか? $name = $_POST['nm']; $age = $_POST['age']; // フォームで送られてきたデータでINSERT文を作成 $sql = "insert into t_touroku(name,age) values('$name',$age)"; // SQLを実行 if(!$res=mysql_query($sql,$con)){ echo"query_error"; echo "エラー番号:".mysql_errno(), #エラー番号 "メッセージ:".mysql_error(); #エラーメッセージ exit; } // DBから切断 mysql_close($con); // メッセージ出力 echo"登録完了"; ?> </body> </html> 宜しくお願いします。

    • ベストアンサー
    • PHP
  • MySQLのエラーについて

    今回初めてMySQL-serverをいれました。 バージョンは5です。 Linuxを使用。 /etc/rc.d/init.d/mysqld start コマンドで起動させたいのですが。 Timeout error occurred trying Timeout error occurred trying to start MySQL Daemon. Starting MySQL: [FAILED] と、いうものが出力されます そしてlogを調べた所↓ mysqld started 090812 17:34:44 [ERROR] /usr/libexec/mysqld: unknown option '-- ' というエラーlogが残ってました。 こういう場合の対処法を教えてください。

    • ベストアンサー
    • MySQL