RT migration and upgrade

Hello RT users list. I was hoping some knowledgable individual could help
me out with the following problem. I’ll begin at the beginning, as the
problem is a bit complicated (but, I imagine, not that unusual).
I was tasked with migrating the RT web tool to a new machine, and
upgrading it. First I installed and configured it on the target machine.
Then I ran a mysqldump of all databses on the original box. I scp’d the
dump file to the target machine, and imported the databses with mysql
command. Then I ran the in place upgrade script to migrate from rt 3.4.1
to rt 3.4.5.
However, I hadn’t run my original dump with --compatible=ansi flag (thanks
to the archives, I now know that this was the problem). This caused all of
my binary attachments to become unusable. The migration only happened 3-4
business days ago, so I got permission from my superiours to simply import
the Attachment table (after it had been exported with the correct flags),
and lose any newly created attchments. However, when I ran that set of
commands this morning, it changed the contents of all of the tickets that
I checked. Uh-oh! This data is pretty critical to the company. I can get a
DBA to write an insert statement, which will hopefully avoid the
unintended behaviour, but I thought perhaps someone on this list had
encountered this issue themselves. Anyone know what I’m doing wrong?


My take on this would be to:

  1. Re-dump from original with the proper flags.
  2. dump from current with proper flags
  3. Diff dump from orign and dump from new and set aside changes
  4. restore original to ‘safe’ DB
  5. restore diff results over top of original in ‘safe’ DB

In theory, this should re-stablish the last known state, isolate the changes, then re-append the changes.

This is of course the ugly way to do it. If you were doing binary logging and you started that on the go-live date, then you could just re-roll forward those transactions (assuming they hadn’t been flushed) over top of a restore of the original. The method above is my ‘ugly’ sqlDBA crippled method (referring to my particular skills and not necessarily yours)…


Michael Eraña, CISSP
PC Network, Inc.