2014-12-20 31 views
11

Per MSDN Docs: http://msdn.microsoft.com/en-us/library/hh510202.aspxSQL LocalDb automatyczny Uruchomienie instancji Awaria gdy wywołana z Visual Studio 2013, ale nie SQL Server Management Studio

LocalDB obsługuje dwa rodzaje wystąpień: automatyczna instancji i nazwanych wystąpień.

Podejrzewam, że ma to coś wspólnego z moim problemem, więc zastanawiam się, czy ktoś wie, jak coś takiego zostanie automatycznie utworzone. Jeśli mogę zacytować z dokumentów, "Jedna automatyczna instancja LocalDB istnieje dla każdej wersji LocalDB zainstalowanej na komputerze użytkownika."

Oto kopia odpowiedniej sekcji w powyższym linku:

Automatyczne przypadki z LocalDB są jawne. Są tworzone i zarządzane automatycznie dla użytkownika i mogą być używane przez dowolną aplikację. Jedno automatyczne wystąpienie LocalDB istnieje dla każdej wersji LocalDB zainstalowanej na komputerze użytkownika. Automatyczne instancje LocalDB zapewniają płynne zarządzanie instancjami. Nie ma potrzeby tworzenia instancji ; to po prostu działa. Pozwala to na łatwą instalację aplikacji i migrację do innego komputera.

Różne wersje LocalDB mają różne instancji konwencji nazewnictwa:

SQL 2012 LocalDB = V11.0 
SQL 2014 LocalDB = ProjectsV12 
  • Widziałem innych.

Dopóki łączącego aplikacji punkty ciąg połączenia właściwej instancji, wszystko jest dobrze:

(localdb)\V11.0 
(localdb)\ProjectsV12 

Gdy próbuję połączyć się z SQL Server Management Studio albo instancji (localdb) \ V11. 0 lub (localdb) \ ProjectsV12, I CAN, "zatrzymany" serwer "autostarts".

Jeśli ustawię instancję serwera SQL w VS2013 na instancję (localdb) \ V11.0 lub (localdb) \ ProjectsV12, NIE POTRAFIM, serwer "zatrzymany" nie powiedzie się, aby rozpocząć. Próbuje uruchomić, ale kończy się niepowodzeniem.

Oto komunikat o błędzie znaleziony w wystąpieniu error.log wskazujący, dlaczego uruchomienie instancji nie powiodło się.

014-12-19 15:12:14.09 Logon  Error: 17828, Severity: 20, State: 3. 
2014-12-19 15:12:14.09 Logon  The prelogin packet used to open the connection is structurally invalid; the connection has been closed. Please contact the vendor of the client library. [CLIENT: <named pipe>] 

może znalazłem trop tutaj:

Na jednym z moich komputerach, na których działa Automatyczna Instancing, wyjścia polecenia sqllocaldb następujący:

C:\>sqllocaldb info v11.0 
Name:    v11.0 
Version:   11.0.3000.0 
Shared name: 
Owner:    AM\Z617699 
Auto-create:  Yes   <-- Yes? - and I have no idea how this is set. 
State:    Stopped 
Last start time: 12/18/2014 5:18:46 PM 
Instance pipe name: 

Na jednym z moich innych maszyn gdzie automatyczne uruchamianie NIE działa, polecenie sqllocaldb wyprowadza następujące:

C:\>sqllocaldb info v11.0 
Name:    v11.0 
Version:   11.0.3000.0 
Shared name: 
Owner:    AM\Z617699 
Auto-create:  No    <-- No? - and I have no idea how this is set. 
State:    Stopped 
Last start time: 12/18/2014 5:18:46 PM 
Instance pipe name: 

Spędziłem wiele dni próbując znaleźć odpowiedź na to pytanie.Oto link do postu na forum MSDN, który opisuje wszystkie nieudane kroki podjęte w celu rozwiązania tego problemu: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/83ad45d5-15c3-4463-bc0c-6c4899bf947e/localdb-visual-studio-2013-will-not-automatically-start-the-sql-2014-localdb-projectsv12-instance?forum=sqlexpress

Obejście polega na ręcznym uruchomieniu instancji ręcznie przed uruchomieniem VS2013. Po prostu próbuję rozwiązać ten problem, aby uzyskać obraz "Automatycznej instancji" dla wszystkich naszych programistów.

Mam nadzieję, że po prostu wiesz, że odpowiada. :-)

Dzięki, Dave

+0

Automatyczna nazwa wystąpienia 2014 to MSSQLLocalDB (ProjectsV12 jest tworzony przez SSDT) ​​ – ErikEJ

+0

Mam zainstalowany lokalny db 2012, mam również 2 wystąpienia, 1 o nazwie "v11.0" inny 1 o nazwie "projekty", późniejszy jest Auto -Create = Tak, nie mam pojęcia o tym, ale po prostu zostaw to i działa dobrze. – Cheung

Odpowiedz

26

Miałem ten sam problem. postanowiłem go poprzez usunięcie i ponowne wystąpienie z linii poleceń:

  1. Otwórz wiersz poleceń
  2. Usuń sesję wpisując: sqllocaldb usuwać „V11.0”
  3. Odtworzenie instancję: sqllocaldb tworzyć "v11.0"

Nowa instancja umożliwia automatyczne tworzenie i rozwiązuje problem.

Roztwór zaczerpnięte z: http://answers.flyppdevportal.com/categories/sqlserver/sqlexpress.aspx?ID=8bcb5f1e-0240-4df3-8a5e-7e3e73e1c45b

+1

Działa również w środowisku Visual Studio 2015. W Menedżerze zdarzeń napisano, że "Wersja macierzysta LocalDB jest nieprawidłowa: MSSQL12E.LOCALDB" i robiłem to z MSSQLLocalDB-instancją itp. Stworzyło to nową wersję i wypisuje egzemplarz LocalDB "MSSQLLocalDB" utworzony w wersji 13.0.1100.286. Nice –

+1

Fajnie, rozwiązałem dla mnie ból głowy. Najlepiej zacząć od informacji sqllocaldb, aby uzyskać poprawną nazwę. W moim przypadku jest to MSSQLLocalDb. – blearyeye

+0

@blearyeye Szukałem polecenia list i ukończyłem przegląd. Dzięki. – Merritt

0

miałem ten sam problem na VS2015 i SQL2016 problem moja stacja dev to laptop, badacz projektu myślę wykorzystuje połączenie tcpip, natomiast SQLeplorer lokalnego pliku lub tak.

Udało się po tym, jak upewnić się, że SQL używana karta sieciowa, a że miał kabel podłączony (tak SQL mógł serwera żądanie przez TCP przy użyciu tego IP), które to kulisy przez WiFi (domyślnie?)

0

Miałem ten sam problem. Jednym z problemów może być starsza zainstalowana wersja tego produktu. Spróbuj usunąć instancje bazy danych, które znajdują się w następującym folderze:

C: \ Windows \ System32 \ config \ systemprofile \ AppData \ Local \ Microsoft \ Microsoft SQL Server Local DB \ Przypadki \ VeeamEndPoint

Później to działa dla mnie !!!