Come connettersi all'istanza locale di SQL Server 2008 Express


222

Ho appena installato SQL Server 2008 Express sul mio computer Vista SP1. In precedenza avevo 2005 qui e l'ho usato bene con il vecchio SQL Server Management Studio Express. Sono stato in grado di connettermi senza problemi alla mia istanza PC-NAME \ SQLEXPRESS (no, PC-NAME non è il nome del mio computer ;-).

Ho disinstallato 2005 e SQL Server Management Studio Express. Ho quindi installato SQL Server 2008 Express sul mio computer e ho scelto di farlo installare SQL Server Management Studio Basic.

Ora, quando provo a connettermi a PC-NAME \ SQLEXPRESS (con l'autenticazione di Windows, come ho sempre fatto), ricevo il seguente messaggio:

Impossibile connettersi a PC-NAME \ SQLEXPRESS. Si è verificato un errore relativo alla rete o specifico dell'istanza durante la creazione di una connessione a SQL Server. Il server non è stato trovato o non era accessibile. Verificare che il nome dell'istanza sia corretto e che SQL Server sia configurato per consentire connessioni remote. (provider: SQL Network Interfaces, errore: 26 - Errore nella localizzazione del server / istanza specificata) (Microsoft SQL Server, errore: -1) Per assistenza, fare clic su: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL + Server & evtSrc = MSSQLServer & EvtID = -1 & LinkId = 20476

Quando ho installato SQL Server 2008, ho usato SQLEXPRESS come nome dell'istanza locale. Per quanto ne so, tramite Gestione configurazione SQL Server, SQL Server è configurato per consentire connessioni remote.

Quando sono andato al link di aiuto menzionato, la pagina di aiuto suggerisce quanto segue:

  • Assicurarsi che il servizio SQL Server Browser sia avviato sul server.
  • Utilizzare lo strumento di configurazione della superficie di SQL Server per abilitare SQL Server ad accettare connessioni remote. Per ulteriori informazioni sullo strumento di configurazione della superficie di SQL Server, vedere Configurazione della superficie per servizi e connessioni.

Bene, per quanto posso dire, non c'è nessun servizio SQL Server Browser sul mio sistema (cercavo MMC per uno, non riuscivo a trovarne uno).

E lo strumento di configurazione della superficie di SQL Server non esiste in SQL Server 2008. Quindi un buon lavoro lì con la documentazione di aiuto, Microsoft ;-).

Sono in perdita per cosa fare adesso. Avevo un sacco di lavoro che speravo di fare oggi dopo l'aggiornamento al 2008 (la persona con cui sto lavorando l'ha fatto funzionare senza problemi e mi ha detto che sarebbe stato facile - è anche molto meglio con le cose del database che io aM). Qualcuno ha idea di cosa potrebbe essere sbagliato? Lo apprezzerei davvero. Se non riesco a farlo funzionare entro poche ore, torno a SQL Server 2005 (se funzionerà, gah ...).

Modifica: ho provato a disattivare Windows Firewall e questo non ha aiutato. Inoltre, ho notato che non ho una directory "Dati" nella mia struttura di directory di installazione di SQL Server 2008 - avrei potuto impostare qualcosa di sbagliato quando l'ho installato?

Risposte:


328

Controlla il ServerName che hai fornito. Deve corrispondere al nome mostrato di seguito nella casella di testo UserName e tale nome deve essere seguito da \SQLEXPRESS:

Finestra di dialogo Connetti


30
Questa domanda ha 2 anni, ma questo è ciò che mi ha aiutato. Non sapevo di aver bisogno del nome del computer prima del\SQLEXPRESS
RoLYroLLs,

6
Capisco che questa domanda è piuttosto vecchia ma l'ho trovata dopo molte frustrazioni. Sento che il messaggio di errore dovrebbe dare questo suggerimento invece di fornire informazioni inutili :(
mob1lejunkie

Grazie! Il nome di dominio era ciò di cui avevo veramente bisogno.
Rubens Mariuzzo,

non riesco a credere che la casella a discesa sia prepopolata con solo SQLEXPRESS che non funziona
Nicolas78,

Grazie, assicurati di notare che è stato creato da "Nome del tuo computer" \ SQLEXPRESS
windsound

106

Avviare il servizio SQL Server locale

  • Avvia Gestione configurazione SQL: fare clic su Start -> Microsoft SQL Server 2008 R2 -> Gestione configurazione SQL Server
  • Avvia servizi SQL: imposta i servizi SQL Server (SQLEXPRESS) e SQL Server Browser sulla modalità di avvio automatico. Fare clic con il tasto destro su ciascun servizio -> Proprietà -> Vai alla scheda Servizio

Ciò garantirà il riavvio se si riavvia il computer. Verificare che lo stato sia "In esecuzione" per entrambi i servizi.

Avvio del servizio SQL Server 2008 locale

Accedi e autenticati con il tuo SQL Server locale

  • Ora apri SQL Server Management Studio e fai clic su "Connetti a Esplora oggetti" e seleziona Nome server:

[Il tuo nome PC] \ SQLEXPRESS

Esempio: 8540P-KL \ SQLEXPRESS o (localhost) \ SQLEXPRESS

  • Per trovare il nome del PC: fai clic con il pulsante destro del mouse su Risorse del computer -> Proprietà -> scheda Nome computer

  • Alternativa: accedi usando l'autenticazione di Windows: usando il nome utente [Your Domain] / [Your User Name]

Impostazioni dell'account utente di SQL Server 2008

Configura account utente

  • Crea un nuovo account di accesso: In SQL Mgmt Studio -> Espandi il tuo server locale -> Sicurezza -> Fai clic destro su Login -> Nuovo accesso

  • Impostare le impostazioni della password sul nuovo account utente: deselezionare Applica criterio password, scadenza password e l'utente deve modificare pw (poiché questo è locale) Database predefinito -> Il tuo database

  • Concedi ruoli al nuovo account utente: Pagina di mappatura utente -> Mappa sul tuo db e concedi Pagina di stato ruolo db_owner -> Concedi l'autorizzazione a connettersi e abilita l'accesso

DB locale Impostazioni utente SQL Server 2008

Configura autorizzazioni / impostazioni di accesso per l'utente

  • Abilita tutte le modalità di autenticazione: fai clic con il pulsante destro del mouse sul server locale -> Proprietà -> scheda Sicurezza -> Abilita SQL Server e la modalità di autenticazione di Windows
  • Abilita TCP / IP: Apri Gestione configurazione SQL Server -> Configurazione di rete SQL Server -> Protocolli per SQLEXPRESS -> Abilita TCP / IP
  • Riavvia servizio SQL Server: sarà necessario riavviare SQL Server (SQLEXPRESS) dopo aver abilitato TCP / IP

Autorizzazioni server SQL Server 2008

File delle proprietà del database per Spring Project

  • database.url = jdbc: jtds: sqlserver: // [
    nome computer PC locale ]; istanza = SQLEXPRESS; DatabaseName = [nome db];

  • database.username = [il tuo nome utente] database.password = [la tua password]

  • database.driverClassName = net.sourceforge.jtds.jdbc.Driver

Se si desidera visualizzare schermate più grandi e una migliore formattazione della risposta con maggiori dettagli, consultare l'articolo di blog di seguito: Impostazione di un'istanza locale del post sul blog di SQL Server 2008:


3
Grazie. Ciò ha aiutato i gruppi
Alan Waage,

1
Grazie mille! Questo è davvero utile anche per la versione 2014 !!
Powernit,

Come indica questa risposta, se non vedi SQL Server 2014 Configuration Manager(qualunque anno) quando cerchi "Configuration Manager" all'avvio ... allora probabilmente NON hai installato un'istanza valida di SQL Server.
Don Cheadle,

40

Ho usato (LocalDB) \ MSSQLLocalDB come nome del server, sono stato quindi in grado di vedere tutti i database locali.


Ha funzionato bene con VS 2015 su Windows 10 64 bit. Grazie
Pirate X,

ha funzionato con SSMS 2014. Ma sospetto che ciò dipenda dall'esecuzione di un'app Web .NET che avrebbe installato / creato questo server locale.
Don Cheadle,

Questo è il LocalDB che viene installato con Visual Studio, non con SQL Server Express. Questa risposta è utile per le persone che la stanno effettivamente cercando, ma la distinzione è importante se è necessario accedere a SQL Express o creare un database su SQL Express per utilizzare le funzionalità che LocalDB non supporta come Ricerca testo completo
IronSean

Grazie per il chiarimento IronSean
petrosmm,

34

Ahah, oh ragazzo, l'ho capito. In qualche modo, in qualche modo, non ho installato il Motore di database quando ho installato SQL Server 2008. Non ho idea di come mi sia perso, ma è quello che è successo.


come posso verificare se il motore di database è installato? non sarebbe installato automaticamente?
Eran Otzap,

Nel mio caso, ho dimenticato di installare Connettività Strumenti client , ma è solo un'altra casella di controllo nella pagina "Funzionalità" durante l'installazione. Comunque, mi hai indicato la giusta direzione. Grazie.
Radek Stromský,

Nel mio caso, durante l'installazione del server sql non ho ricevuto il motore del database. Durante l'installazione ho 3 opzioni 1.Instane Fetaure (senza nessuna casella di controllo al di sotto) 2. Funzionalità Shred (con 2 cehckbox) 3. Funzionalità ridistribuite. Fammi sapere perché ho ricevuto Database Engine Serivce.
Kavitha,

ho avuto anche questo problema. la pagina di download è in qualche modo criptica. assicurarsi di scaricare il programma server effettivo anziché l'interfaccia di gestione o una delle altre scelte che non ha componenti server.
Anthony,

22

So che questa domanda è vecchia, ma nel caso in cui aiuti qualcuno a assicurarsi che SQL Server Browser sia in esecuzione nel MSC Servizi. Ho installato SQL Server Express 2008 R2 e il servizio browser SQL Server è stato impostato su Disabilitato.

  1. Start-> Run-> Services.msc
  2. Trova "SQL Server Browser" -> Tasto destro-> Proprietà
  3. Imposta Tipo di avvio su Automatico-> Fai clic su Applica
  4. Riprova la connessione.

questo era per i miei problemi con la connessione. Sono stato in grado di indossarlo su Management Studio, ma dal server delle app era invisibile :) grazie!
Slav

Questo è stato per me, tranne per il fatto che non è stato avviato l'agente SQL Server: lo avevo spento perché consumava troppe risorse quando non lo stavo usando.
JTech,

15

Ho appena risolto un problema relativo a questo che può aiutare altre persone.

Inizialmente, quando carico fino MSSMSE aveva il server come PC_NAME\SQLEXPRESSe quando ho provato a collegarlo mi ha dato Error: 26 - Error Locating Server/Instance Specified, così sono andato in SQL Server Configuration Manager per controllare se i miei SQL Server Browsere SQL Serverservizi correvano e impostate su automatico, solo per scoprire che invece di dire SQL Server (SQLEXPRESS)si dice SQL Server(MSSQLSERVER).

Ho quindi provato a connettermi PC-NAME\MSSQLSERVERe questa volta ho ottenuto su SQL Network Interfaces, error: 25 - Connection string is not valid) (MicrosoftSQL Server, Error: 87) The parameter is incorrectGoogle questo errore e ho scoperto che qualcuno aveva suggerito che invece di usare PC-NAME\MSSQLSERVERsolo PC-NAMEcome Nome server nell'interfaccia di connessione del server, e questo sembra funzionare.

C'è un link qui http://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/ che spiega che MSSQLSERVER è l'istanza predefinita e alla quale può essere collegato da usando solo il tuo nome host.

Penso che questo potrebbe essere sorto perché SQL Server 2008 è stato installato ad un certo punto in passato.


Hai ragione: "usa PC-NAME (inserisci qui il nome del tuo PC) come Nome server nell'interfaccia di connessione del server". Funziona.
Sviluppatore Marius Žilėnas,

9

In Configuration Manager e Protocolli e configurazione di rete per la tua istanza è abilitato TCP / IP? Quello potrebbe essere il problema.


1
devi anche abilitare l'account "sa" e assegnargli una password perché disabilitata per impostazione predefinita. inoltre è probabilmente necessario abilitare l'autenticazione SQL perché "nt auth only" per impostazione predefinita.
Djangofan,

8
var.connectionstring = "server=localhost; database=dbname; integrated security=yes"

o

var.connectionstring = "server=localhost; database=dbname; login=yourlogin; pwd=yourpass"

6

Per me, sono stato in grado di farlo funzionare solo usando "." nel campo del nome del server; stava perdendo tempo provando diverse combinazioni di nome utente e nome server. Si noti che durante l'installazione del server (ovvero questo file: SQLEXPR_x64_ENU.exe) ho verificato l'istanza predefinita che imposta automaticamente il nome su MSSQLSERVER; le risposte più votate sopra potrebbero essere utilizzate al meglio per le istanze del server separate (ovvero quando sono necessarie più di 1)

entrambi questi video mi hanno aiutato:


3

Una delle prime cose da verificare è l'avvio di SQL Server (MSSQLSERVER). Puoi andare alla Console dei servizi (services.msc) e cercare SQL Server (MSSQLSERVER) per vedere che è stato avviato. In caso contrario, avviare il servizio.

Puoi anche farlo tramite un prompt dei comandi elevato digitando net start mssqlserver.


1

Per me è stato un problema con il firewall di Windows. Consenti connessioni in entrata. La porta di apertura non ha funzionato ma ha permesso i programmi.

collegamento

Link2

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.