※ 引述《yachine (無聊的男人)》之銘言:
: ※ 引述《Lucemia (生の直感、死の予感)》之銘言:
: : MyISAM 有點不夠用了,想請教一些MySQL下 Innodb的問題
: : 1. 從MYSQL的文件看來Innodb比起MyISAM更能夠處理大資料量、
: : 以及大流量的服務?
: 文件看起來是這樣 但是個人實際上使用似乎不然
: 且感覺不大穩定
目前已經碰到很多奇形怪狀的問題..
: : 2. MyISAM讀一個問題是table 大小受OS檔案大小上限的影響,
: : 而且在300 ~ 400mb時,沒到上限就會變的有點慢了。
: : 現在在想使用innodb 是否能夠解決這方面的問題。
: : 但改用innodb後,他把5~6個table合併成一個2Gb的ibdata1文件
: : 這樣豈不是更慢、更容易超過os上限嗎?
: 您的DB是建構在Widnows平台上嗎?因為您提到2GB的限制
: 建議您改用Unix like 平台
: Windows上面跑了太多沒有辦法控制的程式
: 在大型資料庫的架構來說 不是很合適的
測試是在window下面測、主機是debain的系統。
linux like的系統沒有檔案大小限制嗎?
: : my.ini 中提到有innodb file path 的設定,
: : 但是那個是要一個資料庫檔案一個資料庫檔案的手動分配增加嗎?
: : 如果我要做一個10gb的應用,以2gb的檔案來存
: : 就要先開好5個檔案?
: 這一點看不大懂 你要是沒有先建立好Table file怎麼進行操作呢?
: 基本上若您評估的結果需要用多個資料庫來儲存 就要先開好
myisam 會自己開好table file ..
innodb的話是全部要自己設定嗎? 他好像也沒有按照table 來區分檔案
: : innodb使用起來和MyISAM感覺差蠻多的,第一次用沒有commit,重開死一次
: : 第二次太晚commit,當掉又死一次。mmm
: : 看到phpmyadmin中看到的資料筆數會浮動也是有點傻眼,
: : 資料不知道有沒有正確的update進去。
: : 請大家幫忙回答我的問題。
: 我想你Update會慢的原因可能你的Index太多或太複雜
: 在資料量大的環境中 建立良好的索引可以加速查詢
: 但是卻會拖慢更新效能
: 以上提供參考~
: 本人有用MySQL做過每天20G的系統 有問題可以再詳加討論
目前有的table 大至上是兩種
資料:
id, dataname, datafield1,2,3,4,5 ... ,build_time
其中id設primary, dataname 設unique, build_time 設index
(不確定需要進行order by的欄位是否應要設成index)
weighted mxm關係:
id, A_id, B_id, weight1,weight2
id 設primary
(A_id, B_id) Unique
A_id index , B_id, index
weight1,2,3, 設index ...
像這樣子的設定OK嗎?
另外一個問題是 table的大小是否會影響效能,
應該要致力於將每個欄位都設定到最小所需嗎?
感謝您無私的經驗分享 m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.110.216.36
※ 編輯: Lucemia 來自: 140.110.216.36 (10/27 03:34)