Glamorgan 408 for 6 (Ingram 136, Zain-ul-Hassan 69, Carlson 57, Root 52) vs Derbyshire
Carlson made 57 and Root 52 before both fell to Luis Reece, who took 2 for 64 as the visitors closed on 408 for 6,
Zak Chappell claimed 2 for 70 but Derbyshire bowled poorly which allowed Glamorgan to plunder 61 fours and three sixes on a chastening day for the home side.
Green pitches at Derby often prove to be deceptive but if there was anything in it for the bowlers, Derbyshire's attack did not exploit it.
Apart from Chappell and Anuj Dal, the seamers failed to put the ball consistently in the right place which allowed Glamorgan to get away.
David Lloyd will be playing his cricket with Derbyshire next season and he showed glimpses of what the home supporters can look forward to by twice pulling Sam Conners for six in the fourth over of the morning.
The Glamorgan captain drove Chappell through the covers for four but the next ball moved away late to take the outside edge and give Brooke Guest his 100th dismissal as a wicketkeeper in first class cricket for Derbyshire.
But that was Derbyshire's last success until well into the afternoon session as ul Hassan and Ingram tucked into some poor bowling.
Ingram reached 50 from 79 balls and by lunch, Glamorgan had passed three figures with Derbyshire struggling to apply any pressure.
It was the same story in the afternoon as Ingram and ul Hassan took Glamorgan past 200 before they were parted.
Ingram drove Alex Thomson for six before Ul Hassan reached his maiden first-class 50 by clipping Dal through midwicket.
It had taken him 148 balls but importantly he had provided his side with a solid platform while Ingram played expansively.
Ingram reached his century when he pulled George Scrimshaw for his 16th four and the pair passed Glamorgan's previous best second-wicket stand against Derbyshire of 177 by Emrys Davies and Gilbert Parkhouse at Cardiff in 1951.
The partnership was finally broken three overs before tea when ul Hassan got a leading edge as he tried to turn Scrimshaw to leg and sent back a return catch.
Glamorgan were one short of a batting point when Sam Northeast pulled a short ball from Chappell to midwicket and Dal was rewarded for perseverance when he removed Ingram.
The South African had not looked like getting out until he failed to get forward to a full length ball and was bowled.
That was the last action for 20 minutes after light rain held up play and Dal should have had a second wicket shortly after the restart.
Carlson, on 27, sliced a drive to second slip where the ball struck Haider Ali on the chest and he was unable to grab the rebound.
Carlson reached his 50 by steering Conners to the third boundary for his ninth four but when Reece returned, he drove his first ball low to cover.
Reece trapped Root lbw in the penultimate over but Derbyshire leaked 177 runs in the last session which ended on a worrying note when Dal slipped in his delivery stride and limped from the field.