Webmasters Stack Exchange is a question and answer site for pro webmasters. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My web-host suddenly decide to merge with another company and that move has left me in the lurch.

I have two weeks till I can migrate my mail data over to another account. The only way that I can transfer the data to the new account is through a mail client and manually copying the data to the new hosting by recreating the mail accounts and restoring all the mails from the mail client to them.

Is there anyway that I can automate this process, or a faster way that I could speed-en up this process. I have over 400 email accounts to migrate which is around 2 gigs of matter. And the mails don't stop coming in. If I could do this directly server to server without downloading and uploading the matter, it would be very convenient. That way I will only have to create the accounts and the matter would transfer automatically.

How can I avoid this procedure in the future? And is there a way to backup emails from a mail server?

share|improve this question
up vote 2 down vote accepted

This is a tough one, and I'd like to see how others deal with the problem. But we've done such email migrations before from DreamHost to Gmail, and this was done through Gmail's own email migration tool. It is reasonably fast, and works quite well, but obviously it only works if you're using Gmail hosted.

Another tool you could use is imapsync. This is actually a tool to synchronize two inboxes, but it can also be used with a short shell script and CSV file containing all the account pairs for large migrations.

Another option is to export your maildir (assuming your mail server uses them) and installing them on the new server. You may need your web host's help with this, but this is probably quicker than doing a transfer via IMAP or POP3.

What you always want to do is keep your mailboxes organized and pruned. Don't accumulate millions of emails that you don't need and have them all sitting in your inbox directory. This makes migration much slower. At my work, we had one email account that took over 3 days to migrate because of this.

share|improve this answer
    
well the worry is that I have 300+ accounts to transfer over and that's going to be quite a process – rzlines Nov 11 '10 at 19:34
1  
@rzlines: If that's the case, I would find out what mail server your web host is using and how the mail data is stored. Then you ought to be able to export it all in one go. – Lèse majesté Nov 11 '10 at 19:43
1  
well this is how it got sorted based on your suggestion I pestered my old host to give my details and my data - which they did and so I simply requested my new host to restore the data to my new account and they agreed! phew! – rzlines Dec 1 '10 at 4:46

I would like to share the steps I followed recently in regards to this question.

If you want to transfer the email accounts and messages for a domain from one server to another, you can easily do this by completing two simple steps. Let's call the domain mydomain.com for example. Make sure that you have an account with the mydomain.com domain or the domain is added as Parked or Addon in cPanel at the destination server.

  1. Open your preferred FTP client, connect to the hosting account where the email accounts/messages currently are and navigate to the etc/ sub folder. There you will see a folder named mydomain.com or the name of the domain you want to transfer the messages for. Download this folder anywhere to your local PC. This folder contains the email accounts associated with the corresponding domain.

    Now connect with your FTP client to the server where you want to transfer the accounts/messages. Navigate again to the etc/ sub folder and upload the previously downloaded mydomain.com folder. With this, the transfer of the email accounts is completed.

    The last step is to transfer the email messages. Before proceeding with step 2, remove or rename the downloaded mydomain.com folder on your local PC.

  2. Simply repeat the process from step 1, but this time navigate to the mail/ sub folder of the account where the messages are stored, download mydomain.com to your local PC, connect to the other account where you want to transfer the messages and upload the folder mydomain.com to the mail/ sub folder of the destination account. With this, the transfer of your email accounts and messages is completed.

You should be able to open cPanel > Email accounts of the destination account and see the email accounts for mydomain.com listed.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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