Ask the Community
Groups
Move old DGE to a new physical DGE - Connect IT Community | Kaseya
<main> <article class="userContent"> <p><strong>QUESTION</strong></p> <p>How to migrate a DGE to a new machine (real or virtual)?</p> <p><strong>RESOLUTION</strong></p> <p><strong>Note: </strong>These instructions are for migrating a Traverse DGE (upstream) to a new server of the same OS (e.g. Linux to Linux or Windows to Windows). Any references to<strong> TRAVERSE_HOME </strong>should be replaced with the actual Traverse installation directory (e.g. "C:\Program Files (x86)\Traverse" or /usr/local/traverse)</p> <ol><li>Install the identical Traverse revision on the (new) destination server, as the original server</li> <li>Stop Traverse software components on the destination server</li> <li>Take the most recent database backup on the source DGE, review this KB: <a href="https://kaseya.vanillacommunities.com/kb/articles/aliases/kaseya/hc/en-gb/articles/229042248" rel="noopener nofollow">Make a current Traverse database backup</a> </li> <li>Stop Traverse software on the (original) source server</li> <li>Copy the '<strong>TRAVERSE_HOME</strong>\etc\licenseKey.xml' from the source to the same destination on the new server.</li> <li>Apply any customization from '<strong>TRAVERSE_HOME</strong>\etc\emerald.xml' and '<strong>TRAVERSE_HOME</strong>\etc\dge.xml' (<strong>namely the unique dge name) </strong>on the source to the same file on the destination server. One way to achieve this is to compare the two files to highlight 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>Restore the MySQL databases: <ol><li><a rel="nofollow" href="#h_a52ca442-d869-4138-8c5d-5b52eb9c8bf7">Windows</a></li> <li><a rel="nofollow" href="#h_48504547-dd93-4a23-9940-a412129180f9">Linux</a></li> </ol></li> </ol><h2 data-id="restoring-dge-mysql-database">Restoring DGE / MySQL Database:</h2> <h3 id="h_a52ca442-d869-4138-8c5d-5b52eb9c8bf7" data-id="windows">Windows</h3> <p>Copy the following files and folders from source to the destination:</p> <ol><li> <strong>TRAVERSE_HOME</strong>\database\mysql\aggregateddatadb\</li> <li> <strong>TRAVERSE_HOME</strong>\database\mysql\processdb\</li> <li> <strong>TRAVERSE_HOME</strong>\apps\silk\data\</li> <li> <strong>TRAVERSE_HOME</strong>\plugin\</li> </ol><pre class="code codeBlock" spellcheck="false" tabindex="0">cd <strong>TRAVERSE_HOME</strong><br><br>net start nvdgedb<br><span data-contrast="auto"><br>apps\</span><span data-contrast="auto">mysql</span><span data-contrast="auto">\bin\</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">\</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --execute="SHOW TABLES" --database="</span><span data-contrast="auto">aggregateddatadb</span><span data-contrast="auto">" > tables.txt</span><span data-ccp-props="{"201341983":0,"335559739":160,"335559740":259}"> </span><br><span data-contrast="auto"><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=</span><span data-contrast="auto">etc</span><span data-contrast="auto">\</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --execute="REPAIR TABLE %G USE_FRM" </span><span data-contrast="auto">aggregateddatadb</span><span data-contrast="auto"> >> logs\database_restore.log</span><span data-ccp-props="{"201341983":0,"335559739":160,"335559740":259}"> </span><br><span data-contrast="auto"><br>apps\</span><span data-contrast="auto">mysql</span><span data-contrast="auto">\bin\</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">\</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --execute="SHOW TABLES" --database="</span><span data-contrast="auto">processdb</span><span data-contrast="auto">" > tables.txt</span><span data-ccp-props="{"201341983":0,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">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=</span><span data-contrast="auto">etc</span><span data-contrast="auto">\</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --execute="REPAIR TABLE %G USE_FRM" </span><span data-contrast="auto">processdb</span><span data-contrast="auto"> >> logs\database_restore.log</span></pre> <h3 id="h_48504547-dd93-4a23-9940-a412129180f9" data-id="linux">Linux</h3> <p><span data-contrast="auto">To restore the DGE database from a snapshot created by db_backup.</span><span data-contrast="auto">sh</span><span data-contrast="auto">, you </span><span data-contrast="auto">must restore the.MYD and .FRM files from the snapshot archive in <strong>TRAVERSE_HOME</strong>/database/backup, and then rebuild the database indexes with the following steps:</span><span data-ccp-props="{"201341983":0,"335559739":160,"335559740":259}"> </span></p> <ol><li> <span data-contrast="auto">Shut down all components.</span><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}"> </span> </li> <li data-leveltext="%1." data-font="Calibri" data-listid="7" aria-setsize="-1" data-aria-posinset="2" data-aria-level="1"> <span data-contrast="auto">At a command prompt, execute the following commands:</span><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}"> <br></span> <pre class="code codeBlock" spellcheck="false" tabindex="0"><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}">cd <strong>TRAVERSE_HOME</strong> <br><br>etc/traverse.init stop <br><br>mv database/mysql/aggregateddatadb database/mysql/aggregateddatadb.OLD <br><br>gunzip -c database/backup/backup-mm-dd-yy,hh-mm.tar.gz | tar xvf - database/mysql/backup_dge <br><br>etc/dgedb.init start restore <br><br>apps/mysql/bin/mysql --defaults-file=etc/mysql.conf --skip-column-names -u root --password= --batch -e 'show tables;' backup_dge > /tmp/names.txt <br><br>apps/mysql/bin/mysql --defaults-file=etc/mysql.conf -u root --password= --execute "CREATE DATABASE aggregateddatadb;" <br><br>for i in `cat /tmp/names.txt`; do apps/mysql/bin/mysql --defaults-file=etc/mysql.conf -u root --password= --execute "RESTORE TABLE $i FROM '<strong>TRAVERSE_HOME</strong>/database/mysql/backup_dge'" aggregateddatadb; done <br><br>etc/dgedb.init stop <br><br>rm -rf database/mysql/backup_dge <br><br>etc/traverse.init start </span></pre> </li> <li>On the source server: <br><pre class="code codeBlock" spellcheck="false" tabindex="0">cd /tmp/ <br><br>tar zxvf <strong>TRAVERSE_HOME</strong>/database/backup/backup-mm-dd-yy,hh-mm.tar.gz database/backup/backup_dge <br><br>tar zxvf <strong>TRAVERSE_HOME</strong>/database/backup/backup-mm-dd-yy,hh-mm.tar.gz database/backup/backup_apm </pre> <ol><li> <span data-contrast="none">Copy the following files and folders from source to the destination:</span><br><br>SOURCE<span data-contrast="none"> (old DGE): /</span><span data-contrast="none">tmp</span><span data-contrast="none">/database/backup/</span><span data-contrast="none">backup_dge</span> <br>DESTINATION (new DGE): <strong><span data-contrast="none">TRAVERSE_HOME</span></strong><span data-contrast="none">/database/</span><span data-contrast="none">mysql</span><span data-contrast="none">/</span><span data-contrast="none">backup_dge</span><span data-contrast="none">/ </span><span data-ccp-props="{"201341983":0,"335559685":1440,"335559739":160,"335559740":259}"> <br><br></span>SOURCE<span data-contrast="none"> (old DGE): /</span><span data-contrast="none">tmp</span><span data-contrast="none">/database/backup/</span><span data-contrast="none">backup_apm</span> <br>DESTINATION (new DGE): <strong><span data-contrast="none">TRAVERSE_HOME</span></strong><span data-contrast="none">/database/</span><span data-contrast="none">mysql</span><span data-contrast="none">/</span><span data-contrast="none">backup_apm</span><span data-contrast="none">/</span><span data-ccp-props="{"201341983":0,"335559685":1440,"335559739":160,"335559740":259}"> <br><br></span> </li> <li> <span data-contrast="none">Copy the following files and folders from source to the destination:</span><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}"> <br></span><span data-contrast="none"></span><strong><span data-contrast="none"><br>TRAVERSE_HOME</span></strong><span data-contrast="none">\apps\silk\data\</span> <br><span data-contrast="none"><strong>TRAVERSE_HOME</strong>\plugin\</span><span data-ccp-props="{"201341983":0,"335559685":1440,"335559739":160,"335559740":259}"> </span> </li> </ol></li> <li> <span data-contrast="none">On the destination server:</span> <br><pre class="code codeBlock" spellcheck="false" tabindex="0"><span data-contrast="none">cd </span><strong><span data-contrast="none">TRAVERSE_HOME</span></strong> <br> <br><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">dgedb.init</span><span data-contrast="auto"> start </span><span data-contrast="auto">restore</span><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --skip-column-names -u root --password= -e 'show tables;' --database=</span><span data-contrast="auto">backup_dge</span><span data-contrast="auto"> > /</span><span data-contrast="auto">tmp</span><span data-contrast="auto">/tables.txt</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">dropDGEdb.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createDGEdb.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createDGEdbUsers.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">for </span><span data-contrast="auto">i</span><span data-contrast="auto"> in `cat /</span><span data-contrast="auto">tmp</span><span data-contrast="auto">/tables.txt`; do apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= --execute "RESTORE TABLE $</span><span data-contrast="auto">i</span><span data-contrast="auto"> FROM '<strong>TRAVERSE_HOME</strong>/database/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">backup_dge</span><span data-contrast="auto">'" </span><span data-contrast="auto">aggregateddatadb</span><span data-contrast="auto">; done</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createDGEdbProcs.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> --skip-column-names -u root --password= -e 'show tables;' --database=</span><span data-contrast="auto">backup_apm</span><span data-contrast="auto"> > /</span><span data-contrast="auto">tmp</span><span data-contrast="auto">/tables.txt</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">dropAPMdb.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createAPMdb.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createAPMdbUsers.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">for </span><span data-contrast="auto">i</span><span data-contrast="auto"> in `cat /</span><span data-contrast="auto">tmp</span><span data-contrast="auto">/tables.txt`; do apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= --execute "RESTORE TABLE $</span><span data-contrast="auto">i</span><span data-contrast="auto"> FROM '<strong>TRAVERSE_HOME</strong>/database/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">backup_apm</span><span data-contrast="auto">'" </span><span data-contrast="auto">processdb</span><span data-contrast="auto">; done</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span><br><br><span data-contrast="auto">apps/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/bin/</span><span data-contrast="auto">mysql</span><span data-contrast="auto"> --defaults-file=</span><span data-contrast="auto">etc</span><span data-contrast="auto">/</span><span data-contrast="auto">mysql.conf</span><span data-contrast="auto"> -u root --password= < database/schema/</span><span data-contrast="auto">mysql</span><span data-contrast="auto">/</span><span data-contrast="auto">createAPMdbProcs.sql</span><span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"> </span></pre> </li> <li> <span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"></span>Depending on the destination OS, please follow these steps: <ol><li data-leveltext="%1." data-font="Calibri" data-listid="7" aria-setsize="-1" data-aria-posinset="2" data-aria-level="1"> <span lang="EN-US" data-contrast="none">Linux</span><br><pre class="code codeBlock" spellcheck="false" tabindex="0"><span data-contrast="none">cd </span><strong><span data-contrast="none">TRAVERSE_HOME</span></strong> <br><span lang="EN-US" data-contrast="none" xml:lang="EN-US">etc</span><span lang="EN-US" data-contrast="none" xml:lang="EN-US">/</span><span lang="EN-US" data-contrast="none" xml:lang="EN-US">dgedb.init</span><span lang="EN-US" data-contrast="none" xml:lang="EN-US"> </span>stop <br><span lang="EN-US" data-contrast="none" xml:lang="EN-US">utils/db_optimize.pl -r</span></pre> </li> <li data-leveltext="%2." data-font="Calibri" data-listid="7" aria-setsize="-1" data-aria-posinset="2" data-aria-level="1"> <span lang="EN-US" data-contrast="none">Windows</span><br><pre class="code codeBlock" spellcheck="false" tabindex="0"><span data-contrast="none">cd </span><strong><span data-contrast="none">TRAVERSE_HOME</span></strong> <br><span lang="EN-US" data-contrast="none" xml:lang="EN-US">net stop </span><span lang="EN-US" data-contrast="none" xml:lang="EN-US">nvdgedb</span> <br><span lang="EN-US" data-contrast="none" xml:lang="EN-US">utils\db_optimize.pl -r</span></pre> </li> </ol></li> <li data-leveltext="%2." data-font="Calibri" data-listid="7" aria-setsize="-1" data-aria-posinset="2" data-aria-level="1"> <span lang="EN-US" data-contrast="none" xml:lang="EN-US"></span>Start the Traverse components on the (new) destination server </li> <li data-leveltext="%2." data-font="Calibri" data-listid="7" aria-setsize="-1" data-aria-posinset="2" data-aria-level="1"> <span data-ccp-props="{"201341983":0,"335559685":720,"335559739":160,"335559740":259}"><span lang="EN-US" data-contrast="none">Linux</span></span> <br><span lang="EN-US" data-contrast="none">You may now delete the database/</span><span lang="EN-US" data-contrast="none">mysql</span><span lang="EN-US" data-contrast="none">/</span><span lang="EN-US" data-contrast="none">backup_dge</span><span lang="EN-US" data-contrast="none"> and database/</span><span lang="EN-US" data-contrast="none">mysql</span><span lang="EN-US" data-contrast="none">/</span><span lang="EN-US" data-contrast="none">backup_apm</span><span lang="EN-US" data-contrast="none"> directories after verifying test history within the Traverse UI</span><span data-ccp-props="{"134233279":true,"201341983":0,"335559739":160,"335559740":259}"> </span> </li> </ol><p> </p> <p><strong>APPLIES TO </strong></p> <p>All versions of Traverse, though 'processdb' may not exist in early versions</p> <p> </p> </article> </main>