元スレ【この先一体】MySQL 総合 Part15【どうなるの】
mysql覧 / PC版 /みんなの評価 : ○
102 = :
>>95
はぁ?
データベースが論理的に一貫性保っていることと、データファイルが一貫性持っていることは別だろが。
そこになんらかの調停役をするものが必要だろ。
それについては、各DBによって仕様がまちまちだから、ZFS側だけで一貫性が保てるなんてことはあり得ない。
103 = :
>>102
一貫性じゃなくて整合性だったな。クラッシュリカバリ出来る
ストレージエンジンなら>>95の通りだよ。例えば InnoDB を
使っているなら ZFS の恩恵をフルに享受出来る。Maria や
Falcon みたいな最近のストレージエンジンでも同じだと思う。
106 = :
>>101
それぞれのシーンで有効なインデックスは、
「name」のみ・・・(name)または(name, type)
「name」「type」2つセット・・・(name, type)
「type」のみ・・・(type)
全てに対応したいなら、
(name, type)と(type)の2つのインデックスを付与。
107 = :
Oracle検定があるんだからMySQL検定も作ってほしい
108 = :
>>107
ありますよ。ちなみに自分も今度受けて来る予定です。
http://www-jp.mysql.com/certification/
109 = :
>>106
最近はインデックスマージで、同時に複数のインデックスを使用可能。
111 = :
インデックスマージは複合インデックスよりは遅いよ
112 = :
>>111
おぉ、ありがとうございます。
じゃあ
「name」のみ・「type」のみ・「name」「type」2つセット
のスピードアップには
(type) (name) (name, type)
の3つインデックス用意するのがいいんですね。
名前にsageしてた Orz
114 = :
質問させて下さい
sqlファイルをsshを使ってphpmyadminへインポートしたいのですが、
どのようにコマンドを書いてあげればいいでしょうか?
アドバイスをお願いします
115 = :
消えろ
119 = :
Oracleと同じ仕組みはない
MyISAMなら1テーブル1ファイル
InnoDBなら全部まとめて1ファイルか、1テーブル1ファイル
主キーは1個しかないから主キーなんだぞ
これはOracleでも同じ
120 = :
ファイルごとに別パーティションに置いたりすれば、
テーブル領域はかなり自由。
122 = :
>>114
460 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2009/04/30(木) 00:27:39
mysql [ENT]
で、mysqlのコンソールが実行できることをまず確認
できないならmysqlが入ってない
できるのにそのエラーが出るなら、<以降のファイルの指定
123 :
もうMySQLは終りだから別のDB勉強したほうがいいよ
125 = :
その次は、GLOBALが4MBの状態時に、スクリプト中で set session max_allow・・・=1048576(1MB) にセット、
show variablesで1MBを確認後、1MB以上の画像をINSERT実行で、成功してしまいます。
公式のマニュアルには、'globalは次回接続以後、sessionはその時点から、同じ変数に別の値をセットするか接続断まで'
と書いてありますが、globalのほうはその通りなんですが、sessionでmax_allowed_packetを変更しても、
その時点で効いてないようです。
今はローカル環境で試していますので、my.cnf(my.ini)での設定や、rootでグローバル権限を持っているので
なんとかなるのですが、じつはこれを外部のレンサバで動かすことを考えているので、
my.cnfやグローバル権限がない状態で、この変更は不可能なのでしょうか?
ちなみに試した環境は、
WinXpsp3 + 5.0.78 5.0.79
Linux/CentOS + 5.0.79 5.0.80
ファイルサイズ約1.5MBの画像ファイルで、いずれも同様の結果となります。
127 :
なんで企業はOracleを好むの?
高いのに。社長さんは自分でできないからサポートがあるOracleにしてるのかな?
ってゆうかそれバカじゃん。無知。IT無知。
データベースの操作くらい今時チンパンジーでもできるよね。
チンパンジー以下だね。間違いなく包茎。
Oracle利用者は包茎。
短小包茎。
そんなバカ共と、何でも自分で解決する努力家のMYSQLユーザーが同じに扱われたくないよ。
128 = :
いちど72CPU144コアのUNIXサーバでMySQL動かしてみたらいいよ
このへんでまともに動くのはOracleとDB2だけ
129 :
適材適所でいいんじゃね?
他を否定する奴って、実務経験ない奴なんだろうなぁ・・・
といつも思う
>>128
自分には縁がなさげな規模だw
130 = :
>>128
PostgreSQLは試した?
8.1 8.2 でかなりマルチCPUへの対応を強化してるはずだけど。
12CPU以上でも性能伸びるってさ。
131 = :
>そんなバカ共と、何でも自分で解決する努力家のMYSQLユーザーが同じに扱われたくないよ。
ぶっちゃけ、SybaseとかDB2とかHiRDBの方がMySQLより情報が少なくて
エンジニアがスゲー努力していると思うけど。
132 = :
さらにその後色々調べて見ましたが、どうやらmax_allowed_packetを
sessionレベルで変更することは無理なようだと結論付けることにしました。
このあたりを参考にしました。
http://bugs.mysql.com/bug.php?id=22891
http://bugs.mysql.com/bug.php?id=14180
ちなみに、http://d.hatena.ne.jp/mir/20060201
ここによると、大きなサイズのクエリでも、max_allowed_packet以下のサイズに分割し、
何度も送信を繰り返すような実装があれば可能なようですが、
ここにある C/J や C APIを直接叩くような自前のコード以外には、
今のところphpのmysqli(拡張版のほう)関数以外には見つけられませんでした。
>>126での通り、その鯖ではmysqli関数が利用できませんし、
perl-DBIのほうにはそれらしいことが出来ない(?)ようなので、
現状、システムのmy.cnfの編集や、root等グローバル(スーパー)権限を持たない
ユーザーしか使えない環境では、サイズ制限を1MBまでにすることにします。
なにか他の方策や、「こうやれば出来る」みたいなことをご存知の方がおられましたら、
是非ともお教え頂きたいと思います。
133 = :
一括で入れられないなら、テーブル構成変えて分割で入れたら?
134 :
DBの話じゃなくてシステムとして考えた場合、
画像データをDBにつっこむ意味ってあるの?
画像データはファイルのまま適当なディレクトリにつっこんで、
ファイル名と保管ディレクトリだけDBにINSERTしておくのが合理的な気がするが。
135 = :
ご意見ありがとうございます。
実は、あまり言いたくはなかったのですが、ある知人からの紹介で依頼を受けることになってしまって、
(正規のWeb作成業者等より)格安で請けることになったものでした。
私自身は、3,4年前からテキストベースの検索エンジン的なサイト等をいくつか運営しているのですが、
実はバイナリ(BLOB)型のデータを扱うのは今回が初めてでした。
その依頼者さんの希望として、
・アップローダ的な機能がほしい
・そのバイナリをDBに格納したい
・その閲覧やダウンの可否を制御したい
・Web領域にはバイナリを直接置きたくない
・依頼者さんが借りているレン鯖上で(しかもいくつかの複数の業者で同様に)動作するようにしたい
のような要望がありまして、とりあえずそのように作成しているところです。
特に閲覧制御については、会員登録やパスワードの設定等もDBの別カラムに格納し、
それをもって制御したいとのことです。あと領域に関しては、Web領域とDB領域が別になってるようなので、
Web領域を食わなくてもいいというような見地もあるようです。
私自身は、もし自前で運営するなら、>>134さんのおっしゃるようなシステム構成にすると思います。
前にそのようなことを提案したんですが、どうもDB内に格納することにこだわっているようです。
あと、恐らくはその依頼者さんが、管理の面で、連番になったidとファイル名などの照合などが面倒なのと、
削除する時(Web領域にはFTPで接続するようですが)間違って消したり、上書きされたりすることを
懸念されているのでは、と邪推しております。
>>133
!、確かにその手はありかもしれません。(視界が狭くなってました)
その依頼者さんが、どうしてももっと大きいサイズがほしいと希望するなら、
その方法でやってみます。どうもありがとうございます。
136 = :
BLOB型をマジで使ったことないけど、たとえばセッションが10000個くらいあって
ダウンするファイルが10MBだった場合、100GBくらいメモリ消費するイメージがあるんだけど。
137 = 134 :
DBに画像つっこむのは絶対アホだと思うが、
無理にやるならmy.cnfの設定変えればいいんじゃね?
SETでちまちまやるより。
まさかmy.cnfも変更できないなんて話はないよな
138 = :
>>136
現実的に考えて、135が作るようなコンテンツでセッションが
一万いくなんてありえると思ってるの?
100すらありえないだろう。
139 = :
>>129-131
凄く勉強になりました
140 = :
買収で盛り上がってきたのに再び過疎になったね
141 = :
何でデータベースは検索が速いのかが疑問なんですが
仕組みについてやさしく書かれているサイトは無いでしょうか?
142 = :
>>141
まずはB-treeについて勉強したらいいよ。
143 :
ちょっと古いけど「RDBMS解剖学」を立ち読みしてみる とか
146 :
ところでさMySQLはオプソなんだから、
クローンプロジェクトで管理していってもかまわんのじゃない?
それともフリーなだけでオープンじゃなかったわけ。
147 :
forkはできるが、信頼できる組織か個人がやらないとダメだろう。
そこらの無名の人間がforkしても誰も使わないだろ。
MySQL創始者のmontyは会社はじめてるし、彼がやるならOKと思うが、innodbがOracleの物だからMyISAMしかダメなのはつらいかもな。もちろんforkしたらinnodbが使えないかどうかは知らんが
ユーザーからすればあまりに危険なんでforkしたやつではinnodb使う奴はそうそういないだろう。
Falconはどうもダメっぽい。っていうかinnodbのかわりになるほど完成度があがるとは思えん。
ま、なんだ
もともとinnodbがOracleに握られた段階でMySQLはキンタマつかまれてたわけで、その前のOracleによるMySQL買収交渉の時点でOracleの対MySQL戦略は決まってたはずだ。
つまりMySQLに先はない。forkに期待するのもいいが、別のDB使う検討をはじめるのが普通のエンジニアのリスク管理だと思うがな。
148 = :
>>147
InnoDB も GPL だから、使いつづけることはできる。
149 = 147 :
>>148
それは知ってるが、forkしてOracleと対立しながらinnodb使い続けるのってリスキーだろ、て話し
150 = :
以前まで動いていた、MySQLが動かなくなってしまったのですが、どうにも
解決しないので、どうかお力を貸してください。
OS:CentOS5
MySQL5
MySQLを開始しようとするとエラーがでてしまいます。
エラー内容:
mysqld failed. The error was:MySQL データベースを初期化中:
Neither host '自宅サーバーのホスト名' nor 'localhost' could be looked up with
/usr/bin/resolveip
Please configure the 'hostname' command to return a correct hostname.
if you want to solve this at a later stage , restart this script with the --force option
[失敗]
どうか御教示ください。お願いします。
みんなの評価 : ○
類似してるかもしれないスレッド
- 【MySQL】下らねぇ質問はID出して書き込みやがれ 2 (985) - [21%] - 2012/10/17 7:16
- 【】 MySQLを買収したSunを買収したOracleを 【】 (112) - [19%] - 2023/1/22 14:15
トップメニューへ / →のくす牧場書庫について