Both teams were aiming to build on successes last week, with the Dragons beating Ulster in Belfast and Edinburgh giving the Scarlets a 32-12 thumping at Murrayfield.
Victories were needed by both to claw themselves from the wrong half of the table as those wins last weekend were their first of the season.
The Dragons held a five-point advantage by the half-hour mark.
Scotland international Chris Paterson put Edinburgh ahead with a big 40-metre penalty early on but Dragons outside-half Shaun Connor replied with two penalties for a 6-3 lead to the home side.
Then the Dragons grabbed the first try of the match when the ball was worked across the back division inside the Edinburgh 22 for wing Richard Fussell to evade the desperate last-gasp tackle from the defence to squeeze in at the corner.
Connor's conversion attempt failed to find the target and, within two minutes, the Dragons saw their lead reduced when an error allowed Paterson to hit the target from 25 metres.
Edinburgh nearly had a try when wing Andrew Turnbull crossed the line but it was ruled out for a forward pass just five metres from the line. And Paterson's attempt to draw Edinburgh closer with a 30-metre drop goal just before half-time failed when his kick drifted wide.
Edinburgh probed for eight minutes to find the Dragons' weak spot as they piled on the early second-half pressure but the home defence would not buckle.
Wing Mark Robertson aimed a long drop-goal towards the posts but that failed to get near. However, a third Paterson penalty brought Edinburgh back into it at 11-9 behind.
The match lost a lot of its sparkle after the hour as Dragons coach Paul Turner and opposite number Andy Robinson rang the changes.
Edinburgh should have put points on the board during the period but turnovers from a stout home defence and dropped ball caused them frustration, as did another missed drop-goal from outside-half Phil Godman.
A run down the left wing from Fussell gave the Dragons a rare chance to score.
They attacked further under the posts and, when the ball was swung to the left corner, Australian Rory Sidey threw it inside as he was pushed over the line - only for Fussell to spill the chance.
As injury-time arrived, the Scotsmen put on the pressure to get the result as another drop-goal went sailing wide and poor hands let them down in attack.
The Dragons managed to win possession and, reaching the opposition 22, decided to play the phases through the pack to run down the clock, before the final whistle confirmed a first home win of the season.