The Canadiens have acquired defenseman Noel Hoefenmayer from the Edmonton Oilers in exchange for forward Jacob Perreault.