The order of fields doesn't seem to be optimal. Please use EXPLAIN to make sure, the existing indexes are used properly