Problem installing on Windows Server with SQLite

Started by cwl, November 13, 2025, 06:41:54 AM

Previous topic - Next topic

cwl

Hi everyone!

I'm trying to install NetXMS Server on freshly installed Windows Server 2025 as Administrator like following:
  • Path: default (C:\NetXMS) (1)
  • Selected Components: default
  • Select Additional Tasks: default (Initialize database etc - all checked)
  • Initialize Database:
    • Database type: SQLite
    • Path to database file: C:\NetXMS\database\netxms.db
    • Create database and database user before initialization: checked
    • DBA login name: admin
    • DBA password: netxms


In the end of installation console window appears:
NetXMS Database Manager Version 5.2.7 Build 5.2-483-g0fe7ba4e30

Creating database and user...
Database creation is not implemented for selected database typeUnable to create database or user

***** PRESS ANY KEY TO CONTINUE *****

which according to Process Explorer is a result of command run by installer:
"C:\NetXMS\bin\nxdbmgr.exe" -c "C:\NetXMS\etc\netxmsd.conf" init -P -F sqlite -C "admin/netxms"

File "C:\NetXMS\etc\netxmsd.conf" contains following: (2)
DBDriver=sqlite.ddr
DBName=C:\NetXMS\database\netxms.db
LogFile=C:\NetXMS\log\netxmsd.log


Service "NetXMS Core" is not running and restarting it manually results in just it getting stopped.


File "C:\NetXMS\log\netxmsd.log" contains:
2025.11.13 07:29:28.774 *I* [logger            ] Log file opened (rotation policy 2, max size 16777216)
2025.11.13 07:29:28.774 *I* [startup            ] Starting NetXMS server version 5.2.7 build tag 5.2-483-g0fe7ba4e30
2025.11.13 07:29:28.774 *I* [startup            ] System time zone is RTZ+03RTZDT
2025.11.13 07:29:28.774 *I* [logger            ] Debug level set to 0
2025.11.13 07:29:28.774 *I* [config            ] Main configuration file: C:\NetXMS\etc\netxmsd.conf
2025.11.13 07:29:28.774 *I* [config            ] Configuration tree:
2025.11.13 07:29:28.774 *I* [config            ] config
2025.11.13 07:29:28.774 *I* [config            ]  +- server
2025.11.13 07:29:28.774 *I* [config            ]      +- DBDriver
2025.11.13 07:29:28.778 *I* [config            ]      |    value: sqlite.ddr
2025.11.13 07:29:28.778 *I* [config            ]      +- DBName
2025.11.13 07:29:28.778 *I* [config            ]      |    value: C:\NetXMS\database\netxms.db
2025.11.13 07:29:28.778 *I* [config            ]      +- LogFile
2025.11.13 07:29:28.778 *I* [config            ]          value: C:\NetXMS\log\netxmsd.log
2025.11.13 07:29:28.782 *I* [startup            ] System hardware ID 4BC690221DCA064F134C1B617A5D939F646BBA48
2025.11.13 07:29:28.790 *I* [db.drv            ] Database driver "sqlite.ddr" loaded and initialized successfully
2025.11.13 07:29:28.792 *I* [comm.listener      ] SocketListener/LocalAdmin: listening on 127.0.0.1:21784
2025.11.13 07:29:28.792 *I* [comm.listener      ] SocketListener/LocalAdmin: listening on [127.0.0.1]:21784
2025.11.13 07:29:28.796 *E* [db.drv            ] SQL query failed (Query = "SELECT var_value FROM metadata WHERE var_name='SchemaVersion'"): no such table: metadata
2025.11.13 07:29:28.796 *E* [db.drv            ] SQL query failed (Query = "SELECT var_value FROM config WHERE var_name='DBFormatVersion'"): no such table: config
2025.11.13 07:29:28.796 *E* [db                ] Unable to get database schema version


I tried to add following lines to nextxmsd.conf:
DBServer=localhost
DBLogin=admin
DBPassword=netxms
It did not help any bit.

General question: what is wrong and how can I fix it?

Extra questions:
  • Would it be correct to install to "C:\Program Files\NetXMS" ?
  • Should nextxmsd.conf contain DBServer, DBLogin and DBPassword parameters? - They are not added automatically

Filipp Sudanov

In case of SQLite database login and password is not used. There is no need to check "Create database and database user before initialization". Just fill in "Path to database file", folders in that path should exist after installer finishes extracting files, so C:\NetXMS\server.db should be fine. NetXMS will create the database automatically.

And you don't need to run installed again, you can just put this into netxmsd.conf:

DBDriver=sqlite.ddr
DBName=C:\NetXMS\server.db

And run
nxdbmgr init
this should initialize the database.

cwl

#2
Quote from: Filipp Sudanov on November 14, 2025, 12:06:10 PMIn case of SQLite database login and password is not used. There is no need to check "Create database and database user before initialization". Just fill in "Path to database file", folders in that path should exist after installer finishes extracting files, so C:\NetXMS\server.db should be fine. NetXMS will create the database automatically.

Oh, thank you so much - indeed that worked: installation was successfully completed, now "NetXMS Core" service is running, log does not contain any error messages and login at web-interface (installed afterwards) works ok.

I'd suggest - it would be handy if "Create database and database user before initialization" and afields below it would be grayed out in the installer if SQLite is selected.

Filipp Sudanov

Yes, we will fix that in a future version.

Also note that SQLite is for testing only as it may not handle multiple parallel queries well. But is should be fine for a few tenths of nodes.

cwl

#4
Quote from: Filipp Sudanov on November 14, 2025, 07:44:16 PMAlso note that SQLite is for testing only as it may not handle multiple parallel queries well. But is should be fine for a few tenths of nodes.

Yep, thank you, - I've read about that; although I hardly have any experience with databases.
It's basically for less than 10 computers - home server, desktop etc.

Btw - I'm not sure that hardware vendor/model/serial number recognition is strictly maintained (sure, there are thousands of devices), but just in case - it does not work 100% correct in terms of fields (WD Blue HDDs, also Kingston memory is not recognized at all):