パスワードを忘れた? アカウント作成
15516 story

MySQLを使う5つの理由、使わない8つの理由 92

ストーリー by mhatta
Firebird... 部門より

pinbou 曰く、

本家/.の記事より。CIO.comで、オープンソースRDBMSとして人気のMySQLの長所と短所を2人の専門家に別々に指摘させるという記事が話題になっている。Tina GaspersonはMySQLを使う5つの利点として、すでに普及していること、シンプルであること、TCOが低いこと、よくサポートされていること、柔軟性やスケーラビリティに富むこと、最新テクノロジーのネイティヴサポートを持つことを挙げ(5つと言いつつなぜか6つある)、一方Brent ToderashはMySQLを使うべきでない8つの理由として、ライセンスがGPLであること、それが嫌なら商用のプロプライエタリライセンスを買わなければならないこと、既存データベース環境との統合性の問題、製品としての未成熟、機能的な不十分さ、認証制度の不備、企業内での知名度の問題、スケーラビリティの問題を挙げ、代替案としてPostgreSQLを推奨している。どちらが正しいかは読者の判断に任せたい。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2007年05月26日 21時50分 (#1163392)
    スペイン宗教裁判?
    • /.で西班牙宗教裁判だと絶対パイソンネタになる気がする
      #今なった。
      #吹き替え版ってもう見られないのん?

      sqlこねくり回しているときにはmysqlよりpostgresの方が好きなのだけどなんだかんだでLAMPのMって言うか知名度はMysqlの方が高いんだよね。
      • by Anonymous Coward
        何を勘違いしてるんでしょう、この人…

        #「『理由がN個ある』と言いながらN+1個の理由を挙げる」のは、モンティパイソンの
        #『スペイン宗教裁判ネタ』であって、史実の『スペイン宗教裁判』とは関係ありません。
  • ヒント (スコア:3, 興味深い)

    by goodyhogehoge (34126) on 2007年05月26日 23時46分 (#1163481)
    基幹システムor既存のデータベースありor開発がスタンドアロンのアプリ主導→Oracle
    開発がWeb主導でWebオンリーのサービス→MySQL

    これだけは間違いない。適材適所。実際Webの大規模サービスはMySQLが多いわけで。
  • 理由が 5の理由 (スコア:3, おもしろおかしい)

    by mgstyle (34119) on 2007年05月27日 2時13分 (#1163573) ホームページ 日記
    お偉いさんなだけに勘違いも実は高度だったりして

    頭の中で配列化されてて
    riyu[0]="すでに普及していること";
    riyu[1]="シンプルであること";
    riyu[2]="TCOが低いこと";
    riyu[3]="よくサポートされていること";
    riyu[4]="柔軟性やスケーラビリティに富むこと";
    riyu[5]="最新テクノロジーのネイティヴサポートを持つこと";

    →あぁ5個かって

    #こんなミスを毎日のように自分はやってます
    --
    [注意]コメント主は大変叩かれ弱い性質です。優しく接してあげて下さい
    ~おもしろおかしい以外に興味はありません~
  • 適材適所 (スコア:2, 参考になる)

    by Anonymous Coward on 2007年05月26日 22時18分 (#1163411)
    みんなでOracleと似たものを開発しなくてもいいと思うんだけどな。
    MySQLはシンプルで速いのが利点であり、機能を沢山付けて遅くなってしまったら
    MySQLの存在意義もなくなってしまうんだが
    • Re:適材適所 (スコア:1, すばらしい洞察)

      by Anonymous Coward on 2007年05月26日 22時46分 (#1163424)
      だよなぁ。

      シンプルな代わりに早いがスタートだったんだから「機能的な不十分さ」なんて言われても、「はいはいアンタには縁がありませんでしたね」で終わりじゃん。
      親コメント
    • by spaceyamada (19465) on 2007年05月27日 7時55分 (#1163654)
      追加機能が欲しければインストールオプションでどうぞ・・・ってのがいいのだろうけど、
      機能同士の依存関係に悩まされたり後方互換がとれなくなったりいろいろあって
      なかなかそうもいかないんだろうなあ

      #MySQL4.1で疲れてPostgreSQLに移行。
      親コメント
  • by corymania (33448) on 2007年05月26日 22時38分 (#1163422) ホームページ
    PHPとの相性のよさと、レスポンスの速さだけで
    十分に使う理由になると思う。

    会社で頼まれて簡単なDBをPHP&MySQLで組んだけども
    トランザクションも一応使えてるし応答速度も速いし
    特に不満は無いものの、最近はポスグレも使ってみたいと思いながら
    やっぱり時間が無くて勉強できない現状・・・

    それほど規模が大きくならないのであれば十分実用に耐えるのではないかと・・・
    PHPからの操作も楽ですし。



    //何で中小運送会社の平社員がコーディングせにゃならんのか
    //肩書きなんぞイラン。働きに対して対価をクレ。

    --運送会社なんで運賃しかもらえません。
    • by kanie (911) on 2007年05月27日 10時53分 (#1163715)
      それほど規模が大きくならないのであれば十分実用に耐えるのではないかと・・・

      あのう、GoogleもYahoo!も、国内だとhatenaも楽天もlivedoorもMySQL使っているのですが...

      Googleはかなり手を入れているようですけどね。

      Web方面の有名どころでMySQL以外を使っているのって、Amazonくらいじゃないかな。Oracleだったはず。

      親コメント
    • //何で中小運送会社の平社員がコーディングせにゃならんのか
      //肩書きなんぞイラン。働きに対して対価をクレ。

      --運送会社なんで運賃しかもらえません。
      職を変えればいいんじゃないかな。
      今の給与と比べて、わりにあわないなら話は別ですけどね。
  • 実際どうなん?

    用途によるって程度の事なら利点・欠点どっちにも挙がるべきじゃないし。
    • 両方から Scalability の項目をピックアップしてみると

      肯定的意見
      It Is Flexible and Scalable
      ...snip...
      "MySQL is actually a family of databases, where you can choose and configure your back end to adapt to a large set of conditions," says Patrick Sinz, owner and president of open-source consultancy Ethiqa, "so you can start small and grow later in size and/or performance."
      ...snip...
      こちらでのスケーラビリティは、最初は小さく(組み込み向けの数MBのフットプリント)、その後に大きく(数TBまでも)スケールできると言うところを重視しているようです。こうした特長は特にベンチャーなどのスタートアップ企業にはありがたいでしょうね。

      この後には、ストアドプロシージャを使うことでクライアント側のプロセスフットプリントを小さくし、CPU資源を節約できるという使い方が挙げられています。

      否定的意見
      Perception of Scalability
      I've titled this last reason carefully. There is a fairly consistent perception among many industry professionals that MySQL doesn't scale well. This matter is debated by some, though most debates tend to munge the difference between scaling up and scaling out [dba-oracle.com] (vertical vs. horizontal). MySQL discusses scaling out more than scaling up, but lists scalability [mysql.com] as one of the top reasons for using MySQL.
      こちらでは Vertical vs. Horizontal 、scale up と scale out と言う言葉で説明していて、MySQL は主にスケーラビリティを scale out によって行っている(scale up はいまいち)と言う説明をしているみたいですね。Virtual と言うのは例えば資源を単一サーバで増強(例えば64CPU化)することでスケールさせる方法なので、確かにこれはMySQLでは得意と言えなさそう。
      実際問題として MySQL の scale out では、DB を分割したりプログラム側の作りを工夫したりというアクションが必要なことが多い気がします。

      と言うことで正直「用途による」としか言えない気がしますが、上記リンクを読む感じ Oracle などでは「どっちにもスケール出来るよ」と言うのが売りにはなると思います。PostgreSQL ではどうなんでしょう。
      親コメント
    • 頑張ればスケーラビリティは上げられるけど頑張らないならそれなりでしかない。でも頑張るくらいならOracleか何か買ってきたほうが早いってこと。
  • by bero (5057) on 2007年05月28日 20時31分 (#1164446) 日記
    同僚のPC調べたらmysqld-ntが走ってた。インストールした記憶がないので最初はファイル名を騙るウィルスかと思ったが、
    調べるとAdobe Creative Suite(PhotoShop、DreamWeaver等のセット商品。Word/Excelに対するOfficeみたいなもの)に含まれるAdobe Version Cue [adobe.com](subversionやwebdavのようなもの?)がバックエンドで使ってるようだ。

    あとAcrobatでもMySQLが使われてる [binword.com]らしい

    日本ではMySQLよりPostgreSQLが普及してると聞くが、これを考えると圧倒的に逆転されてるんじゃなかろうか。

    まあバックエンドDBを考えると、VBの皮をかぶったMDBやDelphi/C++Builderの皮をかぶったParadoxが今だ圧倒的かもしれんが。
    • あ、一つ忘れてた
      PlayStation BB(PS2用NIC+HDD)では起動メニューがBIOS ROMのものではなくHDD上のもの(BB Navigator)に差し換わるが、
      コレがLinux上で動いてて、ソフトのバージョン管理か何かしらんがPostgreSQLが入ってた。(Linuxは単なるブートローダかもしれんし、BB Navigatorはネットワークアップデートするので今は違うかもしれん。)

      BB Unitの出荷台数は知らん(海外ではNIC+HDDではなくNIC単体で売られてたようだし)が、もしかしたらPostgreSQLが最多ユーザかもしれん。
      が現在BB Unitは放置ぽいので使われてと過去形にすべきか。

      ライセンスその他を考えると当時PostgreSQLを選択したのは適切かと思う。
      今ならならこういった「ちょっとした構造つきストレージ」が欲しい時にはMozillaカレンダー(Sunbird/Lightning [mozilla-japan.org])やSolaris 10のようにsqliteを使うんじゃなかろうか。

      親コメント
  • 名前が格好悪い (スコア:1, おもしろおかしい)

    by Anonymous Coward on 2007年05月26日 23時19分 (#1163454)
    名前が格好悪かったのでPostgreSQLにしました。

    #そんなんでいいのか的AC
  • by 792e6f67 (34139) on 2007年05月27日 0時56分 (#1163525)
    >ライセンスがGPLであること、
    >それが嫌なら商用のプロプライエタリライセンスを買わなければならないこと

    これって理由2つ分に相当するんですかね。
    MySQLを選ばない理由を増やすトリックに見える。
    • by shiragaoyadi (27158) on 2007年05月27日 14時53分 (#1163819)
      >>ライセンスがGPLであること、
      >>それが嫌なら商用のプロプライエタリライセンスを買わなければならないこと

      >これって理由2つ分に相当するんですかね。

      MySQLはフリーだから、といって商品のDBとして使っていた例を二つ知っています。
      一つは商品デモで持ってこられて、デモ後にDB名聞いてご説明申し上げたら、
      「そんなことないでしょ」と言いながら後ずさりで帰って行かれました。
      親コメント
  • by Anonymous Coward on 2007年05月27日 9時43分 (#1163690)
    MySQL 4.1 辺りから始まった、日本語関連の問題は解決したんですか?

    やれ default-character-set を binary で使え、とか
    skip-character-set-client-handshake でとりあえず大丈夫、とか
    その他色々ありましたけど、現段階においても上に挙げたような、
    なんとなく動かす系のやり方しか無いのでは?

    結局の所、何処かの Web アプリよろしく 4.0.27 辺りを使い続けるか、
    PostgreSQL 辺りに乗り換えるかしかないのが現状で、使う利点や、使うべきでない理由なんてものは、
    それらが解決した後に初めて生きてくる話ですね

    そもそも、現段階では日本語の正規表現/全文検索も出来ない訳ですし
    立ち位置からしてもそれほど違う MySQL を、本家/. と一緒のつもりで議論してもしょうがないでしょう


    # ええ、私もやりましたよ、4.0 → 4.1over の為の ujis → utf8 変換、半泣きになりながらね
    # 変換で化けたデータをシコシコ手直しもしました
    # その後は、サーバー/クライアント間の文字コードの同期ですよ
    # SHOW VARIABLES LIKE 'char%'; の出力を眺めながら気が狂いそうでした
    # なんでバージョンが 0.1 上がった程度でここまでハマりますかね
    # まあ社内で MySQL を使おう、と言い出したのは私ですしね、責任は取らされ^H^H^Hりました
    • by kanie (911) on 2007年05月27日 10時44分 (#1163707)
      なんとなく動かす系のやり方しか無いのでは?

      これは逆です。

      4.0までがマトモではなかったのです。 4.1から文字列を文字列として扱うようになりました。

      ハマっている人たちは、4.0までの適当さに頼った使い方をしていて、そのツケがまわってきただけです。

      そもそも、現段階では日本語の正規表現/全文検索も出来ない訳ですし

      できます。

      大量のテキストに対して現実的な速度を求めるなら、Rast, Senna, HyperEstraierあたりを使いましょう。

      親コメント
      • by to (16347) on 2007年05月28日 7時46分 (#1164069)
        いや、4.1の初期の頃はひどかったですよ。 外字があるとそれ以降の文字が全部消えたりしてたんで。 UTF-8の4バイト文字があると同じ目にあうのは今でも同じ。 日本語の正規表現(ってRLIKEのことですよね)は今でもできないと思います。
        親コメント
  • by tryandhappy (31331) on 2007年05月27日 10時54分 (#1163716)
    ポスグレは使いたくないっす。
    ヤツには何回もデータを吹き飛ばされました。orz

    ついこのあいだも別部署でPSQL8で吹き飛びそうになり、
    コネクションプールのおかげで、皮一枚で助かったラシイ。

    オソロシッス。オソロシッス。
    • by sen (197) on 2007年05月27日 11時09分 (#1163721)
      コネクションプール?
      吹き飛びそうになったのがコネクションプールで助かる、
      という状況がどうにも想像つきません。
      できれば詳細を教えてほしいです。
      親コメント
      • by tryandhappy (31331) on 2007年05月27日 11時16分 (#1163724)
        テーブル情報がデータだけ残して消え失せて、
        すでに接続済みのコネクションでは生きていた。

        ということらしい。
        動かないからとかいって、再起動してたら、、、キャー。
        親コメント
    • by zyugo (27657) on 2007年05月27日 12時08分 (#1163743)
      ちゃんと保守入ってます? PostgreSQL使うなら、Hotfixやらなんやらが流れてくるのをちゃんとウォッチしとかないと危なくてしょうがないですよ。バグレポートすればすぐにfix出てきますし。

      金がないってんなら、せめて常に最新版に更新し続けるくらいじゃないと。騙し騙し使ってたけど、8.1系は今となっては論外です。
      親コメント
  • by Anonymous Coward on 2007年05月26日 21時57分 (#1163400)
    部門名のように・・・。
typodupeerror

にわかな奴ほど語りたがる -- あるハッカー

読み込み中...