Craig Gentry's single in the eighth inning produced the only run in an unlikely pitching duel between Matt Harrison and Wade Miley, as the Rangers edged the Diamondbacks, 1-0.
Harrison exited a scoreless game having allowed just six hits and two walks in 7 1/3 innings. After Mike Adams (1-2) stranded a runner on second, the Rangers finally got to Miley in the bottom half to win their third straight game.
"I think it's just the agressiveness and my tempo has been a lot better," said Harrison. "I feel good with my tempo right now so it's making me concentrate more on my pitches and just trying to throw strikes."
Miley (7-3) was pulled after yielding the only run and was charged with three hits and one walk while striking out eight in 7 2/3 innings.
"That's the way the game is, they executed when it counted," said Arizona manager Kirk Gibson. "But we have another game tomorrow so we'll regroup and see how it goes."
Arizona, which registered only four hits in a 9-1 loss in the series opener on Tuesday, had only one extra-base hit in Willie Bloomquist's one-out double in the eighth.
Bloomquist was Harrison's final hitter, and Adams came in and retired Aaron Hill and Justin Upton to keep it a 0-0 game.
Miley, who needed just 79 pitches to get through seven innings, was off the plate on a payoff pitch to leadoff hitter Mike Napoli in the eighth.
Yorvit Torrealba moved Napoli into scoring position with a bunt, and after pinch-hitter Nelson Cruz struck out on three pitches, Gentry hit a sharp ground ball that ate up Ryan Roberts at third base.
The ball hit off Roberts' glove and trickled into the outfield, allowing Napoli to score the game's only run without a play at the plate.
In the ninth, Joe Nathan retired the heart of Arizona's order -- Paul Goldschmidt, Jason Kubel and Chris Young -- in succession to record his 13th save.
There was a 29-minute rain delay after the fourth inning...Miley had gone 93 straight hitters without surrendering a free pass prior to walking Napoli in the eighth...Harrison has thrown 16 1/3 consecutive scoreless innings...Texas goes for the three-game series sweep on Thursday with Scott Feldman squaring off against Daniel Hudson.