|
| 1 | + |
| 2 | +Installation steps for Firebird for NH TeamCity: |
| 3 | + |
| 4 | +1. Download Firebird (Firebird-3.0.2.32703_0_x64): https://www.firebirdsql.org/en/server-packages/; |
| 5 | +2. Run the installer AS ADMINISTRATOR... Use the default firebird password when prompted: masterkey. |
| 6 | +3. Leave other settings with their defaults. |
| 7 | +4. The setup should install Firebird on the machine; |
| 8 | +5. Go into Firebird folder (c:\program files\firebird\) and create a folder named Data; |
| 9 | +6. Go in Firebird installation directory and open databases.conf. |
| 10 | +7. Add in "Live Databases" section: |
| 11 | +nhibernate = D:\nhibernate.fdb |
| 12 | + Firebird is particularly sensitive to disk performances, and D: is supposed to be local to the |
| 13 | + Teamcity host, thus this choice. Content of this drive may be lost. But the TestDatabaseSetup will |
| 14 | + instruct Firebird to recreate the database. It is put on the root because Firebird will not create |
| 15 | + the folder, and the TestDatabaseSetup should not try to do that because it is used by other hosts |
| 16 | + which may not want to do anything on D:. |
| 17 | +8. Open firebird.conf. |
| 18 | +9. Ensure AuthClient, AuthServer and UserManager are set to Srp only: |
| 19 | +AuthServer = Srp |
| 20 | +AuthClient = Srp |
| 21 | +UserManager = Srp |
| 22 | +10. Ensure WireCrypt is set to Enabled. |
| 23 | +WireCrypt = Enabled |
| 24 | +11. Restart Firebird service. |
| 25 | + |
| 26 | +For manual testing, take care of not creating it with inadequate acl on the file. This may happen |
| 27 | +if you use ISQL with a connection string causing it to create it in embedded mode, without actually |
| 28 | +using the server. Prefixing your path with "localhost:" should avoid that. |
| 29 | + |
| 30 | +For tests performances, and since it is just an expandable test database, better disable forced writes. |
| 31 | +Since those tests drop/create schema constantly, they are quite heavy on writes and this single setting |
| 32 | +can have a six fold impact on their duration. For changing it, do: |
| 33 | +a. Stop Firebird service. |
| 34 | +b. From Firebird installation folder, run: |
| 35 | +gfix -w async nhibernate -user SYSDBA |
| 36 | + (Change "nhibernate" to your own alias or path as appropriate for your setup) |
| 37 | +c. Restart Firebird service. |
| 38 | +Note that the TestDatabaseSetup will drop and recreate the database when run, with forced writes disabled. |
0 commit comments