PHOENIX -- Matt Holliday has nine at-bats in his career against Trevor Cahill -- and three home runs.
"That was a pretty good pitch, too," Cardinals manager Mike Matheny said. "He went down and golfed that ball out of the air. Typically you're not going to get hurt when you're down in the zone like that, but Matt's got some exceptional ability. That was obviously the offensive turning point for us."
Pete Kozma and Jon Jay also homered for St. Louis as the Cardinals evened the season-opening series at a game apiece.
|More on Cardinals-Diamondbacks|
|More MLB coverage|
Jaime Garcia (1-0) gave up two hits, one of them a homer by Miguel Montero, in 5 2/3 innings for the Cardinals.
Holliday's home run broke a 1-all tie in the sixth.
"I threw it where I wanted to throw it," Cahill said. "It is just that he is really strong and if you get him off balance he is strong enough to hit it out."
The St. Louis slugger has no idea why he's been so successful against Cahill.
"Sometimes that just happens," Holliday said. "He's a good pitcher. I don't know why."
Kozma added a leadoff homer and Jay a two-run shot off the right-field foul pole, both off reliever Heath Bell in the seventh.
Kozma's homer came on Bell's first pitch with the Diamondbacks. Matt Carpenter doubled twice for St. Louis.
Cahill (0-1) allowed three runs and five hits in 5 2/3 innings. The slimmed-down Arizona right-hander struck out seven, walked two and hit a batter with a pitch.
After getting 15 hits in their 6-2 season-opening victory on Monday night, the Diamondbacks managed just three on Tuesday. Montero had two of them.
Garcia struck out four and walked four, including three in a row with two outs in the sixth, bringing an end to his outing.
Three St. Louis relievers allowed one hit in 3 1/3 innings.
Garcia and Cahill were locked in a 1-all game through five innings before Jay was hit by a pitch to start the sixth. Carpenter flied out to bring up Holliday, who hit Cahill's 2-2 pitch a couple of rows into the seats in left field and St. Louis led 3-1.
Arizona got its first home run of the season when Montero hit Garcia's first pitch in the second to the opposite-field in left to put the Diamondbacks up 1-0.
St. Louis tied it in the fourth. Carpenter led off with a double into the right-field corner. He went to third on Holliday's groundout to second and scored when Allen Craig bounced out to shortstop.
The Diamondbacks got the potential go-ahead run to third in the fifth. Carpenter, the third baseman, threw wild to first, allowing Cliff Pennington to reach second. Pennington advanced to third when Cahill bounced out to the pitcher, but Gerardo Parra grounded out to end the threat.
After getting the first two outs in the sixth, Garcia walked three in a row to load the bases.
"There's no question I wanted to get him through that, especially with his spot coming up [to bat] there," Matheny said. "But with him a lot of times it's pretty obvious when he hits that wall. He kept fighting but just couldn't get through it at that point. He knew he'd done a pretty nice job and we had some fresh arms down in the `pen to get him out."
Right-hander Edward Mujica came on and caught pinch-hitter Jason Kubel looking at a 3-2 pitch to end the inning.
"Kubel had a decent at-bat but he took the third strike," Arizona manager Kirk Gibson said. "That was kind of a golden opportunity for us to get back in the game but we were unable to do that."
Bell, the former closer acquired in a trade with Miami in the offseason, allowed three runs on four hits and a walk in one-third of an inning.
After Kozma's first-pitch homer, Shane Robinson walked and Jay's soaring drive bounced high off the right-field foul pole for a two-run homer to make it 6-1. Carpenter doubled and Bell struck out Holliday, then Craig singled and the reliever's rough Arizona debut was over.
A female fan on the porch in left-center field was hit in the face by Kozma's home run. Her male companion jumped out of the way. They stayed in their seats afterward and she didn't appear to be hurt. ... RHP Brandon McCarthy gets the start for Arizona in the series finale, his first appearance in a big league game since sustaining a horrific head injury from a line drive while pitching for Oakland last September. RHP Lance Lynn goes for the Cardinals. ... St. Louis plays three games in San Francisco before its home opener next Monday against Cincinnati. ... Arizona OF Alfredo Marte went 0 for 3 with two strikeouts and a walk in his major league debut. ... Carpenter has three doubles in two games.