It’s been a tough, tragic year for fans of classic rock. David Bowie, the Eagles’ Glenn Frey and our own Prince left us unexpectedly.

Perhaps the perfect antidote for our grief is Paul McCartney, who opened a two-night stand on Wednesday at Target Center in Minneapolis. We needed someone to take a sad song and make it better, someone to sing silly love songs that we could sing along with, someone to assure us that it’s OK to long for yesterday when things changed suddenly.

Sir Paul could never replace John Lennon in his life. And we’ll never see Bowie, the Eagles or Prince onstage again. But witnessing McCartney, who turns 74 next month, delivering three-dozen songs in nearly three hours reminded us not only that we should press on but the music of our late heroes will live on and on.

All but five of the songs in McCartney’s set list belonged to yesterday, more specifically the last century, from 1958 (the Quarrymen) to 1982 to be exact. But they sounded more fresh than nostalgic because McCartney was in the moment, fully engaged, quite spirited and relishing the joy of making music.

That McCartney didn’t seem as buoyant Wednesday as he had at Target Field in 2014 didn’t really matter. That McCartney sounded like he had a cold — some of his high notes were so raw it seemed as if he’d swallowed Joe Cocker — didn’t matter much. It didn’t diminish his enthusiasm or the enjoyment of the 17,000 fans.

In his seventh appearance in the Twin Cities, Sir Paul certainly had a sense of place. After dedicating an instrumental version of “Foxy Lady” to “the late, great Jimi Hendrix,” McCartney announced that he was dedicating Wednesday’s concert to “the late, great Prince.”

He mentioned that he’d seen Prince in concert several times in London and had experienced Prince onstage in a small club on the most recent New Year’s Eve. “Minneapolis, Prince,” Sir Paul declared and paused. “Prince, Minneapolis. It goes together.”

Like last time around, McCartney dedicated tunes to Lennon (“Here Today”) and George Harrison (“Something” on ukulele). This time, he offered a new tribute to Beatles producer George Martin, who died in March — “Love Me Do,” the first song the Beatles recorded with him. McCartney even gave a back story on how the producer asked McCartney to take a Lennon vocal part so Lennon could play harmonica instead.

The cute Beatle still looked cute and Beatlesque, sporting pointie-toed Beatle boots, a Nehru jacket, skinny jeans and a moptop with a mullet. He dusted off some Beatles songs, including the opener “A Hard Day’s Night,” that had never been in his post-Beatles repertoire.

There were a handful of selections from Wings (the best ones were the ballad-turned-rousing rocker “Band on the Run” and the piano pounding rocker “Nineteen Hundred and Eighty-Five), several tunes from McCartney’s solo recordings and even his 2015 collaboration with Kanye West and Rihanna, “FourFiveSeconds,” which not only featured uncharacteristically gruff vocals but was built around rhythm, not melody, which is un-Paul like. It was an intriguing change of pace, texture and dynamics.

The five-song acoustic set was a treat, especially the undyingly sweet “And I Love Her” and the Quarrymen’s country-leaning, harmony-heavy “In Spite of All the Danger.”

But McCartney let the big Beatles classics carry the weight: the totally rocking “Back in the U.S.S.R.,” the hold-up-your-cellphone ballad “Let It Be,” the majestic “Hey Jude,” a very tender, slightly trembly “Yesterday,” among others.

However, he chose a happy Wings song, “Hi Hi Hi,” to make the night a little better, by adding a wildly raunchy taste of Prince’s “Let’s Go Crazy” — complete with a purple glyph on the video screen.

Yes, we all needed to celebrate by rocking with abandon.

“Here’s to the man,” Sir Paul said afterward. “Loved that guy. Thank you, Prince, for writing so many beautiful songs, so much music. And he’s your guy.”