1

Recently I made a clone of my Wordpress installation from a production to a development server. This entailed me copying and backing up the database and public_html folder to transfer the production server to the new development server.

All of this has worked fine. Some of my content (like image uploads) are not there but this is because I was mainly concerned with the database and general architecture rather than the specific files, so this is a non-issue.

My only problem is that now when I login to the administrator account and then navigate to the admin dashboard on the development server, I can't get in. It says You do not have sufficient permissions to access this page. on http://mysite/wp-admin/index.php

Why would this be? I checked the wp_usermeta table and found for the user that I am indeed an admin, with roi_user_level at 10 and roi_capabilities set to a:1:{s:13:"administrator";b:1;} so why can't I get in when I am logged in as this user? Might it have to do with changing all the urls in my database? I did this to scrub reference to the production server on the development server, and used this tool which has worked : https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

But I don't think that is the issue. Any ideas for why I can't access the admin area after a server move?

Edit: I should clarify: I did not simply dump the production public_html into the development server. Rather, I installed a fresh install of wordpress on the development server and imported the production database. This is why my files, like images, don't work while the posts are there. So this isn't an issue of a bad/old .htaccess for example because such a file would be from the fresh install of Wordpress not an old version from the production server. The production server's files (generally speaking) were outdated, this is why I am moving the architecture to a development server with a fresh install so I can update our setup.

Edit2: I disabled all plugins through phpmyadmin and the problem persists! :(

1 Answer 1

3

The answer was the following:

Changing the table names to the correct prefix during the migration was not enough, you have to go into the wp_options table and change wp_user_roles (option id 92) to use the correct prefix as well.

Furthermore in wp_usermeta, change the prefix for the administrator user (if not all users).

So for example roi_user_level becomes wp_user_level

1
  • 1
    Thanks man, you saved me a lot of struggle here ;) Commented Apr 11, 2020 at 14:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.