Dakota Hudson and two relievers combined on a one-hitter, and Paul DeJong homered to lead the St. Louis Cardinals over the Milwaukee Brewers 3-0 Monday night in a series opener between NL Central contenders.

Yasmani Grandal's ground-rule double with two outs in the eighth inning off Giovanny Gallegos was Milwaukee's only hit. Hudson was lifted with two outs in the seventh after throwing 111 pitches, and Andrew Miller got four outs for his fifth save.

More Images
St. Louis Cardinals starting pitcher Dakota Hudson (43) is removed by manager Mike Shildt (8) during the seventh inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Dakota Hudson and two relievers combined on a one-hitter, and Paul DeJong homered to lead the St. Louis Cardinals over the Milwaukee Brewers 3-0 Monday night in a series opener between NL Central contenders.

St. Louis Cardinals starting pitcher Dakota Hudson throws during the fourth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Hudson (12-6) matched a career high with seven strikeouts and walked four — including his final batter, Eric Thames. Gallegos entered and retired Ben Gamel on a grounder to end the inning.

St. Louis Cardinals starting pitcher Dakota Hudson throws during the first inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee's best chance for a hit against Hudson came in the sixth when Trent Grisham hit a hard grounder up the middle. DeJong made a diving stop and threw out Grisham at first base.

St. Louis Cardinals' Paul DeJong tosses aside his bat as he watches his solo home run during the sixth inning of a baseball game against the Milwaukee Brewers Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Paul DeJong tosses aside his bat as he watches his solo home run during the sixth inning of a baseball game against the Milwaukee Brewers Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee Brewers starting pitcher Zach Davies throws during the first inning of a baseball game against the St. Louis Cardinals, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee Brewers starting pitcher Zach Davies throws during the first inning of a baseball game against the St. Louis Cardinals, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Yadier Molina applauds as he runs up the line after hitting a single during the fifth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Yadier Molina applauds as he runs up the line after hitting a single during the fifth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis increased its division lead to a half-game over the idle Chicago Cubs. Third-place Milwaukee is three games back.

St. Louis Cardinals starting pitcher Dakota Hudson (43) is removed by manager Mike Shildt (8) during the seventh inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals starting pitcher Dakota Hudson (43) is removed by manager Mike Shildt (8) during the seventh inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Hudson (12-6) matched a career high with seven strikeouts and walked four — including his final batter, Eric Thames. Gallegos entered and retired Ben Gamel on a grounder to end the inning.

Orlando Arcia reached on an error by DeJong at shortstop to begin the eighth before Gallegos got two outs. Grandal then hooked a 1-2 slider just inside the right field line and the ball bounced into the stands.

Miller relieved and, after an intentional walk to Christian Yelich, got Mike Moustakas to ground out with the bases loaded. Miller then closed it out in the ninth.

St. Louis Cardinals starting pitcher Dakota Hudson throws during the fourth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals starting pitcher Dakota Hudson throws during the fourth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee's best chance for a hit against Hudson came in the sixth when Trent Grisham hit a hard grounder up the middle. DeJong made a diving stop and threw out Grisham at first base.

Hudson has completed seven innings twice in his two-year major league career. The 24-year-old right-hander threw six sharp innings in a 6-0 victory at Kansas City in his previous start. Before that, he allowed 11 runs (10 earned) over 11 2/3 innings during a three-start span.

More AP MLB: https://apnews.com/MLB and https://twitter.com/AP_Sports

St. Louis Cardinals starting pitcher Dakota Hudson throws during the first inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals starting pitcher Dakota Hudson throws during the first inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Paul DeJong tosses aside his bat as he watches his solo home run during the sixth inning of a baseball game against the Milwaukee Brewers Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Paul DeJong tosses aside his bat as he watches his solo home run during the sixth inning of a baseball game against the Milwaukee Brewers Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee Brewers starting pitcher Zach Davies throws during the first inning of a baseball game against the St. Louis Cardinals, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

Milwaukee Brewers starting pitcher Zach Davies throws during the first inning of a baseball game against the St. Louis Cardinals, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Yadier Molina applauds as he runs up the line after hitting a single during the fifth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)

St. Louis Cardinals' Yadier Molina applauds as he runs up the line after hitting a single during the fifth inning of a baseball game against the Milwaukee Brewers, Monday, Aug. 19, 2019, in St. Louis. (AP PhotoJeff Roberson)