It really depends on the correlation and how you'll be doing things like order by.
In a database that supports bitmap index ops (PostgreSQL does, MySQL doesn't, unless it's in the newer alpha test code) you don't need multi-column indexes for where clauses. I.e.
select * From table where id1=2 and id2=4
could use an index on id1, and an index on id2 and then much them together with a bitmap op.
Without bitmap indexes, what normally happens is the db picks the most selective index and uses it, then uses a sequentual scan on the result set to get the rows that match the second field.
i.e. if id1 had 1000 entries for 2, and 1000 entries for 3, and so on, and id2 averaged like 5 entries per value, then the db would pick the index on id2.