MySQL Serverの移行処理

前提条件

ソースとターゲットのSQL Serverインスタンスをインストールする必要があります。これらは別のコンピューターでホストできます。

MySQLツールは、1台以上のコンピューター(mysqldumpとmysqlクライアント)で使用できる必要があります。

便利なリンク

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

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

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

移行処理


note

次のコマンド、構成ファイル、またはSQL文では、必ず次の項目を置換してください。

SRCHOSTをソースデータベースサーバーのアドレスに変更する

SRCROOTLOGINをソースMySQLサーバールートユーザーログインに変更する

SRCDBNAMEをバックアップするソースESET PROTECTデータベースの名前に変更する

BACKUPFILEをバックアップが保存されるファイルへのパスに変更する

TARGETROOTLOGINをターゲットMySQLサーバールートユーザーログインに変更する

TARGETHOSTをターゲットデータベースサーバーのアドレスに変更する

TARGETDBNAMEをターゲットESET PROTECTデータベースの名前に変更する(移行後)

TARGETLOGINをターゲットデータベースサーバー上の新しいESET PROTECTデータベースユーザーのログイン名に変更する

TARGETPASSWDをターゲットデータベースサーバー上の新しいESET PROTECTデータベースユーザーのパスワードに変更する

コマンドラインで次のSQL文を実行する必要はありません。GUIツールが使用できる場合は、既に知っているアプリケーションを使用できます。

1.ESET PROTECTサーバー/MDMサービスを停止します。

2.ソースESET PROTECTデータベースの完全データベースバックアップ(移行するデータベース)を作成する:

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

3.ターゲットMySQLサーバー上に空のデータベースを準備する:

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


note

Linuxシステムでは、引用符の「"」の代わりにアポストロフィ文字「'」を使用してください。

4.ターゲットMySQLサーバーのデータベースを以前に準備された空のデータベースに復元する:

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

5.ターゲットMySQLサーバー上にESET PROTECTデータベースユーザーを作成する:

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

TARGETLOGINの推奨文字:

小文字のASCII文字、数字、アンダースコア「_」

TARGETPASSWDの推奨文字:

大文字と小文字のASCII文字、数字、スペース、特殊文字を含むASCII文字のみ

非ASCII文字、波括弧{}または@は使用しないでください。

上記の文字に関する推奨事項に従わない場合、データベース接続の問題が発生する可能性があるか、データベース接続文字列の修正中に後から特殊文字をエスケープする必要があります。文字のエスケープルールはこのマニュアルの対象外です。

6.ターゲットMySQLサーバー上のESET PROTECTデータベースユーザーに適切なアクセス権を付与する:

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


note

Linuxシステムでは、引用符の「"」の代わりにアポストロフィ文字「'」を使用してください。

7.tbl_authentication_certificateテーブルの内容を削除します(そうでない場合、エージェントが新しいサーバーに接続できない場合があります)。

 mysql --host TARGETHOST -u root -p "--execute=DELETE FROM era_db.tbl_authentication_certificate where certificate_id = 1;"

8.ESET PROTECTサーバーまたはMDMをデータベースに接続します