Johnson scored on a passed ball to give the Cubs and right-hander Rich Harden a 4-0 lead in the first, a great way to begin a road trip. He also walked and scored another run in the sixth.
"I was happy with my at-bats," Johnson said. "Things are getting better."
Johnson, who usually starts against left-handers, thought he might have a shot at an inside-the-park homer with the deep center field at Minute Maid with his hit off lefty Mike Hampton.
"I thought I had a chance," he said. "I ran as hard as I could to [third-base coach Mike Quade]. He was holding me up pretty early. As long as we got that fourth run in."
"He's the type of player who can swing the bat and drive in some runs for you," manager Lou Piniella said.
Piniella was worried that Houston center fielder Michael Bourn might catch up with Johnson's hit.
"Bourn can go get a ball as good as any center fielder in baseball," he said.
Piniella didn't feel completely secure despite the fast start.
"You put four runs on the board, you've got to add a few," he said.
Aramis Ramirez helped take care of that when he hit his fourth homer with nobody on in the seventh to make it 6-1.
"It's nice to get those [four runs early], but it's not going to change the way I approach the hitters," Harden said. "I'm still going to be aggressive."
Harden (3-1) worked seven solid innings, then gave up two runs in the eighth on a Lance Berkman home run before Piniella pulled him.
"I was pretty efficient," Harden said. "I was feeling better with my command. I had been struggling with it. I didn't like the way I finished."
Bourn opened the Astros' eighth with a single, and Berkman sliced a ball just 347 feet over the fence in left. After Carlos Lee followed with an opposite-field single, Harden was done.
"We tried to get one more inning out of him," Piniella said. "The pitch count was low. He's got his sixth day next time [he pitches]. He maintained his velocity the whole game. I kept asking Geovany [Soto] how his stuff was."
Soto liked what he saw from his pitcher the whole night.
"It's really comfortable catching him when he's got his great stuff," Soto said of Harden. "When his fastball is staying down, he's going to have a good game. His changeup is so devastating, it's going to keep them off his fastball.
"After the fifth, he threw two quick innings. It was impressive to see him have better and better innings."
"He comes at you with fastball, split and he's got a good arm," Houston manager Cecil Cooper said of Harden. "We had a chance to get back in it one inning and get a hit, he walked a couple guys. We couldn't get a hit. Then he sailed through three or four innings through seven. He was efficient with his pitches. He's tough."
What Harden couldn't finish, Carlos Marmol and Kevin Gregg did. Marmol retired three in a row after replacing Harden in the eighth, and Gregg pitched a 1-2-3 ninth for his fifth save.