England Lions teenager Joe Clarke joined in with an aggressive hundred, in an unbroken stand for the third wicket that is so far worth 209.
England all-rounder Moeen Ali mixed fluent drives and a few sketchy shots in his innings of 55 off 125 balls.
But Glamorgan did not help their cause with several dropped chances.
Coming into this season, D'Oliveira - the grandson of former England all-rounder Basil - had a career-best of 49, but this is already his third first-class century of 2016.
It again improves on the 122 he got in the Parks against Oxford MCCU in early April and the 128 he made last week against Essex.
Moeen is playing in what is expected to be his final County Championship match before England commence the Test series against Sri Lanka at Headingley on 19 May.
But the visitors have already shored up their spin attack by offering an earlier than expected debut to New Zealand spinner Mitchell Santner. The slow left-armer, who will play in the T20 Blast for Worcestershire, was given his first start, while Glamorgan gave a debut to 20-year-old batsman Nick Selman.
Glamorgan captain Jacques Rudolph told BBC Wales Sport:
"It was a very tough day at the office but, to be fair to our bowlers, the first two sessions were the best we've bowled this season in terms of control.
"They batted at 2.5 runs per over which is what I ask for as a captain and, if we'd taken our chances, we could have had them in a spot of bother.
"But, yet again, we missed chances up front. D'Oliveira was dropped three times and, after that, they batted well on a good wicket.
"We've just got to keep trying - there's no other way. I know there might be a bit of rain around but we have to make sure when we get out on the park again that we hit the ground running."
Brett D'Oliveira led the way with a career-best 152 not out, his second successive century, as Worcestershire piled up 343-2 against Glamorgan.