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

    私的良スレ書庫

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

    元スレ【この先一体】MySQL 総合 Part15【どうなるの】

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    701 : NAME IS - 2009/09/02(水) 19:14:03 ID:??? (+9,-30,-67)
    5.0だけど、INTに2147483647以上の値がINSERTされると
    DB Error: unknown error
    で止まっちゃうんだけど、これは正しい動作なの?
    4.0のマニュアルには2147483647に丸められると書いてあるんだけど。
    5.0のマニュアルにはどうなるか何も書いてない。
    702 : NAME IS - 2009/09/02(水) 19:24:15 ID:??? (+10,-30,-60)
    >>701
    5.0でも2147483647に丸められるし、でてくる警告は
    Out of range value adjusted for column 'a' at row 1
    になる。

    unknown errorを出しているのはMySQLじゃなくて
    その上で動いている言語かツールじゃない?
    703 : NAME IS - 2009/09/02(水) 20:00:54 ID:??? (+11,-30,-80)
    >>702
    PHPからPEAR::DBを通してアクセスしていたので、コマンドから打って試してみました。
    ERROR 1264 (22003): Out of range value for column 'aaaa' at row 1
    になりました。最大値に丸めて追加はされません。
    ちなみに5.0じゃなくて5.1.35でした。
    とりあえず最大値超えのチェックをPHPのプログラム側に入れることにします。
    704 : NAME IS - 2009/09/02(水) 20:09:52 ID:??? (+4,-29,-14)
    >>703
    ちょっと関係ないかもしれないんだけど、
    うちの環境で、5.1.35からMyTHTVがエラーを出すようになったんだよ。
    5.1.34だと、正しく動いたりしない?
    ここで何か変わったのかな。
    706 : NAME IS - 2009/09/03(木) 10:16:54 ID:??? (-16,-29,+1)
    >>705
    LOCK TABLE
    709 : NAME IS - 2009/09/03(木) 10:31:18 ID:??? (-10,-30,-43)
    >>705
    > last_insert_id()を取る時
    これは複数アクセスに関しても安全。
    on key duplicate update id=LAST_UPDATE_ID()
    かなにかやっとけば完璧。ググって。
    710 : NAME IS - 2009/09/03(木) 10:59:55 ID:PDF3RFA2 (-21,+29,+1)
    >>709
    わかりました、どうもありがとう
    711 : NAME IS - 2009/09/03(木) 21:35:43 ID:??? (+64,+29,-35)
    変なテクニック覚える前に、トランザクション分離について
    ちゃんと勉強したほうがいいぞ?
    712 : NAME IS - 2009/09/04(金) 00:59:44 ID:??? (+11,-29,-36)
    >>711
    もちろんそうだけど、MySQL(MyISAM)は、
    小手先のテクニックでなんとかするDBじゃないかな。
    少なくとも、insert idをユニークにするだけなら、トランザクションは要らないし。
    714 : NAME IS - 2009/09/04(金) 12:42:19 ID:??? (+31,-30,-37)
    サブクエリの基礎
    where evDate = (select min(evDate) from schedule where evDate > '2009-09-04')
    715 : NAME IS - 2009/09/04(金) 13:50:22 ID:??? (+61,+29,+0)
    >>714
    ありがとうございます!
    本当に助かりました
    716 : NAME IS - 2009/09/06(日) 15:11:52 ID:??? (+3,-30,-126)
    「東京 神奈川」みたいにスペースで分けた複数の文字で検索かけることがありますが、
    これの検索のロジックって
    東京・神奈川それぞれを個別に %東京% みたいにlike検索のキーワードとして、合計2回クエリしてるんでしょうか?
    select * from `tbl` where `text` like %東京%
    select * from `tbl` where `text` like %神奈川%
    みたいに。
    sqlスレで聞いた方が良いのかな?
    良かったら教えてください、もっと効率的な方法があれば知りたいです。
    PHP5.2.8 mysql5です

    プログラム板のPHPスレで聞いたんですが、スレ違いということでこちらに来ました
    良ければご意見お願いします
    717 : NAME IS - 2009/09/06(日) 15:25:50 ID:sqLNCpnT (-3,+1,-2)
    聞くとしたらSQLスレ
    聞く前にググレ
    718 : NAME IS - 2009/09/07(月) 07:00:19 ID:UJq67Uhj (+42,-26,-25)
    すみません、初歩的な質問です。

    データベース(MySQLなど)を構築する場合は、それ専用のマシンを
    用意しないといけないのでしょうか?

    たとえばWebサーバとして使っているマシンに構築するのは不可能でしょうか。

    よろしくお願いします。
    719 : NAME IS - 2009/09/07(月) 08:49:27 ID:??? (+47,+29,-6)
    >>718
    やってみないの?たいした手間じゃないとおもうけど。
    720 : NAME IS - 2009/09/07(月) 09:04:09 ID:??? (+62,+29,-90)
    >>718
    できるよ。
    それに、WebサーバーとMySQLは、同じマシン内で動かしたほうが
    セキュリティ的にもDBとWebアプリの通信内容が外に漏れず安心、
    という面もある。(パフォーマンス的には別のもののほうがいいけど、
    それはまぁ規模によりけり。)

    大抵のLinuxサーバーなら、MySQL入るからやってみればいい。
    もちろん、httpdとの相乗りも可能だよ。
    721 : NAME IS - 2009/09/07(月) 09:31:29 ID:??? (+62,+29,-7)
    >>718
    それだけの情報だと言える事は

    ソフトウェア的には同居は可能
    722 : 718 - 2009/09/07(月) 12:22:13 ID:UJq67Uhj (-13,+29,-7)
    >>719-721
    どうやら大丈夫そうなので同一マシンで構築してみたいと思います。

    ありがとうございました。本当に助かりました。
    724 : NAME IS - 2009/09/07(月) 19:23:09 ID:??? (+3,+6,-14)
    >>723
    Perlも入ってないの?
    725 : NAME IS - 2009/09/07(月) 22:07:05 ID:??? (-6,-29,-2)
    sedとかawkもあるぞ。
    726 : NAME IS - 2009/09/07(月) 22:22:50 ID:??? (+47,-29,-68)
    教えてもらえないでしょうか
    MySQLをWindiwsServer2003r2にmsiインストーラでインストールすると
    直ぐに終了してしまい
    [後でもう一度トライして下さい]の様なメッセージが出て
    イベントログにも
    [早すぎる終了]のようなメッセージがありました
    インストールは可能ですよね?
    何が駄目か検討つきません
    助けて下さい!
    727 : NAME IS - 2009/09/07(月) 22:39:53 ID:??? (+0,-29,-8)
    >>726
    > Windiws
    > 検討

    何か、インストール時にも読み違いや書き間違いがあるんじゃないのか?
    728 : 726 - 2009/09/07(月) 22:55:07 ID:??? (+57,+29,-2)
    すんません!
    はずかしい!
    やはりやり方が悪いんでしょうか...
    729 : NAME IS - 2009/09/07(月) 23:38:43 ID:??? (+57,+29,-37)
    ダウンロードしたのが壊れていたとか
    あるいはPCの方で何か異常が生じているとか
    730 : NAME IS - 2009/09/08(火) 00:24:22 ID:??? (+49,+21,-2)
    インストール権限がないとかだったりして
    731 : NAME IS - 2009/09/08(火) 00:32:22 ID:??? (-1,-29,-5)
    SQLSever以外のDBインストールすると
    おかしくなるんだろ。
    M$トラップが発動したと思われ
    732 : 726 - 2009/09/08(火) 07:58:25 ID:??? (+63,+29,-45)
    ローカルのアドミニストレーターで
    リモートではないコンソール画面からも
    いく度か別のバージョンのインストーラでも試しましたが結果は同じでした
    詳細のエラー調べてみます!
    734 : NAME IS - 2009/09/08(火) 09:46:09 ID:??? (+30,+5,-4)
    別マシンに入れたPerlやPHPからやればいいじゃん。
    735 : NAME IS - 2009/09/08(火) 12:13:24 ID:??? (+14,-27,-4)
    >>732
    >詳細のエラー調べてみます!
    最初にやれ!w
    736 : NAME IS - 2009/09/08(火) 13:55:01 ID:m49/nbrV (-10,+29,-61)
    >>734
    単順にSQL上で処理することは無理ということでしょうか?
    ローカルサーバーと自分のPC以外からのアクセスを管理者に制限されているので
    やろうとしたら環境整えなきゃいけなかったので方法があるなら
    SQLだけでやりたかったのです
    でも駄目そうなので環境作る方向でいきます

    ありがとうございました
    737 : NAME IS - 2009/09/08(火) 17:09:12 ID:??? (+7,-29,-35)
    Windows MySQL 5.1

    接続しているデータベースによって動作を変えたい場合がある
    (具体的に言うとテスト系なのか本番系なのか)のですが、
    現在接続しているデータベースが何なのかをSQLで知る方法という
    のはあるのしょうか?

    738 : 726 - 2009/09/08(火) 22:17:29 ID:??? (+4,-30,-250)
    >735
    もうしわけございません。
    確認致しました。
    以前にもWeb上で情報検索したのですが、解決策がわかりませんでした。
    ダウンロード元(9/8現在):http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.38-win32.msi/from/pick


    インストーラメッセージ
    -----------------------------------------------------
    MySQL Server 5.1 Setup Wizard ended
    prematurely

    The wizard was interrupted before MySQL Server 5.1 could be
    completely installed.

    Your system has not been modifiled. To complete installation at
    another time, please run setup again.
    ------------------------------------------
    イベントログ情報↓

    -------------------------------------------------
    イベントの種類: 情報
    イベント ソース: MsiInstaller
    イベント カテゴリ: なし
    イベント ID: 11708
    日付: 2009/09/08
    時刻: 8:40:09
    ユーザー: ********
    コンピュータ: ********
    説明:
    Product: MySQL Server 5.1 -- Installation operation failed.

    詳細な情報は、http://go.microsoft.com/fwlink/events.asp の [ヘルプとサポート センター] を参照してください。
    データ:
    -----------------------------------------------

    Web上での調査は行ったのですが、、、
    どうぞご存知の方いらっしゃいましたらご教授ください。
    よろしくお願いいたします。
    739 : 726 - 2009/09/08(火) 22:21:33 ID:??? (+3,-30,-83)
    あっ、補足ですが
    他のサーバ(Winserver2003R2)で試みた結果も同様でした。
    基本的にはローカルAdminをRDP接続で作業しています。
    ドメイン環境(上位に別のドメイン有)、
    SQLserverは稼働中です。
    (その他Apache,rubyの環境です。)
    不足あれば追記します。
    よろしくお願いします。
    740 : NAME IS - 2009/09/09(水) 13:04:57 ID:??? (+32,-29,-37)
    >>737
    関数DATABASE()の戻り値。
    ただ、セッション変数を明示的に使用した
    ほうがいいのでは。
    741 : NAME IS - 2009/09/09(水) 18:49:23 ID:??? (+61,+29,-36)
    >>740
    まだセッション変数って何?というレベルなんで w これからも勉強します。
    有難うございました。
    743 : NAME IS - 2009/09/09(水) 21:14:50 ID:??? (+35,+17,-15)
    スレ違いだな
    745 : NAME IS - 2009/09/11(金) 10:51:27 ID:??? (-1,-29,-2)
    746 : NAME IS - 2009/09/11(金) 20:04:52 ID:??? (-6,-30,-262)
    レプリケーションに関しての質問です
    既存のマスタ-スレーブのレプリケーションに新しくスレーブを追加しようと思いました。
    幸いマスタ側でバイナリログをすべて取っていたので空っぽなスレーブをつないですべてbinlogで読ませようと思いました。
    今回追加したスレーブはテスト目的で、vmware上で動いており、スペックがかなり悲惨なのです。

    スレーブの設定を終えてrelay-logをどんどん作ってくれたのですが、relay-logが多くてhddがいっぱいになってしまいました。
    おかげでsqlスレッドも動かなくなりました。
    i/oスレッドだけ止めるだとか、(レプリケーションをいじくりまわす)このあたりの小技とか、何か解決のヒントを教えてもらえませんか?

    -- 既存のスレーブもunkスペックなのですが、マスタ開始当初から動いているためrelay-logはpurgeされてうまくうごけています。

    >>742
    そういった機能がなかったので結局取り込むためのコードかいて利用してます。
    747 : NAME IS - 2009/09/11(金) 20:21:16 ID:??? (+19,-30,-141)
    MySQLを使うシステムで全文検索の機能を作ることになりました。
    MySQLのFULLTEXTインデックスでは日本語に対応できないようなので、Tritonnを使おうと考えています。
    しかし調べてみると、Tritonnの全文検索はMyISAMエンジンのテーブルでのみ機能するようです。

    全文検索を実現するためにはMyISAMを使う必要がある、
    しかしトランザクションが必須なのでInnoDBを使わなければならない
    という状況になっており、解決方法が分かりません。

    できればTritonnを使いたいのですが、Tritonn以外の方法も含めてMySQL+全文検索機能を実現する良い方法がありましたらご教授頂けないでしょうか?
    よろしくお願いします。
    748 : NAME IS - 2009/09/11(金) 20:49:05 ID:??? (+40,-29,-36)
    >>747
    テーブルを分けるとかじゃダメなの?
    トランジャクション使うデータはInnoDBにして、全文が必要なデータはMyISAMにするとか。
    何のデータか知らんから無理かもしれんが。
    それか、分かち書きしたデータにFULLTEXT張ってMATCH ~AGAINSTとか。
    749 : 747 - 2009/09/11(金) 21:06:19 ID:??? (+74,+30,-123)
    >>748
    回答ありがとうございます。
    やはりテーブルを分けるのが筋でしょうか。
    ブログ関係のWebシステムを作っていまして、ブログ記事のタイトルや内容、その他の関連テーブルからテーブルをまたがって全文検索する機能を作る予定です。
    トランザクションは無くても大きな問題は無いように思うのですが、ここは上からの支持なので外せないのです。
    また、分かち書きしてDBに入れることも提案したのですが、データ量が増えるとパフォーマンスに影響すると言われて却下されてしまいました。
    トランザクションと全文検索の両方を必要とするテーブルを作らないようにDB設計を見直す方向でもう一度考えてみたいと思います。
    ありがとうございました。
    750 : NAME IS - 2009/09/11(金) 22:10:16 ID:??? (+57,+29,-32)
    パフォーマンスを気にするのにRDBで全文検索やれって指示?
    単にレコード数が多いだけのテーブルの方がチューニングのしようがあるのにな。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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