Oprava LocalDB instance databáze eWay-CRM® Desktop
Popis
Při spuštění eWay-CRM®, pokud je k připojení k databázi použita technologie LocalDB, se objeví následující chyba:
*** EXCEPTION *** Hash: 11819C934E56127E51EE3D1C0DCB8CA1 Message: System.Data.SqlClient.SqlException: Při vytváření připojení k serveru SQL došlo k chybě související se sítí nebo s instancí. Server nebyl nalezen nebo nebyl přístupný. Ověřte, zda je název instance správný a zda je server SQL nakofigurován, aby povoloval vzdálená připojení. (provider: Zprostředkovatel pojmenovaných kanálů, error: 40 - Nelze otevřít připojení k serveru SQL Server.) v System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) v System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) v System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject) v System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) v System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) v System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) v System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) v System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) v System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) v System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) v System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) v System.Data.SqlClient.SqlConnection.Open() v eWay.Core.MSSQLDataInterface.MSSQLItemStore.get_Connection() v eWay.Core.MSSQLDataInterface.MSSQLItemStore.CreateStoreAndCheckConnection(String connectionString, Boolean useMasterDatabase) v eWay.Core.Data.DataStorage.CheckConnectionToServer() v eWay.Core.Data.DataStorage.TryConnectionToServer(Int32 maxRetryCount) v eWay.Core.Office.Addins.OutlookAddin.Connect.<>c__DisplayClass4c.<CheckSqlService>b__4b(IProgressReporter reporter) v eWay.Core.GUI.Dialogs.BackgroundWorkerProgressDialog.OnDoWork(ProgressDoWorkAction doWork) v eWay.Core.GUI.Dialogs.BackgroundWorkerProgressDialog.<>c__DisplayClass4.<.ctor>b__0(Object workerSender, DoWorkEventArgs workerArgs) v System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e) v eWay.Core.Threading.PlainBackgroundWorker.OnDoWork(DoWorkEventArgs e) v eWay.Core.Threading.BackgroundWorker.OnDoWork(DoWorkEventArgs e) v System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument) TargetSite: Void OnError(System.Data.SqlClient.SqlException, Boolean) Source: .Net SqlClient Data Provider StackTrace: v System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) v System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) v System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject) v System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) v System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) v System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) v System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) v System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) v System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) v System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) v System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) v System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) v System.Data.SqlClient.SqlConnection.Open() v eWay.Core.MSSQLDataInterface.MSSQLItemStore.get_Connection() v eWay.Core.MSSQLDataInterface.MSSQLItemStore.CreateStoreAndCheckConnection(String connectionString, Boolean useMasterDatabase) v eWay.Core.Data.DataStorage.CheckConnectionToServer() v eWay.Core.Data.DataStorage.TryConnectionToServer(Int32 maxRetryCount) v eWay.Core.Office.Addins.OutlookAddin.Connect.<>c__DisplayClass4c.<CheckSqlService>b__4b(IProgressReporter reporter) v eWay.Core.GUI.Dialogs.BackgroundWorkerProgressDialog.OnDoWork(ProgressDoWorkAction doWork) v eWay.Core.GUI.Dialogs.BackgroundWorkerProgressDialog.<>c__DisplayClass4.<.ctor>b__0(Object workerSender, DoWorkEventArgs workerArgs) v System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e) v eWay.Core.Threading.PlainBackgroundWorker.OnDoWork(DoWorkEventArgs e) v eWay.Core.Threading.BackgroundWorker.OnDoWork(DoWorkEventArgs e) v System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
Verze
Všechny verze eWay-CRM®
Obtížnost řešení
Vysoká
Postup řešení
K instanci (localdb)\EWAYSQL se nedá připojit, takže jí zkusíme vytvořit znovu.
Nejprve je potřeba zavřít Outlook.
Pokud instance běží vypněte jí spuštěním následujícího příkazu v příkazové řádce Windows:
sqllocaldb stop EWAYSQL
Poté instanci smažte pomocí následujícího příkazu:
sqllocaldb delete EWAYSQL
Poté, co je instance smazána, je potřeba vytvořit novou, a to prostřednictvím tohoto příkazu:
sqllocaldb create EWAYSQL
Nově vytvořenou instanci spustíme:
sqllocaldb start EWAYSQL
Pokud instance nenastartuje s chybou "SQL Server process failed to start" postupujte pomocí návodu zde.
Pokud SQL LocalDB ani tak nefunguje, pokračujte instalací SQL Express.
Pro verze 4.X a starší: Následně je nutné znovu připojit databázi uživatele pomocí SQL Management Studio nebo prostřednictvím nástroje QueryExPlus, který je v instalační složce eWay-CRM®. Pro připojení použijte následující příkaz (text "user1_dbid" se bude lišit podle individuálních případů):
EXEC sp_attach_db @dbname = N'eWay_user1_dbid', @filename1 = N'C:\Users\User1\eWay_user1_dbid.mdf', @filename2 = N'C:\Users\User1\eWay_user1_dbid_log.ldf';
Nakonec spusťte Outlook.