Migrating RT to a new server


I’m migrating RT 4.4.4 from a Ubuntu server to Red Hat. I installed a new instance of RT on the RHEL server then copied over the files from the old server and loaded a dump from the MySQL database.

The first thing that’s odd is that when I go to the web page, it wants to send me through the installation process. To me, it doesn’t seem like that should happen. Is there a way to tell RT that this isn’t really a new installation?

Nevertheless, I walked through the installation screens and when it gets to Initialize Database, it throws this error:
[11892] [Wed Jun 19 21:42:10 2019] [error]: Access denied for user ‘apache’@‘localhost’ (using password: NO) at /var/www/requesttracker/share/html/Install/Initialize.html line 87.

First off I don’t know why it’s trying to use ‘apache’. RT_SiteConfig.pm has the right database user. And it also isn’t using the password which is definitely there. Here’s the configure I’m using:
./configure --prefix=/var/www/requesttracker --with-db-type=mysql --with-d
b-database=requesttracker --with-db-rt-user= --with-db-rt-pass=
–with-web-user=apache --with-web-group=apache --with-rt-group=apache --with-web
-handler=modperl2 --with-bin-owner=apache --with-libs-group=apache --with-libs-o

Everywhere it said www-data in my old configure file (which worked just fine on Ubuntu), I changed it to apache. Looking at the help file, I don’t see anything wrong with that config.

Any idea what I’m doing wrong?


When you say you copied the old files over are these files just RT_SiteConfig files and local customization? You didn’t just copy all of your old RT, I can see that retaining old configuration values then.

loaded a dump from the MySQL database

When you loaded the dump did you create a new database with the same name as previously, in this case, it looks like ‘requesttracker’ and did you use the dump to populate this database?

After running your new configure line did you run make install to install the updated RT files?

I copied over the entire RT directory. Should I just copy over the config files and my customizations?

I created the database and then loaded the dump.

After I copied over the files, I ran the configure again and “make install”.

In your local RT_SiteConfig.pm have you altered all the mentions of old server to the new one? Things like the WebDomain, database host, etc.

If you were able to run the configure script and make install again then you should be okay, but it is strange that RT doesn’t find the existing database. My only thought would be the databases are different names, the one RT is configured to access and the name of the one created from the backup

Yes, I’ve been through the site config. Most of that information didn’t change because I’m recreating the same site on the same domain just on a different server (DNS was updated).

There were a couple of places where changes did happen. One, RT was on its own VM before. Since RHEL costs money, I moved it to a shared VM and modified the conf file accordingly. Secondly, the password for the new shared database changed. I changed that information in the configure statement and double checked it in the site config.

The databases definitely have the same name. What’s so odd is that it’s trying to connect to the database with the user ‘apache’.

What’re the values for the following in your etc/RT_Config.pm file (not the siteconfig one):

=item C<$DatabaseUser>
=item C<$DatabaseAdmin>

Maybe one of those is set to apache?

Those are both set to the correct values. I searched the file for apache and it only appeared where it should be.

What is the output if you try to run make initdb?

ERROR: Can’t create database ‘requesttracker’; database exists

Then it is finding your existing database.