Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

How to Reset WordPress Admin Password on Localhost

Getting locked out of a WordPress site on localhost is frustrating, especially when you’re in the middle of a project.

We’ve run into it ourselves when switching between test sites, forgetting a complex password, or realizing the browser never saved our login.

The good news is that fixing it locally is quick. Since you have full access to your site’s database and files, you can reset the password in just a few minutes without needing email access.

In this tutorial, we’ll walk you through exactly how we reset a WordPress admin password on localhost using phpMyAdmin or WP-CLI. This means you can get back to building your website without any delays.

Resetting the admin password in WordPress on localhost

Why Resetting the Password Doesn’t Work on Localhost

When we say “localhost,” we’re talking about a local server, usually your computer. It’s a private space where you can build and test a WordPress site before going live.

We often use localhost to experiment with new plugins, design changes, or just learn how WordPress works. It’s a safe way to break things without worrying.

If you haven’t tried it yet, these guides can help you get started:

Now here’s the part that can be confusing for beginners. If you forget your admin password on a local site, the regular “Lost your password?” link won’t help.

That’s because WordPress normally sends a password reset email, but localhost setups can’t send emails unless you’ve set that up manually. And by default, most people haven’t.

Luckily, you don’t need an email to get back in.

We’ll show you two easy ways to reset your password on localhost, even if you’re completely locked out:

Method 1: Reset WordPress Admin Password on Localhost Using phpMyAdmin

If you’re using tools like XAMPP, WAMP, or MAMP, then phpMyAdmin should already be installed. We’ve used it many times to tweak things directly in the database, including resetting passwords.

phpMyAdmin gives you a visual interface to manage your WordPress database. It sounds complicated, but once you get the hang of it, it’s pretty straightforward.

Note: If you’re using LocalWP, you’ll see a tool called Adminer instead. It works just like phpMyAdmin, so you can still follow these steps easily.

Adminer the phyMyAdmin alternative in LocalWP

To begin, open your browser and go to this address:

http://localhost/phpmyadmin/

You might be asked to log in. In most setups, the username is ‘root’ and the password field is left empty. If that doesn’t work, check the documentation for your specific local environment software.

Once you’re inside phpMyAdmin, look for your WordPress database name in the sidebar and click it.

Open your database in phpMyAdmin

You’ll see a list of tables inside that database. Find the one that ends in _users and click the ‘Browse’ link next to it.

Note: Most WordPress sites use wp_ as the prefix, but it could be different if you changed it during setup.

Open users table in WordPress database

You’ll now see a list of users on your site.

Find the row with the admin username and click the ‘Edit’ link next to it.

Edit user in WordPress database

This opens a form showing all the user data stored in the database. Scroll down until you find the user_pass field.

In the Value column, type your new password. Then, find the Function column next to it and select MD5 from the dropdown menu.

Add new user password

This creates a temporary password that will let you log in.

Click the ‘Go’ button at the bottom to save your changes.

Important: Using MD5 is not secure for a live site, but it works as a temporary key to get you back in on localhost. As soon as you log in, you must reset your password one more time inside WordPress.

To do this, go to Users » Profile from your admin dashboard. Enter your new password there and save it. This will make sure your password is saved correctly and securely using the latest WordPress hashing.

For details, see our guide on how to reset your WordPress password.

Save database changes

That’s it! You can now log in to your local WordPress site using the new password you just set.

Method 2: Resetting the Password via the Functions.php File

If you don’t have access to phpMyAdmin or prefer a different approach, you can reset your WordPress admin password by editing the functions.php file of your theme.

This method is straightforward and can be done quickly.

Step 1: Access Your Theme’s Functions.php File

First, you’ll need to locate the functions.php file for your active theme. To do this, navigate to the root directory of your WordPress installation on your localhost.

Depending on which software you are using, the location of the root directory may differ. For instance, if you are using Local, then your site will be located at:

C:\Users\yourusername\Local Sites\yoursitename\app\public\

Next, go to the /wp-content/themes/ folder. Inside, you’ll find a folder named after your active theme.

Locating your theme folder

Inside your active theme folder, look for a file named functions.php and open it in a text editor like Notepad or TextEdit.

Step 2: Add the Code to Reset the Password

At the bottom of the functions.php file, you need to paste the following code:

function reset_admin_password() {
    $user_id = 1; // ID of the admin user
    $new_password = 'newpassword123'; // Your new password
    wp_set_password($new_password, $user_id);
}
add_action('init', 'reset_admin_password');

The last line, ‘add_action(‘init’, ‘reset_admin_password’);’, is a WordPress hook. It tells your site to run this password-resetting code as soon as WordPress starts up.

Don’t forget to replace ‘newpassword123’ with a stronger password you want to use.

This code sets a new password for the admin user with the ID of 1. However, If you don’t know the user ID but know the admin email address, you can use this code snippet instead:

function reset_admin_password_by_email() {
    $user_email = 'admin@example.com'; // Admin user's email address
    $user = get_user_by('email', $user_email);
    if ($user) {
        $new_password = 'newpassword123'; // Your new password
        wp_set_password($new_password, $user->ID);
    }
}
add_action('init', 'reset_admin_password_by_email');

This code sets a new password (newpassword123) for the admin user associated with the specified email address.

After adding the code, save the functions.php file and refresh your localhost WordPress site in your browser. You should now be able to log in using the new password.

Step 3: Remove the Code

Once you’ve successfully logged in, it’s important to remove the code snippet from the functions.php file to avoid potential security risks.

If you don’t, WordPress will keep resetting your password every time a page loads, which could lock you out again or create a security vulnerability.

Simply open the functions.php file and delete the code you added earlier. Don’t forget to save your changes.

Frequently Answered Questions About Resetting WordPress Passwords

Here are some questions frequently asked by our readers about resetting the WordPress admin password on a local server:

What if I prefer using the command line?

If you’re comfortable with the terminal, then WP-CLI offers a super fast way to reset your password.

Just run this command:

wp user update 1 --user_pass=yournewpassword

Replace yournewpassword with whatever password you want to use. This method is especially handy for developers or anyone who prefers working in the command line.

It’s quick, clean, and doesn’t require editing any files or accessing phpMyAdmin.

Will these methods work on a live WordPress site?

They can, but you’ll need to be more cautious when working on a live site.

For live websites, the safest way to reset your admin password is by using the “Lost your password?” link on the login screen. WordPress will email you a reset link, assuming your site is set up to send emails correctly.

While the manual methods (like editing functions.php or using phpMyAdmin) also work online, they’re riskier. One small error in a live environment could crash your site or expose sensitive data.

Stick with the email method unless you know exactly what you’re doing.

I reset the password, but it still won’t let me log in. What should I do?

If you’re still locked out after resetting the password, don’t panic—just double-check a few common issues:

  • Using phpMyAdmin? Make sure you selected MD5 when entering the new password.
  • 🧼 Using functions.php? Remove the password reset code after it runs once.
  • 🔁 Multiple local sites? Confirm you’re logging into the correct one.

If it’s still not working, then try clearing your browser cache, restarting your local server, or even testing in a different browser.

Once everything’s sorted, you should be able to log in smoothly.

Bonus Resources for WordPress Admin

The following are additional tips and tutorials on managing passwords and admin accounts in WordPress:

We hope this article helped you reset your WordPress admin password on a local server. You may also want to see our tutorial on creating a temporary login for WordPress or take a look at our guide on how to add one-click Google login in WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

66 CommentsLeave a Reply

  1. Very nice blog for WordPress help. I recommend for beginners to use this platform. Thankful!

    • The most common issue would be if you did not set the function to MD5 or click go to apply the changes, you would want to ensure you have done that correctly.

      Admin

  2. I’m encoutering this problem now after installing the 2nd WordPress on MAMP. This article is very to the point and I’ll try it tomorrow!

  3. Thank you so much. I always find solutions to every of my WP problems here.
    I kept having problems with the login page on the frontend not recognizing my new password, I didn’t realize there is a function to pass that message to myPHPadmin.

  4. I tried this and while I was in there also attempted to change my username, which I realize was probably my mistake… but now I can’t log in at all. Is there a way to undo what I’ve done?

    • You would need to follow the steps in the article and that would bring you back to where you could edit, you should also be able to use your email as an alternative

      Admin

  5. Your Blog is always so full of rich articles. Thanks so much. was stuck for a while because I skip the MD5 option. You are a lifesaver.

  6. Thank you SO MUCH for this! You saved me so many more hours of tinkering with trying to figure out how to log in!!

  7. Thank you ever so much! Normally, I keep this stuff handy; but in this case, I did could not find where I wrote the information down.

    You saved a total re-work of a site I was planning.

  8. Hi,
    When I reset My password through link then what fileds affected in Database and in which table.

    Kindly share this information i am waiting for your response.

  9. After half an hour of search i just found my help from this site, which solves my problem in no time,
    thanks a lot
    keep it up guys

  10. Hello,
    I type a new password , click continue and it does not keep the password, it shows a long string of numbers and letters. If I use this , still cannot log in. It looks simple on the video but does not work for me. Thank you.
    I looked everywhere on the internet, no solution worling.

  11. when I click on the Go button this error appears:

    #1881 – Operation not allowed when innodb_forced_recovery > 0

  12. I started to just reinstall wordpress, but then decided to do a google search, and there was GOOD OLD RELIABLE WpBeginner.com

    Thanks a million!!

  13. Hello

    THANKS, Wow there is no other place that you can get well explained information like this , i have been suffering but now i just followed your tutorial and it is a game changer i love you guys and i will always learn from you guys once again thanks

  14. Thank you! For those who can’t make it work, remember to use the “MD5” function when changing the password. I almost skipped that part and was stuck for a few minutes.

  15. Hi…
    I am so thankful for such great information you provide. I have bookmarked your site a while back.
    I have been working on a site in wordpress using xampp on the Apache local server. Just recently, I am not able to login on the admin page. I have managed to create a user name and password that works on about 95% of all sites requiring me to register. I also created a file that lists all my login info for everywhere I need to login, including the WP admin login page, IF I ever forget that info.
    I have read this page (https://www.wpbeginner.com/wp-tutorials/how-to-reset-wordpress-admin-password-on-localhost/) and watched the video, also. The only problem is that when I click on the wp_users in phpMyadmin, I get this error- ‘#1932 – Table ‘bitnami_wordpress.wp_users’ doesn’t exist in engine.’
    Am I reduced to re-installing WordPress, or is there another way around it?
    I have tried restoring my computer (using system restore) to various past restore points, but with no luck. Can you help me with this?
    I would be so thankful!!! I have put months of work into designing a site to launch, and I HAVE exported everything to a file quite a few times using WordPress import plugin (something like that).

    Could you provide a solution?

    Thank you so much…

    Anthony

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.