Bayer Leverkusen likewise advanced despite a 1-0 home defeat to Monaco.
Elsewhere, Real Madrid notched a 15th straight win as Cristiano Ronaldo grabbed his 71st Champions League goal in a 1-0 win at FC Basel, whilst Liverpool's defensive woes surfaced again in a 2-2 away draw at Bulgarian side Ludogorets.
Five-time European champion Liverpool, which has four points, is two behind Basel in Group B and hosts the Swiss side next.
Meanwhile, Italian champion Juventus steered itself to within touching distance of qualifying with an assured 2-0 win at Swedish side Malmo.
Midfielder Claudio Marchisio found Fernando Llorente with an astute pass and the Spanish striker finished coolly for his third goal in three games. Juve sealed the win when star midfielder Paul Pogba released Carlos Tevez for the second.
Atletico, last season's runner-up to Real, has 12 points in Group A and Juve has nine. They meet in Turin in two weeks. Olympiakos has six points.
"We withstood Malmo's pressure in the first half but we improved after the break," Marchisio said.
Ronaldo's goal bought him level with former Madrid great Raul Gonalez, but three behind record-holder Lionel Messi of bitter rival Barcelona.
France striker Karim Benzema set up Ronaldo near the penalty spot in the 35th minute for his 26th club goal in all competitions.
Liverpool coach Brendan Rodgers was under pressure after a run of four straight defeats and things did not look like improving when Spanish midfielder Dani Abalo put Ludogorets ahead in the third minute.
Rickie Lambert levelled for Liverpool and midfielder Jordan Henderson turned in Raheem Sterling's pass to make it 2-1 before the break.
But when Ludogorets forced a late corner, Liverpool's defenders remained static, allowing Georgi Terziev to nod past goalkeeper Simon Mignolet.
The pressure will alleviate on Arsenal coach Arsene Wenger as the Gunners reached the knockout stages for the 15th straight season.
"It's not easy to be consistent so I am very proud of that," Wenger said. "We want more."
Arsenal went ahead in the second minute through inexperienced striker Yaya Sanogo's first competitive goal for the North London club. Sanchez then curled a delightful shot into the bottom corner from 20 yards out for his ninth goal in eight games.
"We were overrun by Arsenal in the first ten minutes," Dortmund midfielder Ilkay Gundogan said. "It was a deserved defeat."
Arsenal has 10 points and is two behind Dortmund in Group D.
In the group's other match, Anderlecht qualified for the Europa League by beating Galatasaray 2-0, with defender Chancel Mbemba scoring twice.
In Group C, Monaco and Zenit St. Petersburg are vying to qualify.
Leverkusen, which has nine points, was sure to advance because Zenit beat Benfica 1-0 in the earlier match thanks to Portugal midfielder Danny's winner.
Monaco has eight points and Zenit has seven.
Substitute Lucas Ocampos got Monaco's goal after good work from forward Dimitar Berbatov.
Monaco next hosts Zenit and Leverkusen goes to Benfica.Suggest a correction