The tone for a high-scoring match, in which Charlie Hodgson kicked 26 points, was set as early as the second minute.
A poor lineout from the Premiership leaders handed possession to Bristol, and with the Sharks coming offside at the ensuing ruck Jason Strange gave his side the lead with a penalty.
Sale hit straight back, Hodgson slotting a drop goal to level matters.
With Sale pinned in their own 22 through a neat touch kick from Strange, an aimless kick out of defence by Sililo Martens was picked up by Shaun Perry who cut through a disorganised defence for a try, despite Jason Robinson’s last-ditch efforts.
A typical break by Robinson looked enterprising, but his floated pass was intercepted by Brian Lima. Sale however kept up the pressure and a charge upfield by Sebastien Chabal forced the penalty converted by Hodgson.
The power of Sale’s forward play was causing the visitors problems, although the home side were finding it difficult to circumvent the Bristol midfield defence as they tried to move the ball wide.
A second penalty from Hodgson gave Sharks the lead, reversed by a penalty from Strange as Sale infringed at the ruck.
A late tackle by Matt Salter on Hodgson allowed the outside half to notch up his third, but with the game deteriorating into a series of minor skirmishes with little continuity, Strange put Bristol ahead with his third penalty.
With referee Roy Maybank dishing out the penalties, Hodgson slotted his fourth.
A further penalty from Hodgson opened the second half. A breakout by Bristol captain Salter and super pick-up by David Lemi opened Sale up, but great retrieval work by Robinson put Sale within the Bristol 22.
With the referee running out of patience, Salter was despatched to the sin bin.
Even then Sale were unable to force the breakthrough as they drove at the Bristol line, and a penalty for foul play allowed the visitors to clear.
Strange was the next to go to the sin bin and with Bristol down to 13 men Sale finally made their numbers count. Martens plunged over from the base of a ruck, Hodgson adding the extras.
Bristol were not done as Tommy Hayes caught Sale napping, following his own kick through for a try out wide.
A penalty from Hodgson calmed things down, but Bristol then went all out for a score, Lemi unlucky to be pulled back for a knock on.
He did soon cross in the corner after good work from Lee Robinson. Hayes converted and Bristol were back in contention, but it was too late as the home side held on.