MySQL vs PostgreSQL
結構興味ある人多いのでは? 俺はもう少しMySQLが評価されてほしいと思うけれど、PostgreSQLも好き。 語ってくださいな。 closed-sourceのプロダクトと一緒に、あるいはその一部として 配布する場合にはね。それも以前からでそ? MySQLのどの辺が商用で有料の範囲に入るのか良く解らんが・・・ <有料に当たる場合> ・IT企業がWeb上で利用するクライアント用のシステム構築した場合 <無料に当たる場合> ・商用目的ではなく個人でWeb上で利用するシステムを構築した場合 ・IT企業が社内LAN上で利用するクライアント用のシステム構築した場合 でOK? つうか、んなところで「かもしれない」やってるよりもソフトエージェンシーあたりに 質問した方が早いんでないの。 >>191 ん? IT企業が、客に売るシステムに使う場合は、 有料ってこと? ソフトエージェンシーのサイト↓みたけど http://www.softagency.co.jp/order/license.html いまいち、分かりづらいな。 ・MySQLのライセンスは、"GPL2"と "コマーシャルライセンス"の2体系ある。 ・"GPL2"の場合は、それを使用するソフトも"GPL2"に準拠する必要がある。 ・"コマーシャルライセンス"の場合は、次の4ケース以外は有償 1.MySQL の評価を行う場合 2.自分(自社)で作成した MySQL を使用するアプリケーションを自分(自社)だけで使用する場合 3.自社(自分)の Web サーバーのバックエンドとして MySQL サーバーを使用する場合 4.MySQL を使用した製品が OSI に準拠したオープンソースソフト SIerが仕事で使うの場合は、たいがい有償になる訳か・・・ >>194 という事は、製品として売ってもGNUライセンスを選択(ソースコード公開と同義) すれば無償な訳ね。 >>195 その場合の問題は、複製自由な製品に 金を払ってくれる人がいるかどうかだな。 >>196 作りこみの業務用ソフトであればそれが普通 あるよ。 うちのパスコンはPostgreSQL,MySQL,FireBird+php+apache@winの環境を構築済み。 インストールしたら安心してしまって全然触ってないけど。 プログラム板にスレ立ってたから覗いてみたら? WebProgにはまだ浸透してないのかも。 >>198 Webではきついかもしれないね。 せいぜい同時アクセス100クライアントくらいらしいから。 PostgreSQLの本家は、Windows版を作る気は無いのかね。 PostgreSQL:多機能だけど遅い MySQL:高速だけどPostgreSQLに機能は劣る、Winでも動く っていう認識でよいの?他にめだった違いある? >>203 ざっくりすぎだろ? あと高付加時のレスポンスやスルー( ´,_ゝ`)プッ とも大事だろ? あと障害時の堅牢性とか復旧までのダウンタイム(可用性)とかな。 >>197 > 作りこみの業務用ソフトであればそれが普通 マジ? 業務用ソフトだと複製自由が普通なの? 著作権者の許可無く複製はできないのが普通だと思ってた。 >>206 開発委託の場合、著作(財産)権を譲渡する契約にする ことが多いよ。その場合、ソースをコピーしようが公開 しようが発注者(=著作権者)側の自由。 でも自分が金出して作ってもらったものを他人にただで 公開する人は少ないと思うけどね。 Postgresって、一応、行ロックってできるんでしたっけ? windows 2000にmysql-4.0.12-win.zipをインストールしました winmysqladminでユーザーの設定、mysql -u root hogehogeでrootの設定しても mysql -u rootでパスワードなしでログイン出来てしまいます mysql -u root -pでパスワードを入力するとエラーになってしまいます ERROR 1045; Access deied for user: 'root@127.0.0.1' (Using password: YES) パスワードなしでログイン出来ないようにするにはどうしたらいいのでしょうか? パスワードなしユーザーを消したらokですた すまんす SQL自体本格的に使うの初めてなんですが、 mysqlって複数クライアントからの同時更新何もしなくてもOKですよね? あと、定期的なDBのゴミ掃除とか必要ですか? そんでもって、DBの大きさって実際のデータの何倍くらいになりますか? Mysql 4.1出てるね〜 サブクエリーに対応してるね〜 ━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━― ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉 とうとうMySQLでもサブクエリできるようになったんだ。 これでテーブルの自己結合ガンガンして 無理やりサブクエリと同じ結果を得る必要なくなるね。 でも、サブクエリ無いおかげで結合のプロになれたけど。 MySQLとPostgreSQL違いはなんですか 初心者でスミマソン 簡単に言うと MySQL 高速性を追求、その代わり機能は絞り込まれている PostgreSQL フリーな割りに機能充実、速度面では若干心配 ただ、MySQLの機能はだんだんと充実してきてるし、 PostgreSQLも処理速度等に改善が見られてる(らしい) >>223 ありがとうございました。MySQLとPostgreSQL違う言語なんですね。 もう1つお聞きしたいのですが? カゴヤネットのサーバーを借りているのですがMySQLとPHPが使えます。それで 付録に付いていたショッピングカート(FLASH+PHP+PostgreSQL)が正常に動きます。カゴヤネットにPostgreSQL は無いのに何故動くのでしょう?不思議でたまりません。 >>224 PEARっていうPHPのクラスライブラリがあって、そのなかに MySQLやPostrgeSQLなどの違いを気にせずにデータベースを 扱えるクラスがある。(ざっくばらんな説明だけど) そのサンプルはそれを使っているんじゃないかな? PEAR.phpとかDB.phpとかが含まれてない? >>225 有難うございました。そうなですかPHPにそんなクラスがあるんですね。 PEAR.phpとDB.phpファイルは見つからなかったんですが phpファイルはacceptorder.php とgetGoodsList.php だけでした。 サンプルの物は(FLASH MX ActionScript RDBMSプログラミング)の本に添付されてたものです。 あ!! このサンプルFLASHとPHPのみで作られていました。 すみません(/o\) 他のサンプルは(FLASH+PHP+PostgreSQL)やはり動きませんでした。 わー 調べずにPostgreSQL系の本買ってしまったんですがMySQLのお薦めの本てありますか? >>194 MySQLってライセンス料とるんかい!だったら 商用DBに分類しろよ。Postgresから宗旨替え しようとして来たのに.. もう土俵が違うっつーか、、対決の意味すら ないので、漏れみたいなのが迷い込まない ようにそろそろ終了して下さい。 1 MySQL Pro License, $440 だってよ。みんなちゃんと払ってるのか? ライセンスって・・・ もまえらシステム他社に納めてるのか? >>228 >>230 確かに判り辛い面もあるが、ソフトエージェンシーのサイトに日本語解説が あるのでちゃんと読んで欲しい。その指摘がMySQLに対して正当なものでない事がわかるから。 (もっとも>>194 に書いてあることそのままなのだが。つかリンクも張ってあるな…) 多くの場合GPLに従い使用も再配布も出来る。この場合はライセンスフィーは不要。 ただ組み込み製品とか大きなシステム製品の中にMySQLを使用する場合にはGPLでは不都合があることも多い。 そういった向きにGPL以外のライセンス制度を設け、MySQL ABの保証とサポートを付けて、 実質このサポートについてのみ有償となっている感じの設定。 個人で普通に使ってる場合にはGPLで問題ないだろうし、 ISPでそのままMySQLをインストールした場合もGPLで大丈夫な範疇。 だから間接的に使用しているユーザもライセンス料に関しては無料。 じゃないと、こんなに(海外サーバは特に)受け入れられてないよな。 >>232 それ聞いてもよくワカランが、つまりsqlを介してのみ 使ってるような(CGIとか)プログラムはGPL汚染されないと 言っている? >>233 つまりMySQLで作ったアプリを売り物にするなら金払え! てことだろ >>231 え?このスレに集う香具師はDIY系なの? >>234 だ・か・ら > MySQLで作った ってとこの正確なところを聞いてるのよ MySQL自体を改変したり、まさにそれを 一部とするようなソフトウェアがGPL汚染を 受けるのは分かるけど、SQL経由で使用 してるだけのプログラムが影響を受けるのか ってこと。GPL汚染を免れるためにライセンス 料を払わなきゃならないのかってこと。 >>233 だ・か・ら MySQLのデータの操作用コードが含まれてたらGPL汚染されてるんじゃねえ? >>238 だ・か・ら > データの操作用コード って何よ? >>233 具体的な話してくれんと分からん つまり元からMySQLを活用したアプリがあって(蔵の自社作成アプリ)、 それの機能追加用コードを書いて納める際にGPL汚染になるかってことか? >>241 いや、ごくごく一般的なCGIの話。 コードレベルで考えたらPerlでいうと DBIとか、PHPでいうとPEARとかの 既存ライブラリ使ってMySQLを「利用」 する場合も、GPL汚染を受ける「派生」と 見なされるのかどうかって話。 よく分からんが、それを売るなら危ないのでは? 結局MySQL「利用」してるんでしょ? 蔵の側でライセンスをクリアしてればセーフ。 ただ黙ってれば分からんし、ごねれば諦めるよw >>245 も前、GPLってよく分かってないだろ 晒しage つか結局のところ>>233 は 金払わなくてもいいと言って貰いたかっただけなんじゃねーのか? >>249 そういう矮小な話ではないよ。 ライセンス形態によってそれが どういう管理下にあるのか、 それが重要なのだ。 この板ではそういうことは(゜ε゜)キニシナイ!! らしいということは分かった。スレ汚しゴメンよ >>252 Web構築にどんな関わり方してるのか 知らないけど、GPLくらい知っといた方が いいと思うよ。ちなみに法律系にいっても 誰も知らないよん(w >>ID:pcyKY/lT 分かったからMySQL.comにある英語の原文読め >>254 分かった、見てきまつ。でもさ、229が知ってるなら >>194 のソフトエージェンシーの見解とそれ(原文)が 違うかどうか、くらい言っときなよ。 >>254 your application としか書いてないじゃねぇかよ。 それとも `better' の解釈次第とでも言いたいのか? 知ったかはやめてください。 >>257 OK, 漏れ的には揚げ足を取るような 読み方だけど、「自分で配布しない限りは」 つまり客が入れたことにすれば良い(言い方は 悪いけど納品物に含めない)、で正解? でもさ、そうすっとソフトエージェンシーの見解 (>>194 ) ってどうなんよ * GPL に同意できない場合は、コマーシャルライセンスを選択してください。 本家へのリンクがあるとは言っても内容、ニュアンス的に 「GPL or コマーシャルしかない」って読めるよなぁ。 >>260 SA関係の方ですか?そんなことは一言も 言ってませんが? っていうかよくある論争。この板で なかっただけちゃうん? いや、勉強になった。明日から 安心してMySQL使えるよ。 >>257 最後に「正解!」って言って欲しかったけど、 何はともあれご助言有り難う。 >>258 が正解としても、一緒に配布するとGPLに縛られるのは何故? CGI <---> (LGPL系ライブラリ) <---> GPL下のMySQL この両端はかなり疎な関係にあると思われるが? >>265 GPLそのものとは関係なく、MySQL AB社がそういうことにしたんだろうなと思って よくよく読んでみると、GPLでちゃんと完結してるみたい。 1. 百パーGPLな香具師は自由に使って良し! もしお前らのアプリがGPLか、MySQL AB社公認のGPL互換OSIライセンス下にある場合は MySQL社製のGPLソフトをお前のアプリと一緒に出荷してよろしい。「アプリ」ってのは ソフトウェア、システム、ツールとかユーティリティのことな。この限りにおいてMySQL社の 特別許可は要らないよ、GPLまもってりゃ充分。けどな、MySQL一同としては漏れらと関係を もっておくことを薦めておくよ。 という訳で正しければ、「何故一緒に配布するとGPL縛りを受けるか?」の理由の説明は していない。この逆はよろしい、と言ってるだけで。 2. 3. と続くが2. は多分 >>258 で 3. が商用ユースの話なんだけど、条件が a) If you include the MySQL server in your non Open Source application b) MySQLのdriverをincludeしてる場合 c) お前の組織内で使う分には気にせんで良し d) 商用ライセンスはMySQL AB社が責任持つ。GPLのはシラン。 となっていて、この場合のポイントは a) MySQL server を「含む」って表現からすると、 「SQL使った利用」は当たらないと解釈した。だから、やっぱ本来のGPLの声域を犯さない 限りはフリーってことでよろしいか?>>267 >>266 なんだよ。次のレスするヤシに振るか? SQLクエリで何らかのGPLツール利用の場合→GPLには無関係(縛られない) (例えばGPLのエディタで書いたプログラムはGPLに縛られる?られないと同じこと) >>233 にもあったが、"CGI"はどうよ?という質問だと、そのCGIの作りによるとしか言えん。 MySQLサーバ(データベースエンジン)を組み込んだCGIつうのもアリだし #そもそもCGIという言葉を狭く解釈しすぎの気がする。本来の意味で宜しく 一般的なWebプログラマを想定すると下の通り 取り合えずPHPから関数でMySQLを使う場合 ・PHP自身(PHPの独自ライセンス。但しPHP4の場合) ・PHPのMySQLエクステンション(PHPの独自ライセンス。これもPHP4に添付のもの) ・PHPのMySQLエクステンションで利用しているlibmysql (TCX DataKonsult AB(現MySQL ABにあたる)の"public domain") # libmysqlはv4のはGPL、v3.23のはLGPL(コマーシャルライセンスではないものの場合) # これらのものはPHPではわざと使ってない。PHPの独自ライセンスとバッティングするため。 # 因みにPostgresの場合はlibpqになるのだが、こっちはBSDライセンス # 確かに最新のv4でのGPLだと縛りがキツイが、そんな"GPLのMySQL"(の機能)を使って、 # "GPL以外の仕事"をするというのが、まちがっとろーがという気がする。 # 判りにくいlibmysqlのライセンス絡みの話は以下を参照 # http://www.mysql.gr.jp/mysqlml/msg.cgi?ml=mysql&id=5519 PHPの独自ライセンスでは 「PHP言語で作ったプログラムは、このライセンス下には置かれない」ので、 好きなようにしれつう感じ。つまりMySQL関係を使わん他のPHPのプログラムと同じ扱い。 PerlのDBIとかも、同じlibmysql使ってるんじゃないのかな? もちろん独自に実装してるかも知れない。 長くなったけど、Webプログラマの場合インタプリタ型言語で開発することが多いと思うけど、 http://www.gnu.org/licenses/gpl-faq.ja.html#IfInterpreterIsGPL のセクションの第2パラグラフ以降の話とか、例え日曜プログラマであっても GPL・その他ライセンスについて勉強しておくことも肝要かと。 >>270 4.0以降はGPL or 商用ライセンスってことやね。 昔ライセンスのせいで使えなかった記憶があるけど 逆戻りか。ところでWeb屋でGPLで納品なんてやってる とこあんの?客に改変・再配布を許すってか。 >>271 わざわざGPLで欲しがる客はいないと思うが、 著作(財産)権まるごと譲渡はフツーあるだろ。 結局さ、MySQLみたいに会社がかんでる Open Sourceって会社の都合で途中でライセンス 変えたりするから、単発以外は心配で使えない。 >>272 >著作権譲渡 そういう契約してればね。でも今の話は MySQL使うだけで無条件にGPLって話でしょ。 ライセンスだけ考えたら余計なこと 考えずに済むPostgreSQLに軍配が あがるよな。 MySQL == 新手の商用DB 他にこのタイプ ”GPL、 さもなければ金払え” な奴あげてみそ mysqlが海外でpgより使われてる理由って何?? 3.x時代のLGPLがウケタのか、単に↑の連中の 解釈が間違ってるのか >>275 そうすね、Postgresに比べると気にする必要がある。 で、正直な話オレから見るとシステムとして納品するものに GPL版のMySQLをそもそも使おうとは端から思わないんだけど、 プロとしての仕事の話で、他の人がどうもGPL版に拘ってるように 見えるのはなんでなんすかね。20万円クラスのシステムの組み込み用途とか? #単にどういうターゲットなのか知りたいだけです。 クラインアント製品を作る立場の人が、ネックになるという意見は 非常に良く判ります。ライブラリがGPLつうのは… サーバ本体がGPLと商用の区分けになっている以上にネックだ。 まあ、製品を作る時にどういうライセンスが必要かと色々見てみたら、 | MySQL Client Prices: For circumstances where a MySQL client license is required, | please contact us for a quote. とあるので、必ずしもクラアント込みのサーバライセンス以外にも形態がありそう。 MySQL Connector/C++のライセンスというのもありそうだけど、これも個別対応みたい。 ただ値段がいくらにせよ、3.23.18以前のFPLのようにライセンス必要なのは「サーバのみ」 という形態のままの方が判りやすいし、良かったと思う。 >>278 よく知らないけど、やっぱりシンプルで軽快(スピード)の部分でウケてるんじゃないかな。 「3.x時代のLGPL」というのは理由には入らないと思う。ウケてるというのはISPでの採用に関してなので、 上記は関係ないため。組み込みへの採用に関しては、MySQLとかPostgresとかよりもInterbaseとかじゃないかな、 コンパクトで機能も豊富、Windows対応とかの理由で。いやMSDE2000の方が、はたまたJETですかね。 海外に比べ日本でPostgresの人気が高いのは、これは日本語対応に関しての力に入れ具合(広報もね)が やはり一番の理由でしょう。 無知ですみませんが、MySQLってGPL版とそうでないものがあるんですかね? GPL版を商用利用すると具体的にどういうところで面倒なんでしょうか? >>280 ちょっと前のリンク読めば分かるけど、商用ライセンス 買うとGPLじゃなくなるらしい.GPL版=ライセンス無しって 意味だと思うけど、何がめんどうってあーた、ライブラリが GPLだから.. オープンソース使ったビジネス(収益)モデルの一種なんだろうな。 カネ払ったらGPLじゃなくていいってのが、中途半端にアレだがな。 中途半端にアレっていうか、そこ(ソースをクローズドにするため)に カネ払わせるってのがアレだな。ピュアなGNU信者はそういう商売は してこなかったわな(w >>281 ども、上の方でしっかりと議論されていましたね・・・ しかしややこしいなぁ、ざっくりいえば、 アプリケーションの納品、販売時にはコマーシャルライセンスがいると。 このライセンスって同じアプリケーションでも一個販売ごとに 必要となるんでしょうね?だとすると大きいなぁ。 MySQLとPostgreSQLではMySQLのほうが速いとよく聞きますが、 具体的にどれくらいの速度差があるものなのでしょうか? みんなが作ってるのってWebアプリでしょ?それなら >>194 に >・"コマーシャルライセンス"の場合は、次の4ケース以外は有償 > >1.MySQL の評価を行う場合 >2.自分(自社)で作成した MySQL を使用するアプリケーションを自分(自社)だけで使用する場合 >3.自社(自分)の Web サーバーのバックエンドとして MySQL サーバーを使用する場合 >4.MySQL を使用した製品が OSI に準拠したオープンソースソフト これの3.にあたるから無償でいいんじゃない? >>288 うーん、話は有償/無償の観点じゃなくて、もっと細かい話に移ってる (と漏れは思っています) MySQLの場合、無償のパターンではGPLが適用される。 これは場合によっては、自分の作るWebアプリにも、そのまま強制的に GPLを適用しなくては、ならなくなる可能性があるということ。 なので>>268 で、少なくても件のケースでは、自分の作ったプログラムには GPLは適用されないよ(但しMySQL自身はGPL)つうことを書いたんですわ。 別なケースではGPLが適用される(と見なされる)ことがある。 とまあ、費用の問題だけじゃないんで。 基本的なことだが、たとえGPLだろうと他人に配布することを 強制されるわけじゃないわけで。 自社サーバーとか、アプリケーションファイルに直接アクセス できる人間が全員信用できる状況ならば、GPLを選択しても 大して問題にならなかったりする。 read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる