挨拶、Rails 2.3.5/MySQLキーの優先順位の問題。力指数
私は万行のカップルと、むしろ「大...」テーブルを探しています、と単純化のために表Aに、だから、この
create table data (
user_id int ...
created_on datetime ...
...
key (user_id),
key (created_on)
...
) engine = InnoDB;
のように見えますクエリ... SELECT * FROMデータWHERE user_id = X and created_on = Y
クエリオプティマイザは、user_idよりもcreated_onを優先されていますが、今はFORCE INDEXを使用して問題を「強制」できますが、すべてのData.findとそれ以外のすべてのクエリ(何百もの変更)でそれを行う必要があります。
または
Iすることができます。は、私は、可能な場合(つまり、..別FORCEインデックスは手動で入力していない他の矛盾が)使用 "データFORCEのINDEX(user_id_index)" をグローバルにRailsの2.3.5に影響を与えることができますmysqlクエリオプティマイザがより手動でインデックスを好む方法を変更しますか?私はテーブルデータの分析を実行してみました。クエリプランは変更されません。
プライマリキーなし?あなたの唯一のinnodbクラスターインデックスを浪費するための哀れみ。 –
@ f00:追加するには:PKが単調に伸びるならば、innodbのほうがいいです。 – zerkms