Haren allowed two runs in five innings to help the Angels beat the Brewers 6-3 on Friday.
Greinke held the Angels to two hits in 5 1/3 innings and had nine strikeouts. He also went 1 for 2 at the plate.
"Some pitchers never played in high school," Greinke said. I always felt I was a player that pitched."
Greinke has allowed three hits and one walk in his past 8 1/3 innings in two starts while striking out 14.
Greinke threw approximately 80 pitches including 20 cut fastballs, a pitch he only started throwing this spring.
Ryan Braun singled in the first for his second hit of the spring. Braun finished 1 for 2 with a walk and a run scored and is 2 for 19 overall.
About the only time Greinke felt uncomfortable, he said, was when the Angels loaded the bases in the fifth on a hit batter and a pair of errors, one by Greinke, the first two of four errors on the day for Milwaukee.
"We need to get him used to those games where we don't play that well behind him," Brewers manager Ron Roenicke said. "When you don't play well behind him he doesn't lose focus. He stays locked in. He's looking great. This was impressive, this early in spring to do what he's doing."
Greinke asked Roenicke to let him go back in for the sixth to try and regain his rhythm after the fifth.
"I got out of sync a little bit after my error," Greinke said. "I wanted to go back out, regroup and make sure I felt good."
Haren walked one and struck out three and flashed a little emotion when not getting a call during the Brewers' two-run fourth inning.
"I usually go into spring training with something in mind to accomplish," Haren said. "But once I get out there in the heat of the game, I want to get guys out. I was mad at myself. Hitting a batter and walking a guy, that's not me."
The Angels scored four unearned runs on two hits, an error and a walk in the seventh off Brewers closer John Axford. Mark Trumbo hit his third homer for the Angels, a solo shot in the eighth, off Francisco Rodriguez.
"He made some good pitches and then he left a couple up," Roenicke said. "It was a messy game."
Haren had given up only one earned run in his previous 10 spring innings. . The Brewers' affinity for the suicide squeeze backfired in the seventh when Logan Schafer popped up the bunt and Carlos Gomez was doubled easily off third. Milwaukee has run the suicide squeeze nearly a half-dozen times in the past week. ... Angels C Kendrys Morales, who played Thursday for the first time since 2010, took the day off and did not make the trip to Maryvale. ... 1B Albert Pujols also stayed back.