Randal Grichuk singled, Matt Holliday was hit by a pitch and Jason Heyward reached on catcher’s interference before Molina drove a 2-2 pitch into the corner in right for his third hit of the game.
It was the first triple for the All-Star catcher since May 22, 2011, and No. 4 for his career.
Miguel Socolovich (4-1) pitched a scoreless seventh for the win.
Kevin Siegrist struck out Adam LaRoche with runners on the corners for the final out in the eighth, and Trevor Rosenthal finished for his 29th save in 31 chances.