Overview
The Database Update Wizard utility is failing when upgrading from Everest 5 with the following error:
"Cannot open database "<databasename>" requested by the login. The login failed."
The SQL error log will at the same time show the Logon error:
Login failed for user 'sa'. Reason: Failed to open the explicitly specified database.
Error: 18456, Severity: 14, State: 38.
Solution
If you encounter the above error despite using the correct password, try to open the security tab of the SQL Server database files directory by right-clicking and selecting Properties.
The default location is <InstallDir>\Icode\Everest\Data\<company_code>
; for instance, the database file for the Sample database has company code EVEREST_SAMPLE and is located at the highlighted path:
Trying to open the Security tab of the directory containing the database file for the database mentioned in the error message should result in a Windows Security dialog prompt saying:
"The permissions on <folder> are incorrectly ordered, which may cause some entries to be ineffective.
Press OK to continue and sort the permissions correctly, or Cancel to reset the permissions."
Windows Server introduced a new inheritance model in which directly applied access control entries (ACEs) have precedence over inherited ACEs. Windows implements this precedence by placing directly applied ACEs ahead of inherited ACEs in a discretionary access control list (DACL). Earlier versions of Microsoft Windows NT did not distinguish between inherited and directly applied ACEs but newer versions of Windows Server do, so migrated filesystems may result in this issue being identified by the operating system hence the Windows Security dialog prompt.
To resolve this filesystem permissions issue, it is necessary to get the operating system to reapply permissions back to all the affected files and folders. This is a common scenario during migration as you are copying files across file systems with potentially different access control implementations.
Clicking OK on the Windows Security dialog will allow Windows to re-arrange and re-apply the folder permissions and successfully complete the database update process.
Testing
The Database Update Wizard should complete successfully thereby allowing the successful upgrade from Everest 5 to 6 and later.
Priyanka Bhotika
Comments