Knowledge Base

How to reset the Ghost administrator password

This article describes how to reset the Ghost administrator password.

Normally if you forget your password, you can use the Ghost password recovery feature to reset the password by e-mail. However, if this option is unavailable (for example, if e-mail on your site is not working correctly), you can use phpMyAdmin to manually reset the password in the database.

Method #1: E-mail

The quickest and easiest way to reset the administrator's password is to request a new one through e-mail. To do this, follow these steps:

  1. Use your web browser to go to the Ghost login page.
  2. Click Forgotten password?.
  3. In the text box, type the e-mail address associated with the account.
  4. Click SEND NEW PASSWORD. Ghost sends a message to the e-mail address associated with the administrator account.
  5. In the message, click the link to reset the administrator password.

Method #2: phpMyAdmin

You can also modify the administrator password directly in the database using phpMyAdmin. To do this, follow these steps:

  1. Generate a bcrypt hash of the password you want to use:
    • Use your web browser to visit http://bcrypthashgenerator.apphb.com.
    • In the Plain Text text box, type the password you want to use, and then click Generate Hash.
    • Under BCrypt Hash, copy the entire string. You will need this value later when you modify the Ghost database.
  2. Log in to cPanel.
    If you do not know how to log in to your cPanel account, please see this article.
  3. In the Databases section of the cPanel home screen, click phpMyAdmin.
  4. In the left-hand pane of phpMyAdmin, click the Ghost database. A list of tables in the database appears.

    Typically, the Ghost database is username_ghosXXX, where username represents your cPanel username, and XXX is a three-digit number.
  5. On the top menu bar, click SQL.
  6. Copy and paste the following statement into the SQL query text box. Replace BcryptHash with the hash value you obtained in step 1, and replace [email protected] with the e-mail address associated with the account:

    UPDATE users SET password = 'BcryptHash' WHERE email = '[email protected]';

    If your Ghost installation uses table prefixes, make sure you add it to the users table. For example, if your Ghost table prefix is gho_, you would type the following command instead:

    UPDATE gho_users SET password = 'BcryptHash' WHERE email = '[email protected]';
  7. Click Go. phpMyAdmin updates the database with the new password.
  8. You should now be able to log in to Ghost as the administrator using the new password.

    If the account is locked, you must also reset its status to active. The following SQL query demonstrates how to do this:

    UPDATE users SET status = 'active' WHERE email = '[email protected]';