The Yankees succeeded on Opening Day in a few respects.

They actually scored — two runs, no less — against perhaps their biggest tormentor from 2015, Astros lefthander Dallas Keuchel, and received encouraging performances from Masahiro Tanaka and Starlin Castro.

The second of two defensive miscues, however, led to the go-ahead run and caused Joe Girardi to protest the game, but the call turned out to be the correct ruling. The mistakes contributed to a 5-3 loss to the Astros in front of a thoroughly chilled crowd of 47,820 Tuesday at the Stadium.

See alsoBoxscore: Yankees vs. AstrosInteractiveMeet the 2016 Yankees

It was the fifth straight season-opening loss for the Yankees. Castro’s two-run double in the second gave them a 2-0 lead, but Tanaka couldn’t hold it. “They played better baseball than us,” said designated hitter Alex Rodriguez, who went 0-for-3 with a walk.

Leftfielder Aaron Hicks, in the lineup because of his ability to hit lefties, misplayed a fourth-inning liner by Jose Altuve, contributing to the Astros’ first run. But the headline gaffe belonged to Dellin Betances, who came on to start the eighth, the score tied at 2, and three runs soon followed.

He walked Altuve, who stole second. George Springer flied to left, bringing up Carlos Correa, whose homer in the sixth off a flat Tanaka splitter tied the score at 2. Correa hit a dribbler to the right of the mound, which Betances fielded cleanly. But the 6-8 righthander threw high to first, with the error allowing Altuve to score.

advertisement | advertise on newsday

An incensed Girardi argued vehemently with plate umpire and crew chief Dana DeMuth that Correa should have been called out for running on the grass and interfering with the throw, but the call stood and Girardi protested the game.

But the batter/runner is allowed on the grass, and it can be ruled interference only if he “impedes or hinders the first baseman or actually a fielder from making a play at first,” DeMuth told a pool reporter. “That ball was so high that in my judgment that was just an error, a bad throw,” the umpire said.

$relatedItem.embed_code.value

Girardi argued that Betances had no angle to make a good throw, his only option being to hit Correa in the back.

Yankees videos

DeMuth’s response?

“Do it,” the umpire told Girardi, and also the pool reporter. “Throw it into the runner’s back. Because then what’s happening? He is impeding [and would be out].”

That didn’t sit well with Girardi, who, when pressed, said he was most upset with the rule’s wording. “I think it’s interference, but the rule reads the way it does and we’re going to have to live with it,” he said, adding he wants more “clarity” to the rule.

“I don’t want to go in and just tell my pitchers, ‘Just throw and hit him in the back,’ said Girardi, who said he was surprised he was not ejected after such an animated argument. “I don’t want to do that because you can get someone hurt . . . That doesn’t make any sense to me because now you’re asking one of our players to assault theirs.”

Betances said he didn’t think he had a clear throwing lane and added he didn’t know the runner would be out if he hit him. He was more irritated with the leadoff walk.

advertisement | advertise on newsday

“It all starts with the walk to Altuve,” he said. “I think that’s what hurt me. You can’t walk the leadoff hitter.”

First baseman Mark Teixeira, starting his 14th season, shrugged and said as soon as the throw cleared his head, he knew there would be no interference call.

“They weren’t going to call it,” Teixeira said. “I’ve played long enough . . . If the ball gets thrown into the outfield, they’re never going to call it, and that’s why I really didn’t say much. I let Joe have his piece but I knew exactly what they were going to say.”

Betances had a chance to keep the deficit at 3-2. But he walked Colby Rasmus and, after striking out Carlos Gomez, allowed a two-run single to Luis Valbuena that made it 5-2.

Didi Gregorius’ homer off Ken Giles in the eighth drew the Yankees within 5-3. They went quietly in a 1-2-3 ninth against Luke Gregerson, named Houston’s closer on Sunday.

advertisement | advertise on newsday

Keuchel, who did not allow a run in 22 innings last year against the Yankees, including postseason, allowed two runs and three hits in seven innings. He walked two and struck out 28 against the Yankees last season but did not have that kind of command in the frigid conditions, walking four but still striking out five. He was ripe to be had but settled down, pitching a perfect final three innings.

“You just kind of throw it to the side and say other than that one big inning we played some pretty good baseball today against a good pitcher and a good team,” Teixeira said. “Just one bad inning.”