Wales extended Scotland's losing run in the Six Nations rugby championship to nine matches with a 27-23 victory, thanks to second-half tries from Jamie Roberts and George North.
The win lifts the Welsh up to second on the championship standings behind unbeaten France.
Lacklustre Wales, second-best for an hour under a closed roof at the Principality Stadium in Cardiff, sparked into life when Roberts barged over and then North touched down after a strong diagonal run.
Wales, who rallied from 13-0 down to draw 16-16 with Ireland in their tournament opener last weekend, scored the game's opening try through scrumhalf Gareth Davies but Scotland replied soon after through winger Tommy Seymour.
Three Greig Laidlaw penalties put Scotland 16-13 up midway through the second half before Wales countered. Duncan Taylor's late converted try proved only a consolation.
Scotland, beaten 15-9 at home by England a week ago, have not defeated Wales since 2007 and have not won in Cardiff for 14 years now.
France burst into life when Maxime Medard's second-half try inspired them to their first victory over Ireland in five years, a 10-9 win at the Stade de France.
Coach Guy Noves, who took over from Philippe Saint-Andre after last year's World Cup, had promised spectacular rugby and Les Bleus did their best to deliver, scoring the only try with 10 minutes remaining.
First five eighths Jules Plisson converted, adding to his first-half penalty, while defending champions Ireland's points came from the penalty kicking of Jonny Sexton, who was replaced with a suspected neck problem near the end.
France, who lost 24-9 to the Irish in the World Cup pool phase, now lead the standings with two wins after beating Italy 23-21 in their opening game. Ireland must wait for their first victory after last weekend's 16-16 draw against Wales.