The two hits surrendered by Rodriguez were the only ones managed by the Cubs, who had defeated the Pirates in their season opener.
Rodriguez walked one and struck out six as he began his first full season with Pittsburgh. He was obtained by the Pirates in the midst of the 2012 campaign from the Houston Astros, with whom he had been since 2005.
Jason Grilli struck out two in a perfect ninth to collect the save.
Starling Marte singled in the final run of the game in the seventh.
The loss went to Edwin Jackson, who gave up two runs over five innings.