Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Jira Cloud to Server Migration

Matt Wilson March 21, 2023

Just thought I'd share these steps since it was fairly hard earned knowledge and maybe it will help someone else.

We use Jira Server (software) at the time of writing this version 8.20.9.

We acquired a smaller team and wanted to move them from Jira Cloud to our on prem solution.  The following detail the extra steps you need to do to make this work.

The process is this.

1.You need to do a server export from cloud

2.You then need to import that backup into a temporary stand alone server that matches your current on prem server version.

3.You then need to do an export from your temporary server you setup in step 2 and then do project imports into your production server.

 

These steps you need to do are around Step #2.  What you need to do to get a functional server working so you can export your data successfully.  Note that this list changes as more functionality is added to Jira cloud.  You are always best to be at the latest version of Jira Server, but that isn't always easy to do.

On your temporary server:

  1. extract your cloud server export file to a temp folder
  2. move the attachments and avatar content into the expected folder i.e. on linux /var/atlassian/application-data/jira/data...
  3. create a zip file that just has the two xml files
    zip jira-cloud.zip activeobjects.xml entities.xml
  4. Import that zip file
  5. Once Jira comes up you will be able to login with userid/password sysadmin:sysadmin.
  6. you will likely notice that your sysadmin user does not have actual site admin access, we'll fix that later.  You'll have some access, but not full access, i.e. like you can't do a system import or backup, or grant users admin access.
  7. Stop your Jira service
  8. on your psql database server.  get into psql and connect to your database.  Run the following:
    ALTER TABLE "AO_60DB71_SPRINT" DROP COLUMN "CREATED_DATE";
    ALTER TABLE "AO_60DB71_SPRINT" DROP COLUMN "SPRINT_VERSION";
    insert into globalpermissionentry (id,permission, group_id) VALUES ('XXXXX','SYSTEM_ADMIN','jira-administrators');
    insert into globalpermissionentry (id,permission, group_id) VALUES ('XXXXX','SYSTEM_ADMIN','system-administrators');
    insert into globalpermissionentry (id,permission, group_id) VALUES ('XXXXX','SYSTEM_ADMIN','site-admins');

    the fist 2 lines remove some entries for fields that don't exist in server
    the last 3 introduce rules to grant "system admin" access to those user groups.  Note the "XXXXX" needs to be the next 3 values in your ID field for that table.  You'll have to do a query to determine what those values are

  9. restart your jira service
  10. run your backup
  11. you may not need to do this step, but I had to
    unzip your new backup file
    edit entities.xml
    remove the line that contains
    <EntityProperty id="30783"/>
    rezip the back up file
  12. you should then be able to import on a project basis to your server

 

Again, this isn't perfect, but it should point you down the right path.  You'll likely have to perform other steps unique to your own environment.

 

1 comment

Comment

Log in or Sign up to comment
juanmanuel_porras March 22, 2023

Hi, Matt!

It works!!

We're migrating from Jira Cloud to Jira Server on the last days and, unfortunately, we've found the same problem. Thanks for the solution. Now, we can make a system backup on Jira Server.

Regards.

TAGS
AUG Leaders

Atlassian Community Events