The Oilers, who were playing without forward Taylor Hall -- because he was cut on the forehead by a skate before the game -- grabbed a 2-0 lead on first-period goals by Anton Lander and Ben Eager.
Columbus scored the next four goals to take control of the game.
Ryan Johansen and Derick Brassard scored in the second period. Then, 32 seconds into the final frame, Colton Gillies worked his way down the left side a slid a pass to McKenzie, who poked it home for a 3-2 lead.
Derek Dorsett also scored and Curtis Sanford made 21 saves for the Blue Jackets.
Devan Dubnyk stopped 21 shots for the injury-plagued Oilers, who fell to 1-5-1 in their last seven games.