Second-placed Bayer Leverkusen did just enough to beat Nuremberg 1-0 on Saturday and apply pressure on Bundesliga leaders Bayern Munich ahead of their showdown against Borussia Dortmund.
Stefan Kiessling scored Leverkusen's winner in the 37th minute for the team's fourth straight victory, pushing his side to 30 points -- seven behind Bayern, who were playing at home later Saturday.
"We have to remain calm and happy that we have a little streak," said Kiessling, who has scored nine goals this season.
"It's a nice moment but we have a lot of important games ahead of us and we don't want to think about Bayern. We have to worry about ourselves, and that's it."
Schalke continued their struggles with a 1-1 at home against Borussia Moenchengladbach.
Timo Hildebrand replaced Lars Unnerstall as Schalke's keeper and looked less than impressive on Igor de Camargo's goal for Gladbach in the 62nd minute. Julian Draxler equalised for Schalke in the 85th minute.
Schalke, however, have not won in four games and improved to just 25 points while Gladbach have 21 points.
"We were relieved to have at least picked up the point. If we had lost things would have been bad here," said Draxler.
Gladbach coach Lucien Lavre said: "The point was deserved. Schalke played well. But to get a point at Schalke is not too bad."
Adam Szalai's goal in the 89th minute gave 10-man Mainz a 2-1 victory at home over Hannover in a battle of teams fighting for European spots.
Nicolai Mueller scored on a loose ball after Shawn Parker's shot hit the left post after 10 minutes for Mainz but was equalised by Christian Schulz for Hannover.
Mainz lost their keeper four minutes after the break as Christian Wetklo was red-carded but Szalai provided the heroics.
Stuttgart picked up their third victory in the last four games by fending off Greuther Fuerth on the road 1-0 on Shinji Okazaki's goal in the 45th minute.
Stuttgart played the final 37 minutes a man down after Serdar Tasci was shown a red card.
Fuerth dropped to last place with eight points.
Eintracht Frankfurt missed a chance to keep track with the top challengers by losing 4-0 at Fortuna Duesseldorf on Friday.
Promoted side Augsburg picked up a point in a 1-1 draw at home over Freiburg with Tobias Werner's goal for Augsburg being equalised by Jonathan Schmid.
On Sunday, Werder Bremen play at Hoffenheim and VfL Wolfsburg welcome Hamburg.