The top seed was hampered by an ankle knock at the start of the second set but fought back from 5-3 behind to win in straight sets.
Murray, 27, only hit 14 winners to his opponent's 25, but made 17 unforced errors compared to Pospisil's 26.
The Scot now faces eighth seed Gilles Simon of France in the quarter-finals.
The first set went with serve until the eighth game when Murray took advantage of some tame Pospisil serves to break and then he held comfortably to take the first set in 36 minutes.
The world number four then landed awkwardly on his left ankle in the first game of the second set but, despite hobbling and in pain, he took control after breaking Pospisil with a great return down the line to move 3-2 up.
However, the Scot, who beat Frenchman Nicolas Mahut 6-3 6-2 in the first round, then lost his way and was broken back immediately thanks to the Canadian's best return of the match.
Pospisil went in front on his own serve before the world number 59 claimed the vital break to move 5-3 up as Murray picked up a code violation for smashing his racquet.
The Scot showed his mettle to immediately break back and then levelled at 5-5.
Murray then won a hard-fought 11th game of the set after several deuces before serving out to win the match.
He now faces Gilles Simon, who progressed thanks to a routine 6-4 6-3 win over Jeremy Chardy.
Britain's Andy Murray beat Canada's Vasek Pospisil 6-3 7-5 in the second round of the ABN Amro World Tennis Tournament in Rotterdam.