This is the second post in my MythTV Migration and upgrade efforts. The first post is here.
My test setup is a separate machine, so for now I’m following the MythTV wiki migration guide for that. I copied the mythconverg backup file onto the new temporary backend machine, ready to restore. Once done, I needed to change the hostname in the database. I wasn’t sure whether the old hostname was fully qualified, so I searched the backup file for references.
$ cat ~/.mythtv/backuprc DBBackupDirectory=/home/orange DBUserName=root DBPassword=root $ mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root'); Query OK, 0 rows affected (0.01 sec) mysql> \q $ sudo /usr/local/share/mythtv/mythconverg_restore.pl --verbose ... Successfully restored backup. $ zgrep -q "hostname\." mythconverg-1299-20150108204433.sql.gz || echo "Not found" Not found $ sudo /usr/local/share/mythtv/mythconverg_restore.pl --change_hostname --old_hostname="master" --new_hostname="tempbackend.domain" Unable to update hostname in table: keybindings Duplicate entry 'Global-UP-tempbackend.domain' for key 'PRIMARY'
Hopefully that error won’t cause me any problems. Per the instructions, I then ran mythtv-setup which prompted me to upgrade the database schema from version 1299 to 1317. I selected Upgrade to agree, then Upgrade to acknowledge a contingency backup, then watched in the console as it upgraded the schema to 1300, then 1301 etc. Once complete, I saw the usual mythtv-setup screen. In the “1. General” screen I changed the IP address to tempbackend’s for both Local Backend and Master Backend. I then started the backend service, and the frontend to test.
$ sudo service mythbackend start Starting mythbackend. $ mythfrontend
As expected the recordings were not there, so I stopped the service, copied a recording file across from master:/var/lib/mythtv/recordings, started the service, and watched it. The png thumbnail of the recording was automatically generated, so I could either copy them all across, or leave them behind.
I now have a working backend. Next post: Configuring a remote frontend.