Skip to content

Allt om WordPress, webbutveckling — och mer därtill

🔑 Hur du ändrar ditt WordPress-lösenord via phpMyAdmin: en steg-för-steg-guide

🔑 Hur du ändrar ditt WordPress-lösenord via phpMyAdmin: en steg-för-steg-guide

Åtkomsten till WordPress adminpanel är förlorad. E-post fungerar inte, och lösenordsåterställningsmeddelandet kommer aldrig fram. Webbplatsens kontrollpanel ligger bakom en ogenomtränglig vägg, och varje minuts driftstopp skadar besökare och ditt rykte.

Låter det bekant? Du är inte ensam. E-postproblem hos webbhotellet, förlorad åtkomst till ägarens e-postkonto, kontokapning: orsakerna är otaliga, men resultatet är alltid detsamma. Standardscenariot "Glömt lösenord" är oanvändbart.

Lyckligtvis finns det en lösning. Du behöver bara komma åt webbplatsens databas via phpMyAdmin och ersätta lösenordshashen manuellt. Detta är mer tillförlitligt än att vänta på ett e-postmeddelande och tar exakt två minuter. Vi går igenom alla fungerande metoder, från peka-och-klicka till kommandorad.

💡 Snabb översikt:

  • Logga in i phpMyAdmin via cPanel eller din webbhotellspanel
  • Hitta tabellen wp_users och redigera fältet user_pass med MD5-funktionen
  • För snabbhet, använd en enkel SQL-fråga
  • Med SSH-åtkomst, återställ lösenordet via WP-CLI med ett enda kommando

När standardåterställningen av lösenord är maktlös

Standardmekanismen i WordPress är enkel: på inloggningssidan klickar du på "Glömt lösenord?", anger ditt användarnamn eller e-post och får en återställningslänk. Det fungerar felfritt så länge e-posten fungerar.

Problem uppstår när:

  • Du inte har tillgång till e-postkontot som är kopplat till användarkontot (admin-e-posten har ändrats, brevlådan är övergiven);
  • Webbhotellet inte skickar systemmejl: funktionen mail() är inaktiverad, SMTP är inte konfigurerat, e-posten hamnar i skräppost eller försvinner;
  • Webbplatsen har hackats, och angriparen har ändrat både e-post och administratörslösenord.

I samtliga dessa fall är den enda garanterade vägen direkt åtkomst till MySQL-databasen. phpMyAdmin finns tillgängligt på praktiskt taget alla webbhotell: det ingår som standard i cPanel, DirectAdmin, Plesk och ISPmanager. Inga ytterligare verktyg behöver installeras.

Metod 1: manuell redigering via phpMyAdmin-gränssnittet

Den mest visuella metoden. Passar om du arbetar med databasen för första gången och vill se exakt vad du ändrar.

Steg 1. Logga in i phpMyAdmin. Öppna din webbhotellspanel (cPanel eller liknande), leta upp avsnittet "Databaser" och klicka på phpMyAdmin-ikonen.

Steg 2. Välj din webbplats databas. I den vänstra kolumnen finns listan över databaser. Välj den som tillhör din webbplats (om du inte minns namnet, kontrollera wp-config.php i webbplatsroten, parametern DB_NAME).

Steg 3. Öppna tabellen wp_users. I tabellistan, leta upp raden wp_users (prefixet kan skilja sig: wp_ är standard, men det kan vara wpxy_, site_ eller någon annan uppsättning som angavs vid installationen). Klicka på "Bläddra".

Steg 4. Klicka på "Redigera" bredvid önskad användare. Ett formulär med alla kontofält öppnas.

Steg 5. Ersätt lösenordet. I fältet user_pass, radera den gamla hashen och ange ditt nya lösenord. I rullgardinsmenyn "Funktion", välj MD5. Klicka på "Kör" längst ner i formuläret.

Redigering av fältet user_pass med MD5-funktionen vald i phpMyAdmin

Klart. Lösenordet sparas i databasen som en MD5-hash. Vid den allra första inloggningen känner WordPress igen det föråldrade formatet, hash-omvandlar automatiskt lösenordet med en modern algoritm (PasswordHash med salt och 256 iterationer) och skriver den förstärkta versionen till databasen. Inga ytterligare åtgärder krävs; bakåtkompatibilitetsmekanismen har funnits sedan version 2.5.

Metod 2: snabb återställning via SQL-fråga

Samma resultat, men i en enda åtgärd. Praktiskt när du behöver ändra lösenordet utan att navigera genom rader och formulär.

Logga in i phpMyAdmin, välj din webbplats databas och gå till fliken SQL. Klistra in frågan:

1UPDATE `wp_users` SET `user_pass` = MD5('your-new-password') WHERE `user_login` = 'your-username';

Ersätt your-new-password med det faktiska lösenordet och your-username med inloggningsnamnet (fältet user_login i tabellen). Om tabellprefixet skiljer sig från wp_, korrigera det i frågan. Klicka på "Kör".

Frågan körs omedelbart. Mekaniken är densamma: MD5 i databasen, automatisk uppgradering av hashen vid första inloggning.

Metod 3: WP-CLI för dig som är bekväm med terminalen

Om WP-CLI är installerat på servern (och på en riktig VPS eller dedikerad server är det nästan säkert det), ändras lösenordet med ett kommando utan att gå in i phpMyAdmin:

1wp user update your-login --user_pass=new-password

WP-CLI anropar wp_set_password() själv, och lösenordet skrivs omedelbart med den korrekta, moderna hashen, utan MD5-mellansteget. Kommandot kräver inte att man anger tabellprefix, är inte beroende av PHP-versionen och rör inte andra användarfält.

Om du behöver återställa administratörslösenordet men inte minns inloggningsnamnet, hämta listan över användare:

1wp user list --role=administrator

Skicka sedan det nödvändiga inloggningsnamnet till kommandot wp user update.

Metod 4: nödåterställning via temats functions.php

Det mest "akuta" alternativet för när du inte har tillgång till webbhotellspanelen men kan redigera webbplatsfiler via FTP eller genom webbhotellets filhanterare.

Lägg till följande kod i functions.php för det aktiva temat före den avslutande ?>-taggen (eller i slutet av filen om taggen saknas):

1wp_set_password('new-password', 1);

Siffran 1 är användar-ID:t (vanligtvis 1 för administratören som skapades vid installationen). Om administratören har ett annat ID, ersätt siffran.

Spara filen och öppna valfri sida på webbplatsen EN GÅNG. Lösenordet kommer att sättas. Omedelbart efter detta, **ta bort raden från **functions.php; om du lämnar kvar den kommer lösenordet att återställas vid varje sidladdning.

Denna metod är grov, men den hjälper när de andra inte är tillgängliga.

Denna 4-minutersvideo visar hela vägen: från inloggning i cPanel till att spara det nya lösenordet i tabellen wp_users. Knapplaceringar och rullgardinsmenyer syns tydligt; om ditt webbhotellsgränssnitt skiljer sig förblir den allmänna logiken densamma.

⁉️🤔 Vanliga frågor

Varför specifikt MD5, om denna algoritm anses osäker?

MD5 i phpMyAdmin är den enda tillgängliga hashfunktion som WordPress förstår när den infogas direkt i databasen. MD5-hashen kommer dock bara att lagras fram till första inloggningen: CMS-kärnan kontrollerar lösenordet, ser det föråldrade formatet och ersätter det transparent med PasswordHash, en modern algoritm med salt och 256 iterationer. Den slutliga hashen i databasen är robust. MD5 är här en transportbrygga, inte permanent lagring.

Vad ska jag göra om tabellprefixet inte är wp_ och jag inte vet vad det är?

Öppna wp-config.php i webbplatsroten och leta upp raden $table_prefix. Värdet på denna variabel är prefixet. Om du inte har tillgång till filer, bläddra genom tabellistan i phpMyAdmin: users slutar alltid med _users, och prefixet syns från närliggande tabeller (_posts, _options och så vidare).

Kan jag klara mig utan phpMyAdmin om jag inte vill gå in i databasen?

Ja, använd WP-CLI (metod 3) eller återställ via functions.php (metod 4). WP-CLI kräver SSH-åtkomst till servern, medan functions.php kräver FTP eller webbhotellets filhanterare. Om du varken har det ena eller det andra är phpMyAdmin det enda alternativet, men det sköter jobbet tillförlitligt.

Kommer denna metod att fungera om webbplatsen körs på PHP 8+ och en ny version av WordPress?

Ja. Alla beskrivna metoder fungerar på aktuella versioner av WordPress och PHP. Bakåtkompatibilitetsmekanismen för MD5-hashar har inte tagits bort från kärnan sedan version 2.5, eftersom alltför många webbplatser uppgraderar via denna väg. MySQL-funktionen MD5() har inte heller försvunnit någonstans.

Jag ändrade lösenordet, men jag kan fortfarande inte logga in. Vad är fel?

Kontrollera tre saker. För det första: fältet user_login kan ha fått extra mellanslag eller stavfel; inloggningsnamnet är skiftlägeskänsligt för tangentbordslayout. För det andra: webbplatsen kan ha cachat den gamla sessionen, så öppna inloggningssidan i inkognitoläge. För det tredje: om ett säkerhetsplugin är installerat (Wordfence, Solid Security) kan det blockera inloggning per IP efter flera misslyckade försök. Vänta 15 minuter eller återställ blockeringen via samma databas i pluginets tabell.

Lösenordsförlust är ingen katastrof om du kan lösningen

phpMyAdmin ser skrämmande ut för den som aldrig har tittat i en databas. Men att ändra WordPress-lösenordet genom det är en operation på tre klick och en rullgardinsmeny. När du väl behärskar det kommer du aldrig att stå utelåst framför inloggningsskärmen igen.

Om din webbplats ligger på ett vanligt webbhotell är ditt verktyg phpMyAdmin (metod 1 eller 2). Om du har en VPS eller dedikerad server med konsolåtkomst hanterar WP-CLI (metod 3) det snabbare. Och även när webbhotellspanelen är otillgänglig och du bara har FTP, kommer functions.php (metod 4) att rädda dagen. Välj den väg som är tillgänglig just nu och återta kontrollen över din webbplats på två minuter.