Whenever there is inconsistency with the password, the following error message is logged in the SDE error log after trying to start the ArcSDE service:
init_DB DB_instance_open_as_dba: -93
DBMS error code: 18456
Microsoft OLE DB Provider for SQL Server: Login failed for user ‘sde’
If you find out the root cause of this error message, you come to know the fact that service fails to start because the password that the SDE service was created and the password set for the SDE login in the database are different. If you want to change the password within the database without affecting the ArcSDE service, then make sure that ArcSDE service is stopped. After changing the password, restart the service.
The reboot of server causes the problem because you have changed the password at the time, when the ArcSDE service is running. But now the problem has occurred, it is better to go for possible solution rather than regretting about the action responsible for the error message.
Now in order to fix this error, try out the following options, so that the service can be started again.
Delete and re-create the service:
a. Delete the service: Â The ArcSDE commands must be used for the deletion of the service. The ArcSDE command reference can be accessed by navigating to Start > Programs > ArcGIS > ArcSDE > Command references, and then select Administrative Commands > Alphabetical Listing of Commands > sdeservice
b. Reset the SDE user password to ensure accuracy
c. Re-create the service
Change password in database for SDE user:
If you know the SDE password that the esri_sde service was initially using, update the SDE password for the SDE user in the database accordingly to eliminate the inconsistency in the password.
Change the SDE user password for the service:
If the SDE user password has been changed within the database and the SDE password needs to be changed for the service, then use the following command:
sdeservice -o modify
-r <registry_keyword> -v <new_value>
-p <SDE_DBA_Password> [-i <service>]
In the above command, when you set the value in -p <SDE_DBA_PASSWORD>, you must know the SDE password for the service. The SDE password will be the old registry keyword that needs to be set for SDE_DBA_PASSWORD. Once you are done with the above steps, you can easily resolve the error.
SQL Server recovery with SQL recovery tools is the need of the hour when corruption strikes to MDF databases. Kernel for SQL is best solution for MDF database repair for MS SQL Server 2000 and 2005.