Subject FB 3.0.3 Win "08001 unavailable database" trying to access employee without Engine12 provider
Author

Hello --

below my detailed testing environment:


== Main goal

- On a FB3.x SS installation, trying to access *only* with remote provider, disabling at all *embedded* engine


=== Testing environment

- Windows 10 Pro x64

- Firebird 3.0.3 SS *service* manually installed from ZIP package with instsvc tool

- On my dev machine, service is using a named instance (see below last paragraph)

- Installation path

(C:\Dev\_firebird\fb303_3090_ss\fbguard.exe -s fb303_3090_ss)

(Service is running with LocalSystemAccount)

- all other Firebird instances installed are stopped during my test

- default firebird.conf

- default database.conf


After installation:

- stopped Firebird service

- initialized security3.fdb with embedded connection

> isql -user sysdba employee

> create user SYSDBA password 'SomethingCryptic';

> commit;

> quit;

- restarted Firebird service


SQL> select SEC$USER_NAME, SEC$ADMIN, SEC$PLUGIN from sec$users;


SEC$USER_NAME  SEC$ADMIN SEC$PLUGIN

=============================== ========= ===============================

SYSDBA                          <true>    Srp


== Contextual information


// Extract from databases.conf

#

# Example Database:

#

employee.fdb = $(dir_sampleDb)/employee.fdb

employee = $(dir_sampleDb)/employee.fdb


#

# Master security database specific setup.

# Do not remove it until you understand well what are you doing!

#

security.db = $(dir_secDb)/security3.fdb

{

RemoteAccess = false

DefaultDbCachePages = 50

}



== Test 1/2, dumb access test, with default firebird.conf

// Extract from firebird.conf

#Providers = Remote,Engine12,Loopback


>isql localhost/3090:employee -user sysdba -password SomethingCryptic

Database: localhost/3090:employee, User: SYSDBA

SQL> show version;

ISQL Version: WI-V3.0.3.32900 Firebird 3.0

Server version:

Firebird/Windows/Intel/i386 (access method), version "WI-V3.0.3.32900 Firebird 3.0"

Firebird/Windows/Intel/i386 (remote server), version "WI-V3.0.3.32900 Firebird 3.0/tcp (SLW-WKS-xxx)/P15:C"

Firebird/Windows/Intel/i386 (remote interface), version "WI-V3.0.3.32900 Firebird 3.0/tcp (SLW-WKS-xxx)/P15:C"

on disk structure version 12.0


SQL> show database;

Database: localhost/3090:employee

        Owner: SYSDBA

PAGE_SIZE 8192

Number of DB pages allocated = 326

Number of DB pages used = 297

Number of DB pages free = 29

Sweep interval = 20000

Forced Writes are OFF

Transaction - oldest = 169

Transaction - oldest active = 170

Transaction - oldest snapshot = 170

Transaction - Next = 175

ODS = 12.0

Database not encrypted

Default Character set: NONE



== Test 2/2, modified firebird.conf disabling Embedded engine

// Extract from firebird.conf

Providers = Remote,Loopback


Restarted Firebird SS service


>isql localhost/3090:employee -user sysdba -password SomethingCryptic

Statement failed, SQLSTATE = 08001

unavailable database

Use CONNECT or CREATE DATABASE to specify a database

SQL> quit;


--- Additional info

- Same behaviour verified on different HW and different OS (Windows 10 32/64, Windows 7 )

- Same behaviour verified with FB installed on default port (3050) (SS)

- Same behaviour verified on a vanilla installation, with default installation


Any suggestion is appreciate.

Alex/