The home side had Ciaron Brown back in their defence for the first time since suffering a knee injury against QPR in April, while Derby restored Chile forward Ben Brereton Diaz to their starting line-up, in which Andreas Weimann made his 100th appearance for the club.
The Rams looked the more assertive side at the start with Brereton Diaz skinning Brodie Spencer down the left flank and cutting back to Weimann, whose shot was blocked.
But Widell Zetterstrom had to save well from Mills after Craig Forsyth failed to deal with a route one ball from the back and then denied de Keersmaecker twice in a matter of seconds as Siriki Dembele caused havoc in the Derby box.
There was nothing the keeper could do, though, as Belgian midfielder de Keersmaecker slipped the ball through a static Rams backline and Mills had plenty of time to pick his spot for his first goal of the season.
It should have been 2-0 when Dembele fed Nik Prelec just inside the box, but having created space for a shot, he fired a left-foot effort over the bar when he should have hit the target.
Prelec turned provider in added time at the end of the half after two Derby defenders got in each other’s way attempting a clearance, heading down for Michal Helik, whose powerful volley was saved by Widell Zetterstrom diving to his left.
After early Derby pressure following the interval, Prelec was in the thick of the action again, turning away from two defenders on the right wing, then cutting back onto his left foot and forcing Widell Zetterstrom into action again.
The Rams tried to rouse themselves in the final quarter of an hour but the closest they came was a corner which skimmed off de Keersmaecker’s head and just over the bar as they suffered a fourth defeat of the campaign in which they have still only won once.
They are next in action at home to Norwich City on Tuesday, with Oxford away to Wrexham the following day.