Johnson went 3-for-5 and scored twice, Castro collected a pair of hits and Carlos Lee added two hits and a pair of RBI as Houston pounded out 17 hits to take the first contest of a three-game set with the Cubs at Minute Maid Park.
Angel Sanchez chipped in with three hits, Jeff Keppinger scored three times and Hunter Pence added a two-run single for the victors.
Wandy Rodriguez (7-11) notched the win despite allowing five runs on eight hits over six innings.
Chicago starter Carlos Silva (9-4) took the loss after surviving only one inning, in which he surrendered five runs on seven hits.
Copyright 2010 United Press International, Inc. (UPI).