のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,368,613人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレMySQL 総合 Part15

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - insertall + - mregexp + - SSD + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    751 : 701 - 2009/03/20(金) 11:57:03 ID:??? (+19,-30,-94)
    >>732
    一旦すべてクリーンにして再度実行してみました。
    以下ファイルをダウンロードし直してインストールしたのですが、同じエラーが発生してしまいました。

    DB:MySQL 5.0.67
    サーバー:Tomcat 5.5
    JAVA:JDK 1.5
    JDBC:5.1.7

    これはやはりレジストリにデータが残っているせいか、ハードウェアの問題だと思うのですが、
    どうでしょう?
    752 : 701 - 2009/03/20(金) 11:58:39 ID:??? (+0,+0,+0)
    エラー内容は以下になります。


    com.mysql.jdbc.CommunicationsException: Communications link failure

    Last packet sent to the server was 0 ms ago.
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1070)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2120)
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723)
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:298)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
    at java.sql.DriverManager.getConnection(DriverManager.java:525)
    at java.sql.DriverManager.getConnection(DriverManager.java:171)
    at top.Dao.open(Dao.java:22)
    at top.Counter.access(Counter.java:59)
    at top.InitDisplay.doPost(InitDisplay.java:64)
    at top.InitDisplay.doGet(InitDisplay.java:31)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: com.mysql.jdbc.CommunicationsException: Communications link failure

    Last packet sent to the server was 0 ms ago.
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1070)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2043)
    ... 25 more
    Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:520)
    at java.net.Socket.connect(Socket.java:470)
    at java.net.Socket.<init>(Socket.java:367)
    at java.net.Socket.<init>(Socket.java:209)
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
    ... 26 more

    ちなみに全てローカルで実行しています。
    753 : 701 - 2009/03/20(金) 12:02:33 ID:??? (+62,+29,-48)
    いろいろ調査したのですが、さっぱり原因がわかりません。

    そもそも最初は問題なく動作していたのです。

    ある日突然繋がらなくなりました。(getConnection()でエラーが発生)

    もちろん接続周りはいじっていません。

    大変申し訳ありませんが、どうか助言をお願い致します。
    754 : NAME IS - 2009/03/20(金) 12:17:45 ID:??? (+0,-29,-10)
    >>751
    >以下ファイルをダウンロードし直してインストールしたのですが、同じエラーが発生してしまいました

    良かったじゃん
    絞込み出来て
    755 : NAME IS - 2009/03/20(金) 12:18:50 ID:??? (+29,+0,-4)
    >>751
    なんでOSを再インストールしなかったんだ?
    756 : NAME IS - 2009/03/20(金) 12:19:02 ID:??? (+57,+29,-33)
    最初に動いていたものが動かなくなったのに、JDBCだけを疑うのはおかしいだろ。
    OSパッチ当てたとか、JREをアップデートしたとか、その辺が原因だろ。
    757 : NAME IS - 2009/03/20(金) 12:25:46 ID:??? (+5,-30,-110)
    >>723
    OS:Windows VISTA SP1
    DB:MySQL 5.0.67
    サーバー:Tomcat 5.5、6.0
    JAVA:JDK 1.6
    JDBC:5.1.7、5.0.8

    >>751
    DB:MySQL 5.0.67
    サーバー:Tomcat 5.5
    JAVA:JDK 1.5
    JDBC:5.1.7

    環境変えるなってww
    758 : 701 - 2009/03/20(金) 12:34:48 ID:??? (+57,+29,-3)
    わかりました。
    やはりOSを再インストールすることにします。

    長々お付き合い頂きありがとうございました。
    759 : NAME IS - 2009/03/20(金) 12:40:29 ID:??? (+56,+28,-4)
    OSパッチはともかく、JREをホイホイ上げるのはまずい。
    上げるのなら、きちんと検証しないと。
    760 : NAME IS - 2009/03/20(金) 12:48:59 ID:??? (+72,+29,-86)
    ここまで他力あてにされると釣りかと思うが
    エラーメッセージ見ないでマジレスすると
    どこが原因なのか絞り込みしないと話にならない
    MySQL側なのかJDBC側なのかそれ以外なのかさっぱり分からん
    違うサーバーかVMがあるならそっちにMySQL入れて
    自分のJDBC環境から繋がるのかどうか調べろ
    それから上にもあったが自分でMySQLに繋いだときに
    どこまで上手くいってるのか再確認すること
    761 : NAME IS - 2009/03/20(金) 14:57:42 ID:??? (+57,+29,-2)
    エラーだけ見ると通信エラーなんだけど
    たしかにこれだけでは分からない
    762 : NAME IS - 2009/03/20(金) 16:22:24 ID:??? (+3,-29,-88)
    ユーザー名とパスワードが空欄になってるユーザーが
    いつの間にか登録されてたんですがどうやったら削除出来ますか?
    2つ登録されていてホストはLocalhostとLinuxのサーバー名になってます
    DROPでやってみましたがユーザー名が空欄なので指定出来ませんでした・・・
    763 : NAME IS - 2009/03/20(金) 16:24:36 ID:??? (-1,-29,-3)
    空欄だから''@localhostでいいんですね・・・自己解決しました・・・
    764 : NAME IS - 2009/03/20(金) 18:08:26 ID:??? (+72,+30,-192)
    >>760
    個人的に大ボケ掘ったことがあるのが開発時にローカルで
    サーバ起動したらポコッとダイアログが出てきて、一見すると
    セキュリティの警告っぽかったので反射的に「拒否」をクリック
    したら実はそれがファイアーウォールの警告。
    それ以降サーバへの接続はことごとくファイアーウォールに
    はねられていることに気づくまで「原因不明の接続エラー」と
    して四苦八苦する事に。

    その時も「いきなり動かなくなった、原因不明だ~」とか言い
    ながらデバッグしたりパケットキャプチャとかかなり明後日な
    方向で原因を探していたような。
    765 : NAME IS - 2009/03/20(金) 19:42:01 ID:??? (-1,-29,-13)
    今回は3306で入れるって言ってるからなぁ
    ユーザー認証とか@localhostの人じゃないけど
    Usersの中身で@の右がおかしくなってるとかかな
    766 : NAME IS - 2009/03/20(金) 19:44:25 ID:??? (+57,+29,-15)
    釣りじゃないことを証明する方法は無いからな
    ソースなりなんなり誠意を持って情報を出すしかないだろ
    767 : おしりからミミズ - 2009/03/21(土) 08:22:39 ID:??? (-1,-29,-4)
    MySQLに対して、select *.??.*って打つと
    768 : NAME IS - 2009/03/21(土) 14:55:52 ID:??? (+51,+28,-15)
    おしりからミミズが出てきたよ
    769 : NAME IS - 2009/03/21(土) 21:53:37 ID:dFn4HTDg (+13,+27,-33)
    今日からMySQLの勉強をはじめたんですが、
    PHPとかPerlとか、そういうの全然知らないんです。
    bashとかawkなら使えるんですが、当面それでも大丈夫でしょうか?
    770 : NAME IS - 2009/03/22(日) 00:00:27 ID:??? (+56,+28,-8)
    MySQLそのものの勉強ならいいんじゃない?
    771 : NAME IS - 2009/03/22(日) 00:40:33 ID:??? (+42,+24,+0)
    大丈夫
    773 : NAME IS - 2009/03/22(日) 12:39:13 ID:??? (+50,+18,-2)
    毎回DB名入れないといけないのかw
    774 : 772 - 2009/03/22(日) 12:48:32 ID:??? (+66,+29,-12)
    変なとこに#が入ってたorz

    >>773
    一旦関数だけ集めたファイルを作れば、次回からは関数を呼び出すだけだから
    そんなに手間じゃないでしょ
    775 : NAME IS - 2009/03/22(日) 14:13:48 ID:??? (+11,-30,-232)
    >>774
    こんな感じですかい?

    #!/bin/bash
    # program sqllib.sh
    sql_select()
    {
    echo "USE '"$b_name"'; SELECT '"$1"' FROM '"$t_name"'" | mysql -u root -ppassword
    }

    sql_showtbl()
    {
    echo "USE '"$b_name"'; SHOW TABLES FROM '"$b_name"'" | mysql -u root -ppassword
    }

    sql_showfls()
    {
    echo "USE '"$b_name"'; SHOW FIELDS FROM '"$t_name"'" | mysql -u root -ppassword
    }

    ----------------------------------------------

    #!/bin/bash
    # program main.sh;
    . sqllib.sh

    b_name="hoge" # DB名
    t_name="piyo" # TABLE名

    sql_select "y"
    sql_showtbl
    sql_showfls
    776 : NAME IS - 2009/03/23(月) 14:23:38 ID:??? (+31,-30,-301)
    あまりに初歩的過ぎることかもしれませんが、UPDATEの質問です。

    今、
    id,name,col1,col2,col3,col4,col5
    といったようなカラム構成のテーブルがあるとします。
    col1~col5までは、全てtinyint(1)型で(別にchar(1)でもenum()とかでもいいんですが)
    それぞれに、ある状態のフラグ(0,1,2..etc)が入るとします。

    例、
    id,     name,   co1, col2. col3 ,col4, col5
    0001, yamada,  1,    0,    1,     1,     2

    ここで、col1~col5までのそれぞれの値が、1の場合のみ2に変更(0or2の場合は変化なし)
    したいのですが、一回のUPDATEクエリで更新することは可能でしょうか?
    IF文あたりを駆使すれば出来なくもなさそうですが、よくわかりません。
    現状、
    UPDATE table SET col1=2 where col1=1 and id='~~';
    UPDATE table SET col2=2 where col2=1 and id='~~';
        ・
        ・
    UPDATE table SET col5=2 where col5=1 and id='~~';

    のような感じで、5カラム分のクエリをそれぞれ書いているのですが・・。
    777 : NAME IS - 2009/03/23(月) 15:59:01 ID:??? (+66,+30,-58)
    >>776
    そこまで書いておいて・・・。
    恐らく一つの行に対してそのcolどうのこうのっていう条件を与えたいと思うんだけど、
    いまあるそのupdate文を一句ずつ見直せ。聞くようなものじゃない、答えはすぐそこ。大丈夫、やればできる。
    778 : NAME IS - 2009/03/23(月) 16:03:32 ID:??? (+70,+29,-4)
    >>776
    caseステートメントの知識を習得するといいことがあるかもしれない。
    779 : 776 - 2009/03/23(月) 18:17:21 ID:??? (+20,-30,-173)
    うおぉぉ~! できましたあ~、多分。
    ってかこれでよいのかな?

    UPDATE table SET col1=IF(col1=1,2,col1),col2=IF(col2=1,2,col2), ・・・ where id='~~';

    IF文をSELECTの中で使うことは今まであったんですが、このようにUPDATE文の中の
    SET col=exper の部分で、参照出来ることは分かりませんでした。
    (一旦サブクエリとかで、何かに値を格納しないといけないのかと思い込んでおりました。)

    いや、もしかしたらもっと効率のよい、或いは短いクエリで可能かも知れませんが・・。

    >>777,778
    レスありがとうございます。

    778さんには申し訳ないですが、今回の場合は、カラムの値が真偽の2パターンだけでよかったので、
    case文は使いませんでした。今後3パターン以上必要な時は、caseを使ってやってみたいと思います。
    780 : 778 - 2009/03/23(月) 18:30:08 ID:??? (+60,+29,-28)
    >>779
    そっか、確かに今回はcase使うまでもなかったな、余計なこと言ってスマンかった。
    たぶんその書き方で十分だと思うよ。よくガンバったね。
    781 : NAME IS - 2009/03/24(火) 16:02:32 ID:??? (+21,-15,-23)
    UNIQUE属性の列って、普通にインデックスとして機能したっけ?
    782 : NAME IS - 2009/03/24(火) 16:33:02 ID:??? (+60,+29,-25)
    >>781
    経験上は大抵のDBMSではそうなってくれるが、SQL規格上で保証されてるわけではないと思われる。
    783 : NAME IS - 2009/03/24(火) 16:33:11 ID:??? (-6,-29,-13)
    show indexしてみなよ。
    784 : NAME IS - 2009/03/24(火) 20:08:09 ID:??? (-1,-29,-47)
    UNIQUEってUNIQUEがYESのINDEXでしょ
    785 : NAME IS - 2009/03/24(火) 20:12:39 ID:??? (+0,-29,-29)
    unique constraintのことを聞いてるんじゃね?
    786 : NAME IS - 2009/03/24(火) 20:17:42 ID:??? (-2,-29,-16)
    >>785
    unique indexが出来るだけでしょ?
    787 : NAME IS - 2009/03/24(火) 20:31:19 ID:??? (-2,-30,-56)
    マニュアル調べてみたけど、書式が
    ADD [CONSTRAINT [symbol]] UNIQUE [index_name]
    ってなってるから、mysqlについてなら等価じっぽいな。
    789 : NAME IS - 2009/03/25(水) 09:49:40 ID:??? (-1,-29,-51)
    mysqlクライアント起動するときに、デフォルトで/etc/my.cnfを読み込むけど、これを変更することはできますか?
    790 : NAME IS - 2009/03/25(水) 10:07:16 ID:??? (-1,-29,-20)
    --defaults-file=ファイル名
    なにも引数つけないで起動すれば出てくるじゃん。
    791 : NAME IS - 2009/03/25(水) 14:20:51 ID:??? (+13,-4,+0)
    テスト
    792 : NAME IS - 2009/03/25(水) 15:02:41 ID:oHWQLdPG (+39,+29,-39)
    トランザクションで
    ユニークインデックスのカラムに文字データを入れて
    入ればコミット、入らなければロールバックをしてPHPのループで繰り返したのですが
    一回でも入らないとそれ以後、全部入らなくなります。
    何でですか?
    793 : NAME IS - 2009/03/25(水) 16:16:27 ID:??? (+63,+29,-14)
    >>792
    トランザクションとループのネスト関係も提示されてない状態では答えようがない。
    794 : NAME IS - 2009/03/27(金) 11:01:52 ID:??? (+12,-30,-112)
    sqlだったのかmysqlだったのかも忘れてしまったのでここで質問させてください。

    where句のin述語で抜き出したタプルを、in述語に記載された順で取り出すキーワードを探しています。
    select id from hoge where id in (1, 3, 5, 7, 9, 2, 4, 6, 8);
    と書くと、この順で取り出せるようになるのです。
    見つけたときは感動したのにメモを忘れていました。
    795 : NAME IS - 2009/03/27(金) 11:27:38 ID:??? (+24,-2,-2)
    質問は?
    796 : NAME IS - 2009/03/27(金) 11:34:40 ID:??? (+61,+29,-30)
    >>795
    はい、なんて書いたらいいかわかんなくて。

    このキーワードはなんでしょう?

    クイズみたいな日本語しか書けない俺乙。
    797 : NAME IS - 2009/03/27(金) 11:58:36 ID:??? (+69,+29,-1)
    はい、赤の方どうぞ
    >>797
    798 : NAME IS - 2009/03/27(金) 12:36:33 ID:??? (+20,-30,-26)
    order by field(id, 1, 3, 5, 7, 9, 2, 4, 6, 8)
    とか?
    799 : NAME IS - 2009/03/27(金) 13:19:36 ID:??? (+57,+28,-15)
    >>798
    それ・・・、だった気がします!
    ありがとうございます!
    800 : NAME IS - 2009/03/27(金) 13:54:07 ID:??? (+59,+29,-15)
    >>794-799
    そんな書式があるとは初めて知った。覚えてるといつか役に立ちそう。
    こういうことがたまにあるとスレをチェックしてる甲斐があると思う、ありがとう。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - insertall + - mregexp + - SSD + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について