Rapid Reaction: Rangers 5, Astros 4

HOUSTON -- The Texas Rangers rallied again in the top of the eighth, scoring two runs and then holding on for a 5-4 victory over the struggling Houston Astros on Saturday night at Minute Maid Park.

The Rangers moved into first place all alone for the first time since July 1, a game ahead of Oakland. The Rangers improved to 67-50, the most they've been over .500 all season.

Rangers capitalize: The Rangers took advantage of two crucial mistakes by the Astros in the top of the eighth. After A.J. Pierzynski's one-out double, Alex Rios hit a sinking line drive to center field that was falling in for a hit. Houston's Brandon Barnes made matters worse by diving for the ball and letting it roll past him. Pinch runner Engel Beltre scored easily to tie the game as Rios made it all the way to third. Then, with the infield in, Mitch Moreland hit a sharp ground ball to second base. Rios broke for home, and it appeared he would be out, but Astros catcher Jason Castro dropped the ball as Rios slid into him. Rios scored for a 5-4 lead.

Soria dodges trouble: Joakim Soria was handed setup duties in the bottom of the eighth. He got through it. After two quick outs, Soria allowed an infield single to Matt Dominguez and then walked Brett Wallace. Soria bounced back against Barnes, getting to a 2-2 count and throwing a slider for a swinging strike to hang onto the lead.

Andrus goes deep: Shortstop Elvis Andrus picked the perfect time to hit his first home run since Sept. 4, 2012. Andrus cranked a two-run home run with two outs in the top of the seventh off Astros reliever Kevin Chapman to tie the game at three. It was Andrus' first home run in 558 at-bats. He had gone 452 at-bats to start the season without a long ball, the most in the major leagues.

Not tied for long: The Rangers had a messy bottom of the seventh as the Astros regained the lead at 4-3. With a runner at second with two outs, reliever Jason Frasor walked L.J. Hoes and Barnes stole third. Then with a 1-2 count to Jose Altuve, Frasor threw a wild pitch that deflected off Pierzynski's shin guard and allowed Barnes to score.

Missed chances: The Rangers have excelled of late with a runner at third and less then two outs, but not on Saturday night. First, Andrus struck out with runners at second and third and one out in the top of the third. Ian Kinsler popped out to first to end the inning to keep the game scoreless. The Rangers trailed 1-0 in the top of the fourth and loaded the bases with one out. But Jurickson Profar, who drew a bases-loaded walk for the lead Friday night, struck out, and David Murphy flew out to left to end the inning.

Holland fights through: Derek Holland didn't have his best stuff of the season, but he still managed to keep the Rangers in the game, departing with Texas trailing 3-1. He allowed three runs in six innings. Holland gave up six hits, including a home run to Chris Carter. Holland loaded the bases with no outs in the bottom of the sixth and gave up only one run before inducing a double-play ball to get out of the inning.

Up next: The Rangers and Astros play the first of two day games to finish off the series, with left-hander Martin Perez (4-3, 3.81 ERA) facing left-hander Dallas Keuchel (5-6, 4.96) at 1:10 p.m. Sunday afternoon on Fox Sports Southwest and ESPN Dallas 103.3 FM. In Monday's series finale, Rangers right-hander Yu Darvish (11-5, 2.72) takes on left-hander Brett Oberholtzer (2-0, 2.53) at 1:10 p.m.