Hallo Martin.
Das ist zwar ein älterer Beitrag - sollte aber so nicht im Raum stehen bleiben.
Vielleicht wurde es ja auch bereits geklärt und anderswo begründet(?).
Du hast verwendet:
ISQL Version: LI-V3.0.3.32900 Firebird 3.0
Ich habe das mit
ISQL Version: LI-T4.0.0.1436 Firebird 4.0 Beta 1
Firebird 4.0 Beta 1 unter Linux Mint v19.3 Cinnamon 4.4.8 -lokal- nachvollzogen. So:
Code: Alles auswählen
gerd@gerd-MS-7641:~$ isql -z
ISQL Version: LI-T4.0.0.1436 Firebird 4.0 Beta 1
Use CONNECT or CREATE DATABASE to specify a database
SQL> CONNECT adressen.fdb USER sysdba PASSWORD 'geheimes_passwort';
Database: adressen.fdb, User: SYSDBA
SQL> CREATE SHADOW 1 '/home/gerd/Firebird/Datenbanken/adressen.shd';
SQL>
Ergebnis: 1,7 MB.
Ich war gleichfalls in Erwartung, dass die Dateigrößen (hier: 1,7 MB) identisch sind - sein müssen.
Warum es bei Dir nicht so ist, kann ich nicht sagen.

- Gleiche DB-Dateigroesse bei CREATE SHADOW.png (27.1 KiB) 14114 mal betrachtet
Auch hier scheint alles korrekt zu sein:
Code: Alles auswählen
gerd@gerd-MS-7641:~$ isql -z
ISQL Version: LI-T4.0.0.1436 Firebird 4.0 Beta 1
Use CONNECT or CREATE DATABASE to specify a database
SQL> CONNECT adressen.fdb USER sysdba PASSWORD 'geheimes_passwort';
Server version:
LI-T4.0.0.1436 Firebird 4.0 Beta 1
Database: adressen.fdb, User: SYSDBA
SQL> show database |grep -i shadow;
Database: adressen.fdb
Owner: SYSDBA
Shadow 1: "/home/gerd/Firebird/Datenbanken/adressen.shd" auto
PAGE_SIZE 8192
Number of DB pages allocated = 212
Number of DB pages used = 200
Number of DB pages free = 12
Sweep interval = 20000
Forced Writes are ON
Transaction - oldest = 143
Transaction - oldest active = 144
Transaction - oldest snapshot = 144
Transaction - Next = 148
ODS = 13.0
Database not encrypted
Default Character set: NONE
SQL>
Es gibt auch einen korrekten Eintrag in der Systemtabelle
RDB$FILES:
Code: Alles auswählen
gerd@gerd-MS-7641:~$ isql -z
ISQL Version: LI-T4.0.0.1436 Firebird 4.0 Beta 1
Use CONNECT or CREATE DATABASE to specify a database
SQL> CONNECT adressen.fdb USER SYSDBA PASSWORD 'geheimes_passwort';
Database: adressen.fdb, User: SYSDBA
SQL> SET LIST ON;
SQL> SELECT * FROM RDB$FILES;
RDB$FILE_NAME /home/gerd/Firebird/Datenbanken/adressen.shd
RDB$FILE_SEQUENCE 0
RDB$FILE_START 0
RDB$FILE_LENGTH 0
RDB$FILE_FLAGS 1
RDB$SHADOW_NUMBER 1
SQL>
Vielleicht ist es ja vom hierfür verwendeten DB-System (v3.0.3 / 4.0) abhängig. (?)
UPDATE: 01.03.2020, 16:07 Uhr:
Es wird u. a. geschrieben:
"Ein shadow ist eine exakte Seite-für-Seite-Kopie einer Datenbank. Sobald ein Shadow erstellt wurde, spiegeln sich alle Änderungen in der Datenbank sofort im Shadow wider. Wenn die primäre Datenbankdatei aus irgendeinem Grund nicht verfügbar ist, wechselt das DBMS auf den Shadow."
Das mit den sofortigen Änderungen, die sich im Shadow widerspiegeln, wurde von mir geprüft und kann ich bestätigen. OK
Wie bitte könnte ich unter lokalen Bedingungen das checken?
Wenn die primäre Datenbankdatei aus irgendeinem Grund nicht verfügbar ist, wechselt das DBMS auf den Shadow.
Das muss ja auch klappen - möchte ich bei der Gelegenheit gerne mit der v4.0 Beta 1 einmal überprüft haben.
Viele Grüße
Gerd