Oswalt has been bothered by back and hip pain. The 32-year-old right-hander pitched five-plus innings in a no-decision at Cincinnati on Tuesday night and reported a different arm soreness than usual after the start.
Oswalt met with manager Cecil Cooper, general manager Ed Wade and team medical personnel Wednesday before the club announced the decision.
"It's just not getting better," said Oswalt, who was examined by a back specialist in Houston on Saturday. "It lingers more and more. If it was the playoffs, I would block it, but I don't want it to linger into next year."
The Astros were 14½ games behind NL Central-leading St. Louis with 17 games left heading into Wednesday's action.
Oswalt went 8-6 with a 4.12 ERA in 30 starts this season. His eight wins were a career low.
Wade said the three-time All-Star isn't expected to need surgery.
"It's not a 'surgical' back," said Wade, describing a rehab effort that includes swimming. "He's got changes in his spine that are creating nerve issues. Hopefully, we'll be able to navigate through this."