TORONTO -- J.A. Happ pitched six shutout innings for his first victory in three starts, Dioner Navarro and Jose Reyes homered, and the Toronto Blue Jays beat the Boston Red Sox 7-3 on Tuesday night.

Reyes and Navarro both connected in the sixth inning as the Blue Jays rebounded from Monday's 14-1 defeat to snap Boston's five-game winning streak. Reyes and Melky Cabrera both had three hits and two RBIs. Cabrera has 14 multi-hit games in his past 30.

David Ortiz hit a solo homer in the eighth, his third homer in two games and the 36th at Rogers Centre, matching Alex Rodriguez for the most by a visiting player.

Happ (8-5) allowed seven hits in six innings to win for the first time since June 26. Brett Cecil got the final out for his fourth save in five chances.

Jake Peavy (1-9) lost for the ninth time in 15 starts and hasn't won since beating Toronto on April 25. He allowed five runs and eight hits in 6 1-3 innings.

MARLINS 6, BRAVES 5

ATLANTA -- Jacob Turner allowed two runs in his bid for a permanent return to Miami's rotation and the Marlins knocked Mike Minor out of the game early in their win over Atlanta.

Donovan Solano had a career-high four hits and reached on a walk as Miami took its second straight win over Atlanta. Christian Yelich had two hits and scored three runs.

Turner (3-6), making his first start since June 11, gave up four hits in five innings. He loaded the bases but allowed only one run in the first inning. The other run he gave up came on Justin Upton's third-inning homer.

Steve Cishek pitched around Chris Johnson's leadoff single in the ninth to earn his 23rd save.

Minor (3-6) was rocked in his shortest start of the season, giving up six runs on 10 hits and two walks in three-plus innings. He allowed six runs for the second straight start.

PIRATES 12, DODGERS 7

PITTSBURGH -- Gregory Polanco got out of a slump with a solo home run and a tiebreaking two-run single, lifting Pittsburgh over the Los Angeles Dodgers.

Neil Walker went 2 for 4 with his 15th homer and three RBIs. Ike Davis had three hits, including his sixth home run.

Vance Worley (3-1) overcame shaky defence behind him to win for the first time in nearly a month.

Adrian Gonzalez smacked his 15th homer and finished with three RBIs for the Dodgers. Paul Maholm (1-5) took the loss after replacing ineffective starter Josh Beckett, who struggled in his return from a hip injury.

Pittsburgh reliever Justin Wilson was ejected in the seventh after hitting Justin Turner with a pitch after Jamey Wright plunked Pirates star Andrew McCutchen.

Beckett allowed four runs in 3 2-3 innings, three coming on solo home runs by Walker, Davis and Polanco.

CUBS 6, PADRES 0

CHICAGO -- Anthony Rizzo hit two home runs, and Kyle Hendricks pitched seven innings in his return from the minor leagues, as the Chicago Cubs beat San Diego to snap a five-game losing streak.

Rizzo staked Hendricks to a 2-0 lead in the third inning. Four innings later, rookie Arismendy Alcantara and Rizzo hit back-to-back homers off Blaine Boyer for a 5-0 lead. Rizzo became the first National League player to reach 25 homers this season, his career high.

Emilio Bonifacio, Wellington Castillo and Justin Ruggiano had two hits apiece for the Cubs.

Recalled from Triple-A Iowa earlier Tuesday, Hendricks (1-0) made short work of an anemic Padres lineup that entered the game with a total of 29 home runs and 103 RBIs. In his second start of the season, he allowed five hits and threw only 83 pitches.

Eric Stults (3-12) took his ninth loss in 10 decisions.

INDIANS 8, TWINS 2

MINNEAPOLIS -- Carlos Santana homered among his season high-tying four hits and Danny Salazar won in his first start in more than two months as Cleveland topped Minnesota.

Cleveland won for the fourth time in six games since the All-Star break. Minnesota has lost four of five.

Salazar (2-4) gave up one run and six hits in five innings.

Indians closer Cody Allen struck out pinch-hitter Chris Parmelee with a runner on third in a two-run game in the eighth inning before Cleveland scored four times in the ninth.

Twins rookie starter Yohan Pino (1-3) allowed four runs and seven hits in 6 1-3 innings.

Minnesota's Brian Dozier had three hits, including his career-high 19th home run in the seventh inning.

BREWERS 4, REDS 3

MILWAUKEE -- Jonathan Lucroy homered leading off the bottom of the ninth inning to give Milwaukee a win over Cincinnati.

It was Lucroy's second homer of the game and 11th of the season. It was his second career walkoff homer, both against the Reds. His first was last season off closer Aroldis Chapman and this one was off Sam LeCure.

Francisco Rodriguez (4-3) pitched the ninth to earn the victory.

Cincinnati, 0-5 since the All-Star break, brought in LeCure (1-2) to pitch the ninth. His outing lasted just three pitches as Lucroy hit a 1-1 offering inside the left field foul pole.

ROYALS 7, WHITE SOX 1

CHICAGO -- Mike Moustakas homered twice, Bruce Chen pitched five effective innings, and Kansas City snapped a four-game losing streak by beating the Chicago White Sox.

Moustakas, who has 12 homers this season, went 3 for 5 with three RBIs.

The Royals entered the game with a major league-worst 55 homers and had managed a total of six runs during the skid.

Chen (2-2) allowed one run and five hits in five innings.

Adam Dunn went 2 for 4 with a solo homer for the White Sox, who had won three of four.

Chicago starter Scott Carroll (4-6) allowed five runs and 11 hits in five-plus innings.

The Royals broke the game open with a four-run sixth inning.

RAYS 7, CARDINALS 2

ST. LOUIS -- Jake Odorizzi allowed two runs over 5 2-3 innings, and Yunel Escobar highlighted a five-run fifth inning with a two-run double to lead Tampa Bay over St. Louis.

It was the Rays' season-high sixth straight win. They have outscored the opposition 36-11 during the run.

Evan Longoria added a solo homer in the ninth for Tampa Bay.

St. Louis ace Adam Wainwright, making his first appearance since starting for the NL in the All-Star game, gave up six runs, four earned, in 4 2-3 innings.

Wainwright (12-5) was trying to become the first 13-game winner in the NL. He walked four and hit a batter in his second-shortest outing of the season.

Matt Carpenter and Matt Holliday hit solo home runs for the Cardinals.

YANKEES 2, RANGERS 1, 14 innings

NEW YORK -- Chase Headley hit a game-winning single in the 14th inning of his Yankees debut to give New York a victory over Texas.

Derek Jeter broke Lou Gehrig's franchise record for doubles, and the Yankees won an unlikely pitching duel after both rookie starters entered with a 5.10 ERA.

J.P. Arencibia snapped a scoreless tie with a leadoff homer in the 13th against New York reliever David Huff, but the Yankees responded with Brett Gardner's leadoff double and Jacoby Ellsbury's tying single off closer Joakim Soria in the bottom half.

Brian Roberts doubled with one out in the 14th off Nick Tepesch (3-6), who threw 99 pitches over 4 1-3 innings during Sunday's start in Toronto. Headley looped a single to left-centre to score Roberts.

Headley was acquired from San Diego in a trade before the game.

Jeff Francis (1-1) worked a scoreless inning to win his Yankees debut in a game that took 4 hours, 59 minutes.

NATIONALS 7, ROCKIES 4

DENVER -- Adam LaRoche hit a tiebreaking home run in the seventh, Anthony Rendon had three hits, and Washington rallied to beat Colorado.

It was the Nationals fourth straight win, and they increased their NL East lead to two games over Atlanta.

Ian Desmond followed Monday's 5-for-5 performance with hits in his first two at-bats for Washington. He was hit by a pitch in the sixth to reach base safely in eight consecutive plate appearances. The streak ended when he struck out in the seventh.

Nolan Arenado and Corey Dickerson homered for the Rockies, who have lost seven straight and remain tied with Texas for the worst record in the majors.

Before the game the Rockies placed shortstop Troy Tulowitzki on the disabled list with a left hip flexor strain and recalled left-hander Yohan Flande, who started the game.

Flande started well before faltering in the sixth. He allowed four runs and five hits and walked two in 5 1-3 innings. He left with a 4-2 lead.

Brooks Brown (0-1) gave up LaRoche's 13th homer.

Craig Stammen (1-4) pitched a scoreless inning to get the win. Rafael Soriano earned his 23rd save.

DIAMONDBACKS 5, TIGERS 4

PHOENIX -- Aaron Hill drove in three runs and made a game-ending diving stop, Miguel Montero hit a two-run single in the eighth inning, and Arizona rallied for a win over Detroit.

Trailing 3-2 in the eighth, Detroit went ahead on Torii Hunter's two-run single up the middle off Brad Ziegler.

Eury De la Rosa (2-0) got the final two outs in the inning, and Arizona rallied when Phil Coke (1-2) walked two in the bottom half after being hit by a line drive. The Diamondbacks loaded the bases on a two-out walk, and Montero singled up the middle off Ian Krol.

David Peralta tied a team record with two triples. Addison Reed worked around a walk in the ninth for his 24th save.

GIANTS 9, PHILLIES 6, 14 innings

PHILADELPHIA -- Brandon Crawford hit a bases-clearing double to break a 14th-inning stalemate, and Tim Lincecum earned his first career save as San Francisco beat Philadelphia.

Crawford snapped a 2-for-22 skid with his two-out hit off the wall in left-centre field and finished with four RBIs. Buster Posey, who doubled and scored in the 14th, sent the game into extras with a solo homer in the ninth off Jonathan Papelbon, who blew his third save.

George Kontos (3-0) earned the win for the second straight night. Lincecum, San Francisco's ninth pitcher, got the final two outs for the save. Jeff Manship (1-2) surrendered four runs and lost.

The Giants (56-44) improved to 8-2 in extra-inning games and 6-0 on the road. The Phillies (43-57) fell to 6-7.

METS 3, MARINERS 1

SEATTLE -- Jacob deGrom allowed five hits and a run in seven impressive innings, Lucas Duda hit a mammoth home run, and the New York Mets topped Seattle to break a three-game losing streak.

DeGrom (4-5) walked one and struck out seven to improve to 4-1 with a 1.59 ERA over his last six starts.

Travis d'Arnaud drove in a run with a triple off Erasmo Ramirez (1-5), who was recalled from Triple-A Tacoma for the start, and scored on Ruben Tejada's soft single in the second inning.

Duda hit his 15th home run, a 446-foot drive off the second deck scoreboard in right field in the eighth.

Jeurys Familia worked an easy eighth, and Jenrry Mejia earned up the save -- his 12th in 14 chances.

Endy Chavez led off the bottom of the first with a single then deGrom retired the next 11 batters.

ORIOLES 4, ANGELS 2

ANAHEIM, Calif. -- Miguel Gonzalez took a two-hit shutout into the eighth inning, Jonathan Schoop homered, and J.J. Hardy hit two RBI doubles to lead Baltimore past the Los Angeles Angels.

Gonzalez (5-5) allowed two runs and three hits in 7 2-3 innings, including a two-run homer in the eighth by All-Star MVP Mike Trout.

Tommy Hunter retired Albert Pujols on a grounder for the final out of the eighth, and Zach Britton pitched a perfect ninth for his 18th save in 21 chances.

Gonzalez was recalled from Triple-A Norfolk, where he was optioned on July 11.

Angels left-hander Hector Santiago matched zeroes with Gonzalez through five innings, allowing just two hits before rookie Mike Morin (2-3) took over in the sixth.

ASTROS 3, ATHLETICS 2, 12 innings

OAKLAND, Calif. -- L.J. Hoes homered with one out in the top of the 12th, and Houston beat Oakland for its first win in four tries at the Coliseum this year.

The Astros also earned their first three-game winning streak against the A's in franchise history.

Hoes connected off Fernando Abad (2-4). The baseball-leading A's (61-38) missed several chances to move a season-high 25 games over .500.

Pinch-hitter John Jaso hit a two-out single in the 11th and Jed Lowrie drew a walk from Jose Veras, who was replaced by Darin Downs (2-1).

Chad Qualls finished for his 11th save in 13 opportunities.