Restoring of the crashed database after upgrade from 6.4 to 6.5

This procedure is determined when:

Upgrade was interupted by computer reset during ETL database upgrade

Server fails to start up with message "Table 'era_db.tbl_log_apps_installed_status' doesn't exist"

Upgrade was interrupted by killing the ERA Server process

If you have stopped ERA Server service during the upgrade (or you have killed the process) and then you have performed the Repair installation, follow instructions in part I.

If you have stopped ERA Server service during the upgrade (or you have killed the process), follow instructions in part II.

validation-status-icon-error WARNING

Backup your database before performing these procedures.

The following procedure requires  of databases . We recommend to perform these advanced prodecures for expert administrators only.

I. ERA Server service has been stopped and then Repair of the installer has been performed

1.Open database management tool (e.g. HeidiSQL, SQL Server Management Studio etc.).

2.Delete all stored procedures, functions, views from your era_db.

3.Download and run the script according to your database type. It recreates all stored procedures in era_db

MS SQL Server: mssql

MySQL: mysql

4.Find the following table in the database:

MS SQL Server: dbo.tbl_logbackup_prevlogs

MySQL: tbl_logbackup_prevlogs

5.If the table from step 4 does not exist in the database, create it with the following query:

MS SQL Server

IF object_id('dbo.tbl_logbackup_prevlogs', 'U') is null

BEGIN

CREATE TABLE [dbo].[tbl_logbackup_prevlogs](

[id] [bigint] NOT NULL IDENTITY(1,1),

[logType] [int] NULL,

[sequenceNo] [bigint] NOT NULL,

[keyframeNo] [bigint] NOT NULL,

[logSize] [bigint] NOT NULL,

[logData] [varbinary](max) NOT NULL,

PRIMARY KEY ( id ));

CREATE NONCLUSTERED INDEX i1 on [dbo].[tbl_logbackup_prevlogs] (logType, id)

END

MySQL

CREATE TABLE IF NOT EXISTS tbl_logbackup_prevlogs (

id BIGINT NOT NULL AUTO_INCREMENT, 

logType int NOT NULL,

sequenceNo BIGINT,

keyframeNo BIGINT,

logSize BIGINT,

logData mediumblob,

PRIMARY KEY (id),

INDEX i1 (logType, id)

) ENGINE = InnoDB DEFAULT CHARSET = utf8;

6.Continue with part II. below.


II. ERA Server service has been stopped

1.Stop the ERA Server service.

2.Download this .zip file.

3.Extract the files.

4.According to your architecture (x64 or x86) and your operating system, copy the .dll or .so files to the location (replace original files):

Windows .dll files:

C:\ProgramFiles\ESET\Remote Administrator\Server

Linux .so files:

/opt/eset/RemoteAdministrator/Server

5.If you have performed this procedure in part I., continue with the step 7.

Open the database management tool and find the table tbl_logbackup_*  or dbo.tbl_logbackup_prevlogs according to your database type, "*" is a random string in the name of the table.

6.Rename the table tbl_logbackup_*  or dbo.tbl_logbackup_prevlogs to tbl_logbackup_prevlogs.

7.Save the database.

8.Start the ERA Server service.

validation-status-icon-warning IMPORTANT

Before starting the ERA Server service on Linux with enabled SELinux, execute the command below:

/sbin/restorecon -F -R -v /opt/eset/RemoteAdministrator/Server/

Open trace.log and you will see status of upgrade. The time it takes, depends on your operating system and size of the database. Do not kill the ERA Server process when the upgrade is running.