Luis Ayala (3-3) got three outs in the ninth, and Jim Johnson finished for his 32nd save in 35 chances as both teams pitched three-hitters.

"Our guys did a lot of things well to make a difference in a real close game," Showalter said. "Well pitched on both sides."

Tampa Bay All-Star David Price, bidding for his 15th win of the season, allowed just two hits in eight innings, struck out five and walked three.

"Miguel matched him, and threw a lot of good pitches," Showalter said.

Gonzalez scattered two hits, struck out four and walked four.

"Gonzalez had a very good game," Price said.

In his only other start against the Rays, Gonzalez allowed seven runs in 2 2/3 innings of a 10-1 loss on July 25.

"I stayed within myself, and stayed confident," Gonzalez said. "Kept the ball down. I knew it was going to be a tough ballgame."

Price got some help in the second from right fielder Matt Joyce, who made a nice over-the-shoulder running catch on Teagarden's two-out drive with two on.

"It seemed like that one big hit would decide the game and it did," Joyce said.

Tampa Bay second baseman Ben Zobrist left after three innings because of upper-back spasms and was replaced by Will Rhymes. The injury was not thought to be serious.

Game notes

Showalter said the team should have a rehab program timeframe in a couple days for DH Jim Thome, on the disabled list due to a herniated disk in his neck. Thome received an epidural injection on Friday. ... Tampa Bay DH Luke Scott (right oblique) has resumed onfield batting practice. ... The Rays held their first bark in the park event, with approximately 450 dogs in attendance. A section in left field was reserved for dog owners and their pets.