È normale uso LocalDb in produzione?

So che l’utilizzo di LocalDb è molto buona e facile per sviluppo, mi chiedo se è una buona idea usarlo in produzione quando ho l’hosting di siti web su server IIS?

Mi sto chiedendo perché mi chiedo se non hai nessun tipo di problemi di velocita ‘ in produzione.

Questa è la mia stringa di connessione che si desidera utilizzare nella produzione

Server=(LocalDB)\\v11.0;Integrated Security=SSPI;MultipleActiveResultSets=true;
AttachDBFilename=|DataDirectory|ProjectDB.mdf;
  • Perché? Perché? Perché? Utilizzare una corretta istanza di SQL Server Express e fare tutti gli utenti di connettersi alla stessa, istanza comune di database. Nella modalità corrente, non ogni connessione fuoco una propria copia del database, e sarà eliminata una volta che si è fatto? Non importa che il contesto di sicurezza non funziona correttamente qui, per quanto ne so, e che si sarà probabilmente violando il CONTRATTO. Anche perché sulla terra si sta utilizzando MultipleActiveResultSets? È che scopo?
  • No, LocalDB non è inteso per la produzione.
  • perché ho avuto There is already an open DataReader associated with this Command which must be closed first errore.
  • Questo comportamento può essere modificato stackoverflow.com/questions/14153509/…
  • Di alcuni dati da Microsoft sul perché LocalDB non può essere utilizzato in produzione? Sarebbe utile
InformationsquelleAutor sed | 2012-11-26

 

3 Replies
  1. 42

    LocalDB è assolutamente supportato nella produzione. Dal punto di vista del rendimento è identico a SQL Server Express, in quanto condividono lo stesso motore di database.

    Ora, per un sito che esegue in piena IIS mi consiglia di utilizzare un servizio basato su istanza di SQL Server Express. Dal momento che IIS è in esecuzione come servizio, è meglio avere un servizio ospitato in un database. Ciò significa che si dovrebbe non di utilizzare User Instance=true o AttachDbFileName=... nella stringa di connessione.

    Se volete saperne di più, vi consiglio questo post sull’uso di LocalDB da IIS completo, parte 1 e il suo follow-up, parte 2. Essi andare in ulteriori dettagli.

    • non sono sicuro di come farlo funzionare nel Server 2012, il file applicationHost.config non mostra asp.net 4.5 aggiungere la voce nome dopo l’installazione asp.net.
    • LocalDB non è assolutamente supportato nella produzione.
    • Cosa ti fa dire @HosseinShahdoost? Microsoft ha invertire il suo sostegno alla produzione? Un collegamento può essere utile, se è così.
    • Questa è la prima frase di Microsoft Documentazione “di Microsoft SQL Server 2016 Express LocalDB è una modalità di esecuzione di SQL Server Express mirati per gli sviluppatori di programmi”, msdn.microsoft.com/en-us/library/hh510202.aspx Anche questo blog Msdn ha un sacco di roba utile da leggere. blogs.msdn.com/b/jerrynixon/archive/2012/02/26/…
    • Non vedo come questa è un’affermazione che LocalDB è “assolutamente non supportato in produzione”. È stato creato da sviluppatori di rendere la vita più facile, che includono il database incorporato scenari (ma non in-process). Si utilizza con IIS è un tratto che ho sottolineato nella mia risposta.
    • Non vedo come questa è un’affermazione che LocalDb è “assolutamente supportato nella produzione”, come bene. Non eseguire l’applicazione principale del db. Prendendo una buona occhiata all’interfaccia si può vedere che È stato creato per aiutare gli sviluppatori di eseguire la loro integrazione e test di sistema più facile.
    • LocalDB è l’ .net alternativa per SqlLite ( senza le autorizzazioni necessarie), quindi penso che lo stesso bilancio è adeguato per LocalDB : stackoverflow.com/questions/913067/… considerando il caso d’uso. Si può usare in produzione, ma di prendere in considerazione solo per il traffico a bassa roba

  2. 12

    “Normale” – difficile da dire, che è un termine relativo.

    Consentito – sì. Qui è una citazione da Microsoft SQL Server Express blog in cui LocalDB è stato introdotto:

    “…se la semplicità (e i limiti) di LocalDB soddisfare le esigenze del target ambiente di applicazione, gli sviluppatori può continuare ad usarlo in produzione, come LocalDB rende un buon database incorporato troppo.


    AGGIORNAMENTO (Marzo 2019)

    Dopo l’utilizzo di LocalDB in decine di siti di produzione per due anni solidi ora, io confermare che funziona. Tuttavia, se avete bisogno di una connessione multi-utente (“condivisa” in LocalDB terminologia) DB, è possibile utilizzare SQL Server Express, invece. LocalDB non è un buon multi-utente. Ci sono MOLTI ostacoli da superare. Non ho tempo ora, ma se vuoi maggiori dettagli su tali ostacoli e rispettive soluzioni alternative, lasciare un commento, e mi documento qui o in un’altra domanda.

    • Potrebbe descrivere brevemente gli ostacoli che si esegue in?
    • Se avete solo bisogno di accesso utente singolo, si dovrebbe andare bene. Isssues sorgono quando si desidera che il DB multi-utente, in quanto il processo di hosting l’istanza è spento quando l’istanza creatore si disconnette, e può essere ri-iniziato dal creatore. Quindi hai bisogno di un “always on” utente come il creatore. Se è possibile creare un account di servizio dedicato, farlo. Non era un’opzione per me. Ho scelto “Sistema Locale”, ma che presenta anche altre questioni, alcune delle quali sono documentato qui: stackoverflow.com/a/50491641/1633949. È inoltre necessario rappresentare che conto quando si inizialmente l’installazione di istanza di protezione.
    • C’erano altri ostacoli, come bene, fatemi sapere se quelli di sopra non dissuadere voi, e vi faccio notare anche gli altri.
    • Grazie, queste sono state le mie preoccupazioni pure.
  3. 6

    Io non la penso così,

    Anche se LocalDb e SQLExpress potrebbe essere lo stesso di prestazioni, LocalDb Processo si spegne da solo se non hanno alcuna richiesta per un po’. E di solito la richiesta successiva richiede troppo tempo per la risposta (o, ancora peggio, va in timeout.

    Ti consiglierei di installare la propria istanza di sql EXPRESS.

Lascia un commento