Yasiel Puig hit a towering drive for a two-run homer and Zack Greinke won his season debut, leading the Los Angeles Dodgers to a 3-2 victory against the San Diego Padres on Tuesday.