Move Tiki to a new server

This is an installation guide. Also, you can use Server Check to make sure the new server is appropriately configured for Tiki.

The following worked for me and was so surprisingly easy and smooth that I have to share it with you! biggrin Nevertheless, there is no guarantee it will work the same way for you.

Initial Assumptions

  • You have a working current Tiki installation on your "OLD" server where all data is stored in the database. (I know that is not the optimal way but for the actual moving it comes in quite handy...if not, files outside the db have to be moved manually at the end)
  • both hosts web-host allow FTP access & provide phpMyAdmin.
  • Otherwise you can Move tiki using ssh.

Part 1 : New Tiki & old database on the new server

  1. Make a mysqldump (e.g. old_dump.sql) of your old mysql database. Damian explains here how to do it.
  2. Then go and log into your new site.
  3. Install by FTP under a folder (e.g. /tiki) and set necessary permissions to all folders.
  4. Using phpMyAdmin, create a new (empty) database, and a user for that database (same as in Install by FTP. You need the info: host, user, password, information.
  5. You can import the dump from the old database via phpMyAdmin, unless it is greater than 50 megs in size - in which case you need to Install by SSH or get help from your web host.
    1. Go to the menu SQL > textfile. Click on Browse and point to old_dump.sql. (I used "autodetect" for the format which worked for me. I read that there can be problems because mysqldump and the phpMyAdmin way are not always leading to compatible dump files. Could not verify though.) Hopefully you will not get any SQL Errors in the process.
    2. Now, you have an new Tiki set up (not yet fully installed) and the old (= moved) MySQL database below, but they are not yet connected.

Part 2 : A little different Tiki installation

  1. Point with your browser to your /tiki folder. You should enter the usual install script.
  2. Enter the new database access information (host, user, password, etc.)
  3. Do NOT create any new tiki install but click on "Do nothing and proceed directly to Tiki".
  4. Now you should see tiki/tiki-index.php
  5. Now Tiki should be running smoothly. mrgreen
  6. In my case: I got an error because temp/cache permissions have not been taken the first time. So I deleted the folder temp/cache (via FTP, remember) and created the same again. Then giving all permission ("chmod 777").

If you have not saved all data in the database, now you got to move all images/files/etc. from the old site to the new.
(see again Damians post)

Part 3 : Dealing with UTF-8 issues

  • If your pages contain some non-ASCII characters (ex: accented latin characters), it could be that you see them displayed as a question mark, or some other strange form.
  • If you experience this, it means there is a mismatch between the charset used by different parts of the system, and the data.
  • To resolve this issue, do the following.
  1. Make sure the default encoding for the SQL connection uses the same charset on both servers
    1. PhpMyAdmin > General Parameters
    2. It is recommended that you use utf8_general_ci
  2. Make sure tiki on the target server uses the same encoding as on the original server
    1. SSH to original server, then look at the $client_charset value set in db/local.php.
    2. SSH to target server, then edit to make sure it's set at the same value.
    3. If you had to change the value, then clear the Tiki caches.