Ask the Community
Groups
Migrate Traverse to New Windows Server - Connect IT Community | Kaseya
<main> <article class="userContent"> <p><strong>QUESTION:</strong></p> <p>How do I move my Traverse server (BVE/DGE, DGE, DGEx) to a new Windows server?</p> <p><strong>SOLUTION:</strong></p> <p><strong>Note: </strong>Any references to<strong> TRAVERSE_HOME </strong>should be replaced with the actual Traverse installation directory (e.g. C:\Program Files (x86)\Traverse)</p> <ol><li>Install the identical Traverse revision on the (new) destination server, as the original (source) server</li> <li>Stop Traverse software components on the destination server.</li> <li>Apply any customization from 'TRAVERSE_HOME\etc\emerald.xml' on the source to the same file on the destination server. One way to achieve this is to compare the two files and note the differences (e.g. 'diff' or 'compare' commands).</li> <li>In the rare case that changes have been made to any device signatures in 'etc\typedef', copy the customized device signatures from the source server to overwrite the copies in the destination server. Altering files in this folder is not recommended as the folder is overwritten during upgrades.</li> <li>Copy the license key (TRAVERSE_HOME\etc\licenseKey.xml) from source to destination server.</li> <li> <a rel="nofollow" href="https://kaseya.vanillacommunities.com/kb/articles/aliases/kaseya/hc/en-gb/articles/229042248-Tip-Make-a-current-Traverse-database-backup">Create a backup</a> of the databases on the source server.</li> <li>Delete only the database folders (except symbolic file) from the destination server:<br><pre class="code codeBlock" spellcheck="false" tabindex="0">cd TRAVERSE_HOME<br><br>copy /y "TRAVERSE_HOME\database\mysql\*.sym" "Traverse_Home\"<br><br>del /q TRAVERSE_HOME\database\mysql\*<br><br>move /y "Traverse_Home\*.sym" "TRAVERSE_HOME\database\mysql"</pre> </li> <li>Copy the archived historical data from the source server backup location to the destination server, overwriting the live folders on the destination:<br><br><strong>Applicable to BVE only server or BVE+DGE on same server</strong><br><pre class="code codeBlock" spellcheck="false" tabindex="0">TRAVERSE_HOME\database\backup\backup_liveeventsdb\ ---> TRAVERSE_HOME\database\mysql\liveeventsdb\<br>TRAVERSE_HOME\database\backup\backup_schedulerdb\ ---> TRAVERSE_HOME\database\mysql\schedulerdb\ TRAVERSE_HOME\database\backup\backup_sladb\ ---> TRAVERSE_HOME\database\mysql\sladb\ TRAVERSE_HOME\database\backup\backup_summarydb\ ---> TRAVERSE_HOME\database\mysql\summarydb\ TRAVERSE_HOME\database\backup\backup_provisioning.xml ---> TRAVERSE_HOME\database\backup\</pre> <strong>Applicable to DGE only server or BVE+DGE on same server</strong><br><pre class="code codeBlock" spellcheck="false" tabindex="0">TRAVERSE_HOME\database\backup\backup_aggregateddatadb\ ---> TRAVERSE_HOME\database\mysql\aggregateddatadb\ TRAVERSE_HOME\database\backup\backup_processdb\ ---> TRAVERSE_HOME\database\mysql\processdb\ </pre> </li> <li> <p>If server is a BVE, copy these folders from source to destination:</p> <pre class="code codeBlock" spellcheck="false" tabindex="0">TRAVERSE_HOME\database\derby\ TRAVERSE_HOME\plugin\ </pre> </li> <li> <p>If the server is a DGE or DGE extension, copy these folders from source to destination:</p> <pre class="code codeBlock" spellcheck="false" tabindex="0">TRAVERSE_HOME\apps\silk\data\</pre> </li> <li>If server is a BVE, import the provisioning data from a command prompt on the destination server (launched with 'Run As Administrator):<br><pre class="code codeBlock" spellcheck="false" tabindex="0">cd TRAVERSE_HOME utils\databaseUtil.pl --action import --file database\backup\backup_provisioning.xml --batch</pre> </li> <li>Restore the MySQL databases on the destination server:<br><pre class="code codeBlock" spellcheck="false" tabindex="0">cd TRAVERSE_HOME<br>net start nvdgedb</pre> <p><strong>Applicable to BVE only server or BVE+DGE on same server </strong></p> <p>(each line below is a separate command, 2 commands need to be run per database)</p> <pre class="code codeBlock" spellcheck="false" tabindex="0">apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="liveeventsdb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" liveeventsdb >> logs\database_restore.log<br><br>apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="schedulerdb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" schedulerdb >> logs\database_restore.log <br><br>apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="summarydb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" summarydb >> logs\database_restore.log <br><br>apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="sladb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" sladb >> logs\database_restore.log</pre> <p><strong>Applicable to DGE only server or BVE+DGE on same server</strong></p> <pre class="code codeBlock" spellcheck="false" tabindex="0">apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="aggregateddatadb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" aggregateddatadb >> logs\database_restore.log <br><br>apps\mysql\bin\mysql --defaults-file=etc\mysql.conf --execute="SHOW TABLES" --database="processdb" > tables.txt<br><br>for /F "skip=1" %G IN (tables.txt) DO <a href="https://kaseya.vanillacommunities.com/profile/apps%5Cmysql%5Cbin%5Cmysql" rel="nofollow">@apps\mysql\bin\mysql</a> --defaults-file=etc\mysql.conf --execute="REPAIR TABLE %G USE_FRM" processdb >> logs\database_restore.log</pre> </li> <li>If server is a BVE, restore the Derby Database on the destination: <pre class="code codeBlock" spellcheck="false" tabindex="0">cd TRAVERSE_HOME del database\derby\netconf\log\* database\derby\netconf\db.lck</pre> </li> <li>Optimize the MySQL databases, unless server is a DGE extension:<br><pre class="code codeBlock" spellcheck="false" tabindex="0">cd TRAVERSE_HOME<br>utils\db_optimize.pl -r</pre> </li> <li>Stop Traverse on the source server, and ensure that all components are down before proceeding.</li> <li>Start the Traverse components on the (new) destination server.</li> <li>After verifying that the new server is performing as expected, uninstall Traverse from the source server.</li> </ol><p> </p> <p><strong>Related Articles:</strong></p> <p><a rel="nofollow" href="https://kaseya.vanillacommunities.com/kb/articles/aliases/kaseya/hc/en-gb/articles/229933228-Migrate-Traverse-to-New-Linux-Server">Migrate Traverse to New Linux Server</a></p> <p> </p> </article> </main>