Proces migrace MySQL serveru

Předpoklady

oNainstalovánu cílovou instanci SQL serveru, na kterou budete migrovat. Cílová instance může být nainstalována na jiném stroji než zdrojová.

oAlespoň na jednom ze strojů musíte mít nainstalované MySQL tools (mysqldump a mysql client).
 

Užitečné odkazy

http://dev.mysql.com/doc/refman/5.6/en/copying-databases.html

http://dev.mysql.com/doc/refman/5.6/en/mysqldump.html

http://dev.mysql.com/doc/refman/5.6/en/mysql.html
 

Migrace

V níže uvedených příkazech, konfiguračních souborech nebo SQL dotazech vždy nahraďte:

SRCHOST adresou zdrojového databázového serveru,

SRCROOTLOGIN uživatelem s root oprávněním na zdrojovém databázovém serveru ,

SRCERADBNAME názvem zálohované ERA databáze (standardně era_db),

BACKUPFILE cestou k souboru, do kterého chcete databázi zálohovat,

TARGETHOST adresou cílového databázového serveru,

TARGETROOTLOGIN uživatelem s root oprávněním na cílovém databázovém serveru ,

TARGETERADBNAME názvem cílové ERA databáze,

TARGETERALOGIN uživatelem, který bude mít na cílovém serveru přístup k ERA databázi,

TARGETERAPASSWD heslem uživatele, který bude mít na cílovém serveru přístup k ERA databázi.

 

Níže uvedené příkazy není nutné spouštět pomocí příkazového řádku. Provádět je můžete prostřednictvím MySQL tools.

1.Zastavte službu ERA Server, resp. ERA Proxy.

2.Vytvořte úplnou zálohu původní ERA databáze:

mysqldump --host SRCHOST --disable-keys --extended-insert -u SRCROOTLOGIN -p SRCERADBNAME > BACKUPFILE

3.Na novém MySQL serveru si připravte prázdnou databázi:

mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=CREATE DATABASE TARGETERADBNAME /*!40100 DEFAULT CHARACTER SET utf8 */;"

Poznámka: Na linuxových systémech používejte apostrof (') místo uvozovek (").

4.Obnovte databázi na cílový MySQL server do prázdné databáze, kterou jste si připravili v předchozím kroku:

mysql --host TARGETHOST -u TARGETROOTLOGIN -p TARGETERADBNAME < BACKUPFILE

5.Vytvořte nového uživatele na cílovém MySQL serveru:

mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=CREATE USER TARGETERALOGIN@'%' IDENTIFIED BY 'TARGETERAPASSWD';"

Doporučení pro TARGETERALOGIN:

Malé ASCII znaky, čísla a podtržítko "_"

Doporučení pro TARGETERAPASSWD:

Pouze ASCII znaky, velká a malá písmena, čísla, mezery a speciální znaky

Nepoužívejte non-ASCII znaky, složené závorky {} a @

Mějte na paměti, že při nedodržení výše uvedených doporučení nemusí dojít k úspěšnému připojení do databáze případně budete muset použít escape znak při úpravě connection stringu (krok 8).

6.Přidělte uživateli oprávnění pro přístup do ERA databáze:

mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=GRANT ALL ON TARGETERADBNAME.* TO TARGETERALOGIN;"

Poznámka: Na linuxových systémech používejte apostrof (') místo uvozovek (").

7.Na stroji s ERA Serverem, resp. ERA Proxy najděte soubor startupconfiguration.ini a otevřete jej v textovém editoru.

oWindows Vista a novější:

% PROGRAMDATA %\ESET\RemoteAdministrator\Server\EraServerApplicationData\Configuration\startupconfiguration.ini

oWindows XP:

% ALLUSERSPROFILE %\ Application Data\ESET\RemoteAdministrator\Server\EraServerApplicationData\Configuration\startupconfiguration.ini

oLinux:

/etc/opt/eset/RemoteAdministrator/Server/StartupConfiguration.ini

8.Změňte connection string pro připojení k databázi.

oZadejte adresu a port nového databázového serveru.

oZadejte název nového uživatele a heslo, který má přístup ERA databázi.

Výsledek by měl vypadat takto:

DatabaseType=MySqlOdbc

DatabaseConnectionString=Driver=MySQL ODBC 5.3 Unicode Driver;Server=TARGETHOST;Port=3306;User=TARGETERALOGIN;Password={TARGETERAPASSWD};CharSet=utf8;Database=TARGETERADBNAME;

9.Spusťte službu ERA Server, resp. ERA Proxy a ujistěte se, že běží správně.