Rosberg var 0,275 sekunder snabbare än Ferrari's Kimi Raikkonen, med Red Bulls av Max Verstappen och Daniel Ricciardo nära bakom.
Hamilton misslyckades med att slutföra ett rent varv på sin kvalificeringssimulering på ultramjuka däck och hamnade på sjunde plats.
Han avslutade sin session tidigt på grund av ett återkommande hydrauliskt problem.
Hamilton kunde inte göra någon av de race-simulering körs lagen gör i den andra delen av sessionen på tunga bränsle laster.
Han var också missnöjd med balansen i bilen på det ultramjuka däcket som användes för de snabbaste körningarna, även om Mercedes anser att de borde kunna lösa det problemet med konfigurationsförändringar.
Hamilton, som ligger två poäng före Rosberg i världsmästerskapet, är ändå på väg in i helgen i en nackdel.
Men han kan trösta sig med vetskapen att han hade varit snabbast av alla efter de första körningarna i sessionen var klar, innan han började stöta på svårigheter.
"Vi hade en liten hydraulisk fråga i slutet av FP2 men det ser inte ut som något allvarligt," sade Hamilton. "Killarna jobbar på det och det borde gå bra i morgon, vilket är det viktigaste."
Mediauppspelning stöds inte på den här enheten
Dagens bevis var att Mercedes inte kämpar på samma sätt som de gjorde förra året i Singapore, när deras tidigare dominerande bil var mer än en sekund utanför takten av Ferrari och Red Bull.
Lyssna igen: En titt framåt på Singapore Grand Prix
Men med tanke på det långa 3,15-milsvarvet är marginalen mellan världsmästarna och deras närmaste utmanare mycket mindre än normalt.
Verstappen låg 0,380seks utanför Rosbergs tempo, med Ricciardo bara 0,025seks ytterligare drift efter att ha återhämtat sig från en snurr under vilken han borstade väggen utan större skador.
Verstappen körde en Renault motor uppgradering som inte kommer att vara tillgängliga för Ricciardo förrän på lördag och vilket team chef Christian Horner sade skulle vara värt i regionen 0,1seks ett varv.
Och i rasfart verkade Red Bull ha en fördel, men bilden var inte helt klar.
"Vi visste att de inte skulle ha en massiv lucka här i helgen," sade Ricciardo. "Vi vet att om vi får det rätt kan vi vara mycket nära i kvalificering."
Ferrari's Sebastian Vettel var femte snabbaste efter en oöverträffad simuleringskörning, 0.7sek långsammare än Raikkonen och en andra långsammare än Rosberg.
Vettels problem satte honom tillbaka i mixen med midfieldlöpare, ledd av Force Indias Nico Hulkenberg i sjätte.
Toro Rossos Carlos Sainz var åttonde, före Fernando Alonsos McLaren, en position som de tidigare mästarna troligen kommer att bli lite besvikna på.
De förväntade sig att slåss för sjunde bakom de stora tre, men Alonso var 0,6seks långsammare än Hulkenberg.
Spanjorens lagkamrat Jenson Button kämpade under tiden - han var tre platser och en jättestor 0,795seks bakom Alonso, som visserligen är på sin absoluta bästa runt utmanande Singapore spår.
Alonso var tvungen att parkera sin bil på rätt spår i slutet av sessionen efter att ha stött på en växellåda problem.
Engelsmannen Jolyon Palmer var 17:e snabbast, bara 0,005seks bakom Renault lagkamrat Kevin Magnussen som båda männen kämpar för sin framtid i F1.
Singapore Grand Prix träningsresultat
Singapore Grand Prix täckning detaljer
Nico Rosberg satte takten strax före Ferrari och Red Bull när Lewis Hamilton slog problem i andra övningen på Singapore Grand Prix.