Mysql DB Setup

abhi9 years ago

Hi there,

I setup traccar on local system using mysql db on windows machine.When i enter http://localhost:8082/ in browser it is showing - "NullPointerException".Could you please suggest fix for this ? Below are log details :

2015-10-18 05:08:21  INFO: Operating System name: Windows 8.1 version: 6.3 architecture: amd64
2015-10-18 05:08:21  INFO: Java Runtime name: Java HotSpot(TM) 64-Bit Server VM vendor: Oracle Corporation version: 25.60-b23
2015-10-18 05:08:21  INFO: Memory Limit heap: 1796mb non-heap: 0mb
2015-10-18 05:08:21  INFO: Version: 3.1-SNAPSHOT
2015-10-18 05:08:24  INFO: Starting server...
Anton Tananaev9 years ago

Usually it happens when server record missing in the database.

Try:

  1. Stop Traccar service
  2. Remove all tables from the database
  3. Start Traccar service

It will re-create all required tables.

abhi9 years ago

Thanks for reply.I have done the same thing but it is showing Null pointer exception :
Could you please suggest alternative option to resolve this issue and i had to modify the db script because it was throwing error.

INFO   | jvm 1    | 2015/10/23 18:24:12 | [MLog-Init-Reporter] INFO com.mchange.v2.log.MLog - MLog clients using slf4j logging.
INFO   | jvm 1    | 2015/10/23 18:24:12 | [WrapperSimpleAppMain] INFO com.mchange.v2.c3p0.C3P0Registry - Initializing c3p0-0.9.5.1 [built 16-June-2015 00:06:36 -0700; debug? true; trace: 10]
INFO   | jvm 1    | 2015/10/23 18:24:12 | [WrapperSimpleAppMain] INFO com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource - Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, contextClassLoaderSource -> caller, dataSourceName -> i55tzr9c15lqx661ou8auc|48f80a1e, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.jdbc.Driver, extensions -> {}, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, forceSynchronousCheckins -> false, forceUseNamedDriverClass -> false, identityToken -> i55tzr9c15lqx661ou8auc|48f80a1e, idleConnectionTestPeriod -> 600, initialPoolSize -> 3, jdbcUrl -> jdbc:mysql://localhost:3306/traccar?autoReconnect=true, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 0, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 15, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 3, numHelperThreads -> 3, preferredTestQuery -> null, privilegeSpawnedThreads -> false, properties -> {user=******, password=******}, propertyCycle -> 0, statementCacheNumDeferredCloseThreads -> 0, testConnectionOnCheckin -> true, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, userOverrides -> {}, usesTraditionalReflectiveProxies -> false ]
INFO   | jvm 1    | 2015/10/23 18:24:13 | [WrapperSimpleAppMain] INFO org.eclipse.jetty.util.log - Logging initialized @1175ms
INFO   | jvm 1    | 2015/10/23 18:24:13 | [WrapperSimpleAppMain] INFO org.eclipse.jetty.server.Server - jetty-9.2.13.v20150730
INFO   | jvm 1    | 2015/10/23 18:24:13 | [WrapperSimpleAppMain] INFO org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.s.ServletContextHandler@24f895d2{/api,null,AVAILABLE}
INFO   | jvm 1    | 2015/10/23 18:24:13 | [WrapperSimpleAppMain] INFO org.eclipse.jetty.server.ServerConnector - Started ServerConnector@652096f9{HTTP/1.1}{0.0.0.0:8082}
INFO   | jvm 1    | 2015/10/23 18:24:13 | [WrapperSimpleAppMain] INFO org.eclipse.jetty.server.Server - Started @1544ms
Anton Tananaev9 years ago

Most like a record in server table is missing. You can try to create it manually.

abhi9 years ago

Below is script detail and please ignore <code> from table and column name.

/*
SQLyog Community v12.03 (64 bit)
MySQL - 5.6.21 : Database - traccar
*********************************************************************
*/

/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/<code>traccar</code> /*!40100 DEFAULT CHARACTER SET latin1 */;

USE <code>traccar</code>;

/*Table structure for table <code>data</code> */

DROP TABLE IF EXISTS <code>data</code>;

CREATE TABLE <code>data</code> (
  <code>id</code> int(11) NOT NULL AUTO_INCREMENT,
  <code>protocol</code> varchar(128) DEFAULT NULL,
  <code>deviceId</code> int(11) NOT NULL,
  <code>serverTime</code> timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  <code>deviceTime</code> timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  <code>other</code> varchar(4096) NOT NULL,
  PRIMARY KEY (<code>id</code>),
  KEY <code>deviceId</code> (<code>deviceId</code>),
  CONSTRAINT <code>data_ibfk_1</code> FOREIGN KEY (<code>deviceId</code>) REFERENCES <code>device</code> (<code>id</code>) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>data</code> */

/*Table structure for table <code>device</code> */

DROP TABLE IF EXISTS <code>device</code>;

CREATE TABLE <code>device</code> (
  <code>id</code> int(11) NOT NULL AUTO_INCREMENT,
  <code>name</code> varchar(128) NOT NULL,
  <code>uniqueId</code> varchar(128) NOT NULL,
  <code>status</code> varchar(128) DEFAULT NULL,
  <code>lastUpdate</code> timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  <code>positionId</code> int(11) DEFAULT NULL,
  <code>dataId</code> int(11) DEFAULT NULL,
  PRIMARY KEY (<code>id</code>),
  UNIQUE KEY <code>uniqueId</code> (<code>uniqueId</code>),
  KEY <code>positionId</code> (<code>positionId</code>),
  KEY <code>dataId</code> (<code>dataId</code>),
  CONSTRAINT <code>device_ibfk_1</code> FOREIGN KEY (<code>positionId</code>) REFERENCES <code>position</code> (<code>id</code>) ON DELETE CASCADE,
  CONSTRAINT <code>device_ibfk_2</code> FOREIGN KEY (<code>dataId</code>) REFERENCES <code>data</code> (<code>id</code>) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>device</code> */

/*Table structure for table <code>position</code> */

DROP TABLE IF EXISTS <code>position</code>;

CREATE TABLE <code>position</code> (
  <code>id</code> int(11) NOT NULL AUTO_INCREMENT,
  <code>protocol</code> varchar(128) DEFAULT NULL,
  <code>deviceId</code> int(11) NOT NULL,
  <code>serverTime</code> timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  <code>deviceTime</code> timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  <code>fixTime</code> timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
  <code>valid</code> bit(1) NOT NULL,
  <code>latitude</code> float NOT NULL,
  <code>longitude</code> float NOT NULL,
  <code>altitude</code> float NOT NULL,
  <code>speed</code> float NOT NULL,
  <code>course</code> float NOT NULL,
  <code>address</code> varchar(512) DEFAULT NULL,
  <code>other</code> varchar(4096) NOT NULL,
  PRIMARY KEY (<code>id</code>),
  KEY <code>position_deviceId_fixTime</code> (<code>deviceId</code>,<code>fixTime</code>),
  CONSTRAINT <code>position_ibfk_1</code> FOREIGN KEY (<code>deviceId</code>) REFERENCES <code>device</code> (<code>id</code>) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>position</code> */

/*Table structure for table <code>server</code> */

DROP TABLE IF EXISTS <code>server</code>;

CREATE TABLE <code>server</code> (
  <code>id</code> int(11) NOT NULL AUTO_INCREMENT,
  <code>registration</code> bit(1) NOT NULL,
  <code>map</code> varchar(128) DEFAULT NULL,
  <code>language</code> varchar(128) DEFAULT NULL,
  <code>distanceUnit</code> varchar(128) DEFAULT NULL,
  <code>speedUnit</code> varchar(128) DEFAULT NULL,
  <code>latitude</code> float NOT NULL DEFAULT '0',
  <code>longitude</code> float NOT NULL DEFAULT '0',
  <code>zoom</code> int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (<code>id</code>)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>server</code> */

/*Table structure for table <code>traccar</code> */

DROP TABLE IF EXISTS <code>traccar</code>;

CREATE TABLE <code>traccar</code> (
  <code>version</code> int(11) NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>traccar</code> */

insert  into <code>traccar</code>(<code>version</code>) values (301);

/*Table structure for table <code>user</code> */

DROP TABLE IF EXISTS <code>user</code>;

CREATE TABLE <code>user</code> (
  <code>id</code> int(11) NOT NULL AUTO_INCREMENT,
  <code>name</code> varchar(128) NOT NULL,
  <code>email</code> varchar(128) NOT NULL,
  <code>hashedPassword</code> varchar(128) NOT NULL,
  <code>salt</code> varchar(128) NOT NULL DEFAULT '',
  <code>readonly</code> bit(1) NOT NULL DEFAULT b'0',
  <code>admin</code> bit(1) NOT NULL DEFAULT b'0',
  <code>map</code> varchar(128) DEFAULT NULL,
  <code>language</code> varchar(128) DEFAULT NULL,
  <code>distanceUnit</code> varchar(128) DEFAULT NULL,
  <code>speedUnit</code> varchar(128) DEFAULT NULL,
  <code>latitude</code> float NOT NULL DEFAULT '0',
  <code>longitude</code> float NOT NULL DEFAULT '0',
  <code>zoom</code> int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (<code>id</code>),
  UNIQUE KEY <code>email</code> (<code>email</code>)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>user</code> */

/*Table structure for table <code>user_device</code> */

DROP TABLE IF EXISTS <code>user_device</code>;

CREATE TABLE <code>user_device</code> (
  <code>userId</code> int(11) NOT NULL,
  <code>deviceId</code> int(11) NOT NULL,
  <code>read</code> bit(1) NOT NULL DEFAULT b'1',
  <code>write</code> bit(1) NOT NULL DEFAULT b'1',
  KEY <code>deviceId</code> (<code>deviceId</code>),
  KEY <code>user_device_userId</code> (<code>userId</code>),
  CONSTRAINT <code>user_device_ibfk_1</code> FOREIGN KEY (<code>userId</code>) REFERENCES <code>user</code> (<code>id</code>) ON DELETE CASCADE,
  CONSTRAINT <code>user_device_ibfk_2</code> FOREIGN KEY (<code>deviceId</code>) REFERENCES <code>device</code> (<code>id</code>) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table <code>user_device</code> */

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
Anton Tananaev9 years ago

What is this script for?

abhi9 years ago

This DB Script I ran on MYSQL server but it always thrown an NULLPointerException.
It working fine on default HSQLDB

Anton Tananaev9 years ago

Traccar automatically creates the database schema. Why did you run the script manually?

abhi9 years ago

Thanks for reply.Script in traccar.xml is not working for mysql db.it thrown sql exception : CREATE TABLE "user".Invalid syntax etc.thats why had to run manually in mysql editor.

Anton Tananaev9 years ago

It does work if you use configuration from here:

https://www.traccar.org/mysql/

Anton Tananaev7 years ago

I am warning you to not spam everywhere with your question or your account will be banned on this forum.

Ajmal Salam7 years ago
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE properties SYSTEM 'http://java.sun.com/dtd/properties.dtd'> <properties>


<entry key='web.enable'>true</entry>
<entry key='web.port'>8082</entry>
<entry key='web.path'>C:\Program Files (x86)\Traccar\web</entry>

<entry key='geocoder.enable'>true</entry>
<entry key='geocoder.type'>google</entry>

<entry key='logger.enable'>true</entry>
<entry key='logger.level'>all</entry>
<entry key='logger.file'>C:\Program Files (x86)\Traccar\logs\tracker-server.log</entry>



<entry key='database.driver'>com.mysql.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mysql://localhost:3306/traccar?useSSL=false&allowMultiQueries=true&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&sessionVariables=sql_mode=''</entry>
<entry key='database.user'>root</entry>
<entry key='database.password'></entry>

<entry key='database.checkTable'>traccar</entry>

<entry key='database.selectSchemaVersion'>
    SELECT * FROM traccar;
</entry>

<entry key='database.createSchema'>
    CREATE TABLE `user` (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(128) NOT NULL,
    email VARCHAR(128) NOT NULL UNIQUE,
    hashedPassword VARCHAR(128) NOT NULL,
    salt VARCHAR(128) DEFAULT '' NOT NULL,
    readonly BIT DEFAULT 0 NOT NULL,
    admin BIT DEFAULT 0 NOT NULL,
    map VARCHAR(128),
    language VARCHAR(128),
    distanceUnit VARCHAR(128),
    speedUnit VARCHAR(128),
    latitude FLOAT DEFAULT 0 NOT NULL,
    longitude FLOAT DEFAULT 0 NOT NULL,
    zoom INT DEFAULT 0 NOT NULL);

    CREATE TABLE device (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(128) NOT NULL,
    uniqueId VARCHAR(128) NOT NULL UNIQUE,
    status VARCHAR(128),
    lastUpdate TIMESTAMP,
    positionId INT,
    dataId INT);

    CREATE TABLE user_device (
    userId INT NOT NULL,
    deviceId INT NOT NULL,
    "read" BIT DEFAULT 1 NOT NULL,
    "write" BIT DEFAULT 1 NOT NULL,
    FOREIGN KEY (userId) REFERENCES "user" (id) ON DELETE CASCADE,
    FOREIGN KEY (deviceId) REFERENCES device (id) ON DELETE CASCADE);

    CREATE INDEX user_device_userId ON user_device(userId);

    CREATE TABLE position (
    id INT PRIMARY KEY AUTO_INCREMENT,
    protocol VARCHAR(128),
    deviceId INT NOT NULL,
    serverTime TIMESTAMP NOT NULL,
    deviceTime TIMESTAMP NOT NULL,
    fixTime TIMESTAMP NOT NULL,
    valid BIT NOT NULL,
    latitude FLOAT NOT NULL,
    longitude FLOAT NOT NULL,
    altitude FLOAT NOT NULL,
    speed FLOAT NOT NULL,
    course FLOAT NOT NULL,
    address VARCHAR(512),
    other VARCHAR(4096) NOT NULL,
    FOREIGN KEY (deviceId) REFERENCES device (id) ON DELETE CASCADE);
    
    CREATE INDEX position_deviceId_fixTime ON position (deviceId, fixTime);

    CREATE TABLE data (
    id INT PRIMARY KEY AUTO_INCREMENT,
    protocol VARCHAR(128),
    deviceId INT NOT NULL,
    serverTime TIMESTAMP NOT NULL,
    deviceTime TIMESTAMP NOT NULL,
    other VARCHAR(4096) NOT NULL,
    FOREIGN KEY (deviceId) REFERENCES device (id) ON DELETE CASCADE);

    ALTER TABLE device ADD
    FOREIGN KEY (positionId) REFERENCES position (id) ON DELETE CASCADE;

    ALTER TABLE device ADD
    FOREIGN KEY (dataId) REFERENCES data (id) ON DELETE CASCADE;

    CREATE TABLE server (
    id INT PRIMARY KEY AUTO_INCREMENT,
    registration BIT NOT NULL,
    map VARCHAR(128),
    language VARCHAR(128),
    distanceUnit VARCHAR(128),
    speedUnit VARCHAR(128),
    latitude FLOAT DEFAULT 0 NOT NULL,
    longitude FLOAT DEFAULT 0 NOT NULL,
    zoom INT DEFAULT 0 NOT NULL);

    CREATE TABLE traccar (
    version INT DEFAULT 0 NOT NULL);

    INSERT INTO traccar (version) VALUES (301);
</entry>

<entry key='database.selectServers'>
    SELECT * FROM server;
</entry>

<entry key='database.insertServer'>
    INSERT INTO server (registration, latitude, longitude, zoom)
    VALUES (:registration, :latitude, :longitude, :zoom);
</entry>

<entry key='database.updateServer'>
    UPDATE server SET
    registration = :registration,
    map = :map,
    language = :language,
    distanceUnit = :distanceUnit,
    speedUnit = :speedUnit,
    latitude = :latitude,
    longitude = :longitude,
    zoom = :zoom
    WHERE id = :id;
</entry>

<entry key='database.loginUser'>
    SELECT * FROM `user`
    WHERE email = :email;
</entry>

<entry key='database.selectUser'>
    SELECT * FROM `user`
    WHERE id = :id;
</entry>

<entry key='database.selectUsersAll'>
    SELECT * FROM `user`;
</entry>

<entry key='database.insertUser'>
    INSERT INTO `user` (name, email, hashedPassword, salt, admin)
    VALUES (:name, :email, :hashedPassword, :salt, :admin);
</entry>

<entry key='database.updateUser'>
    UPDATE `user` SET
    name = :name,
    email = :email,
    admin = :admin,
    map = :map,
    language = :language,
    distanceUnit = :distanceUnit,
    speedUnit = :speedUnit,
    latitude = :latitude,
    longitude = :longitude,
    zoom = :zoom
    WHERE id = :id;
</entry>

<entry key='database.updateUserPassword'>
    UPDATE `user` SET hashedPassword = :hashedPassword, salt = :salt WHERE id = :id;
</entry>

<entry key='database.deleteUser'>
    DELETE FROM `user` WHERE id = :id;
</entry>

<entry key='database.getPermissionsAll'>
    SELECT userId, deviceId FROM user_device;
</entry>

<entry key='database.selectDevicesAll'>
    SELECT * FROM device;
</entry>

<entry key='database.selectDevices'>
    SELECT * FROM device d INNER JOIN user_device ud ON d.id = ud.deviceId WHERE ud.userId = :userId;
</entry>

<entry key='database.insertDevice'>
    INSERT INTO device (name, uniqueId) VALUES (:name, :uniqueId);
</entry>

<entry key='database.updateDevice'>
    UPDATE device SET name = :name, uniqueId = :uniqueId WHERE id = :id;
</entry>

<entry key='database.deleteDevice'>
    DELETE FROM device WHERE id = :id;
</entry>

<entry key='database.linkDevice'>
    INSERT INTO user_device (userId, deviceId) VALUES (:userId, :deviceId);
</entry>

<entry key='database.selectPositions'>
    SELECT * FROM position WHERE deviceId = :deviceId AND fixTime BETWEEN :from AND :to;    
</entry>

<entry key='database.insertPosition'>
    INSERT INTO position (deviceId, protocol, serverTime, deviceTime, fixTime, valid, latitude, longitude, altitude, speed, course, address, other)
    VALUES (:deviceId, :protocol, CURRENT_TIMESTAMP(), :time, :time, :valid, :latitude, :longitude, :altitude, :speed, :course, :address, :other);
</entry>

<entry key='database.selectLatestPositions'>
    SELECT * FROM position WHERE id IN (SELECT positionId FROM device);
</entry>

<entry key='database.updateLatestPosition'>
    UPDATE device SET positionId = :id WHERE id = :deviceId;
</entry>



<entry key='gps103.port'>5001</entry>
<entry key='tk103.port'>5002</entry>
<entry key='gl100.port'>5003</entry>
<entry key='gl200.port'>5004</entry>
<entry key='t55.port'>5005</entry>
<entry key='xexun.port'>5006</entry>
<entry key='xexun.extended'>false</entry>
<entry key='totem.port'>5007</entry>
<entry key='enfora.port'>5008</entry>
<entry key='meiligao.port'>5009</entry>
<entry key='maxon.port'>5010</entry>
<entry key='suntech.port'>5011</entry>
<entry key='progress.port'>5012</entry>
<entry key='h02.port'>5013</entry>
<entry key='jt600.port'>5014</entry>
<entry key='ev603.port'>5015</entry>
<entry key='v680.port'>5016</entry>
<entry key='pt502.port'>5017</entry>
<entry key='tr20.port'>5018</entry>
<entry key='navis.port'>5019</entry>
<entry key='meitrack.port'>5020</entry>
<entry key='skypatrol.port'>5021</entry>
<entry key='gt02.port'>5022</entry>
<entry key='gt06.port'>5023</entry>
<entry key='megastek.port'>5024</entry>
<entry key='navigil.port'>5025</entry>
<entry key='gpsgate.port'>5026</entry>
<entry key='teltonika.port'>5027</entry>
<entry key='mta6.port'>5028</entry>
<entry key='tzone.port'>5029</entry>
<entry key='tlt2h.port'>5030</entry>
<entry key='taip.port'>5031</entry>
<entry key='wondex.port'>5032</entry>
<entry key='cellocator.port'>5033</entry>
<entry key='galileo.port'>5034</entry>
<entry key='ywt.port'>5035</entry>
<entry key='tk102.port'>5036</entry>
<entry key='intellitrac.port'>5037</entry>
<entry key='xt7.port'>5038</entry>
<entry key='wialon.port'>5039</entry>
<entry key='carscop.port'>5040</entry>
<entry key='apel.port'>5041</entry>
<entry key='manpower.port'>5042</entry>
<entry key='globalsat.port'>5043</entry>
<entry key='atrack.port'>5044</entry>
<entry key='pt3000.port'>5045</entry>
<entry key='ruptela.port'>5046</entry>
<entry key='topflytech.port'>5047</entry>
<entry key='laipac.port'>5048</entry>
<entry key='aplicom.port'>5049</entry>
<entry key='gotop.port'>5050</entry>
<entry key='sanav.port'>5051</entry>
<entry key='gator.port'>5052</entry>
<entry key='noran.port'>5053</entry>
<entry key='m2m.port'>5054</entry>
<entry key='osmand.port'>5055</entry>
<entry key='easytrack.port'>5056</entry>
<entry key='gpsmarker.port'>5057</entry>
<entry key='khd.port'>5058</entry>
<entry key='piligrim.port'>5059</entry>
<entry key='stl060.port'>5060</entry>
<entry key='cartrack.port'>5061</entry>
<entry key='minifinder.port'>5062</entry>
<entry key='haicom.port'>5063</entry>
<entry key='eelink.port'>5064</entry>
<entry key='box.port'>5065</entry>
<entry key='freedom.port'>5066</entry>
<entry key='telik.port'>5067</entry>
<entry key='trackbox.port'>5068</entry>
<entry key='visiontek.port'>5069</entry>
<entry key='orion.port'>5070</entry>
<entry key='riti.port'>5071</entry>
<entry key='ulbotech.port'>5072</entry>
<entry key='tramigo.port'>5073</entry>
<entry key='tr900.port'>5074</entry>
<entry key='ardi01.port'>5075</entry>
<entry key='xt013.port'>5076</entry>
<entry key='autofon.port'>5077</entry>
<entry key='gosafe.port'>5078</entry>
<entry key='autofon45.port'>5079</entry>
<entry key='bce.port'>5080</entry>
<entry key='xirgo.port'>5081</entry>
<entry key='calamp.port'>5082</entry>
<entry key='mtx.port'>5083</entry>
<entry key='tytan.port'>5084</entry>
<entry key='avl301.port'>5085</entry>
<entry key='castel.port'>5086</entry>
<entry key='mxt.port'>5087</entry>
<entry key='cityeasy.port'>5088</entry>
</properties>

Execute each query one by one. NB: Replace "read" & "write" in user_device table with some other name, later change those to default column names in phpmyadmin. Insert atleast one row in server table.

For Users table insert a row like this:

name : admin
email : admin
hashedPwd : ef38a22ac8e75f7f3a6212dbfe05273365333ef53e34c14c
salt : 000000000000000000000000000000000000000000000000
admin : 1