Configurare Sql Server Express per rete locale

 

Dopo avere installato SQL Server Express sul server e averlo configurato è necessario impostare i servizi affinché possano essere utilizzati in rete dai diversi client. Verificare sul server che la connessione sia attiva e funzionante (Nome server = “Nome del computer\SQLEXPRESS”)

Creare un utente di Login

Se l’installazione è stata fatta impostando ”Authentication mode” su “Windows Authentication” o comunque per differenziare i diversi utenti e i relativi permessi occorre creare uno più login.

Entrare in SQL Server Management Studio e connettersi al database, aprire la voce Security (o Protezione), tasto destro su Login (o Account di Access) , quindi New Login (o Nuovo account di accesso).

clip_image001

Nella schermata che si apre fare attenzione ai seguenti punti

  • inserire il nome dell’utente
  • impostare autenticazione di SQL Server inserendo una password , meglio se complessa
  • configurare le policy di accesso ai vari database
  • abilitare l’accesso da remoto

Connessione da remoto

Per tentare di connettersi da remoto monitorando eventuali problemi , installare SQL Server Management Studio anche su un client e provare ad accedere.

Quando si tenta di connettersi a un’istanza di Microsoft SQL Server da un computer remoto, si potrebbe ricevere un messaggio di errore. Questo problema può verificarsi anche quando si utilizza qualsiasi programma per la connessione a SQL Server.
Ad esempio, viene visualizzato il seguente messaggio di errore quando si utilizza l’utilità SQLCMD per connettersi a SQL Server:

Sqlcmd: Errore: Client nativo di Microsoft SQL: si è verificato un errore nel tentativo di stabilire una connessione al server. Quando ci si connette a SQL Server 2005, questo errore può essere causato dal fatto che, in base alle impostazioni predefinite di SQL Server non consente le connessioni remote.

Questo problema può verificarsi quando SQL Server non è configurato per accettare le connessioni remote. Per impostazione predefinita, SQL Server Express Edition e SQL Server Developer Edition non consentono le connessioni remote.

Per configurare SQL Server per consentire le connessioni remote, è necessario completare la procedura seguente:

· Abilitare le connessioni remote sull’istanza di SQL Server che si desidera connettersi da un computer remoto.

· Attivare il servizio SQL Server Browser.

· Configurare il firewall per consentire il traffico di rete correlato a SQL Server e per il servizio SQL Server Browser.

Di seguito viene descritto come completare ciascuna di queste operazioni accedendo al Configuration Manager di SQL Server.

clip_image003

1) Abilitare le connessioni remote sull’istanza di SQL Server che si desidera connettersi da un computer remoto

È necessario attivare le connessioni remote per ogni istanza di SQL Server che si desidera connettersi da un computer remoto. Per effettuare questa operazione, attenersi alla seguente procedura:

  • Fare clic su Start, scegliere programmi, quindi Microsoft SQL Server, Configuration Tools ( o Strumenti) di configurazione e quindi fare clic su SQL Server Configuration Manager ( o Configurazione superficie di attacco di SQL Server).
  • Una volta aperta la schermata di configurazione, espandere il nodo SQL Server Network Configuration (o Configurazione superficie di attacco per servizi e connessioni).
  • Selezionare Protocols for <nome istanza> ( o protocolli per ..).
  • Tasto destro su TCP/IP , quindi Abilita. Veniamo avvisati che il servizio deve essere riavviato.
  • Selezionare SQL Server Services (o Servizi di SQL Server)
  • Tasto destro su SQL Server <nome istanza> (o SQL Server ..). Riavviare il servizio ( Interrompi, Avvia )

2) Attivare il servizio SQL Server Browser

  • Seguendo la stessa procedura precedente entrare nella funzione di Configurazione.
  • Selezionare SQL Server Services.
  • Tasto destro su SQL Server Browser , selezionare Properties.
  • Nella schermata di configurazione che si apre selezionare la tab Services , selezionare Automatico coma Modalità di avvio e confermare
  • Tasto destro su SQL Server Browser , selezionare Start.

In alternativa il servizio SQL Server può essere attivato anche da pannello di controllo.

3) Configurare il firewall per consentire il traffico di rete correlato a SQL Server e per il servizio SQL Server Browser

Se si utilizza un firewall nel computer in cui è in esecuzione SQL Server, vengono bloccate le connessioni esterne a SQL Server, a meno che SQL Server e il servizio SQL Server Browser in grado di comunicare attraverso il firewall. È necessario creare un’eccezione per ogni istanza di SQL Server che si desidera accettare le connessioni remote e un’eccezione per il servizio SQL Server Browser.

In buona sostanza occorre consentire l’esecuzione di sqlservr.exe, sqlbrowser.exe e della porta 1434. Ma qualora non sia sufficiente si può pensare a permettere tutte le esecuzioni in rete locale consentendo tutte le operazioni sul profilo di dominio e sul profilo privato

Le operazioni per creare le eccezioni dipendono dal firewall usato. Di seguito un esempio con Windows Firewall.

Per consentire tutte le attività su rete locale

  • accedere a alla configurazione di Windows firewall
  • Selezionare Proprietà Windows Firewall
  • Consentire l’esecuzione in entrata sul profilo di dominio e sul profilo privato

clip_image005

Se invece si vuole creare delle regole per abilitare solo l’esecuzione dei servizi di SQL Server :

1. In Windows Firewall, fare clic sulla scheda eccezioni e quindi fare clic su Aggiungi programma.

2. Nella finestra Aggiungi finestra di un programma, fare clic su Sfoglia.

3. Selezionare il programma di cui si vuole consentire l’esecuzione, fare clic su Apri e quindi fare clic su OK.

4. Ripetere l’operazione per le altre eccezioni.

clip_image007

clip_image009

Problemi di connessione

Se persistono problemi di connessione a SQL Server anche dopo avere configurato correttamente si provi ad eseguire SQL Server Management Studio e tentare la connessione.

Se è possibile raggiungere il servizio di rete , quando si tenta il login si dovrebbe vedere il nome del server nella tab dei server di rete. Qualora non fosse presente è probabile che la configurazione non sia corretta.

clip_image010

Se di digita il nome del server del server e si tenta comunque la connessione, verrà ritornato un errore che potrà dare qualche indicazione in più.

error: 18456 – Login Failed

Il database viene raggiunto ma probabilmente :

Abbiamo digitato male la password

L’utente non ha i diritti di accedere al database. Riverificare la configurazione del login

error: 28 – Server doesn’t support requested protocol
Veniamo informati che il protocollo non è stato abilitato pertanto occorre “Abilitare le connessioni remote sull’istanza di SQL Server che si desidera connettersi da un computer remoto” come visto al punto 1 della configurazione
error: 26 – Error Locating Server/Instance Specified

Veniamo informati che il server indicato non è stato trovato. E’ probabile che il punto 2 o il punto 3 della configurazione non siano stati eseguiti correttamente tuttavia provare anche

  • Verificare che il nome sia stato digitato correttamente (è banale ma il più delle volte capita questo)
  • Provare a digitare nome del server e istanza separati da sia una sola barra sia da due (provare sia Server\Instance che Server\\Instance)
  • Provare a fare il ping del server dal client per verificare che sia raggiungibile
  • Verificare che il servizio SQL Browser sia attivo sul server (punto 2 della configurazione)
  • Verificare che se il firewall sul server è attivo, le eccezioni siano configurate correttamente (punto 3 della configurazione) e nel caso provare a consentire tutte le operazioni sulla rete locale o disattivare il firewall.
Annunci

Interrogazione Database di Gea.Net Pro

La funzione di Interrogazione Database permette di memorizzare le query più utilizzate per poterle richiamare con un semplice click. Tutti gli elenchi riportati in questa funzione hanno la possibilità di essere stampati o esportati nei formati Excel, Html, Xml.

Trasportare su altro computer un database SqlServer (mdf)

 

Può capitare di dovere trasportare un file Sql Server (.MDF) su un altro computer per fare manutenzione ma SqlServer non permette di fare una copia se il file è in uso e se prima non viene scollegato. Di seguito vedremo come scollegare il database utilizzando SQL Server Management Studio in SQL Server :

1. Inizio SQL Server Management Studio.

2. Nella finestra di dialogo Connetti al Server , fare clic su valori appropriati nell’elenco tipo di Server , nella casella Nome Server e nell’elenco autenticazione.

3. Fare clic su Connetti.

4. In Esplora oggetti, espandere il database.

5. Tasto destro sul database, fare clic su Proprietà.

6. In Seleziona Pagina posizionarsi su File e annotarsi i percorsi e i nomi dei file del database. Di solito sono due, uno con estensione mdf e l’altro con estensione ldf.

clip_image002

7. Tasto destro sul database di backup, fare clic su attività e quindi fare clic su Scollega

clip_image004

8. Selezionare Interrompi Connessione del database che si deve scollegare.

9. Copiare i files i cui nomi sono stati annotati al punto 6.

10. Riconnettere il database con Tasto Destro del mouse su Database , quindi Collega

clip_image006

11. Nella finestra Collega database , premere Aggiungi , quindi selezionare il file Mdf annotato al punto 6.

clip_image008

Pianificare una copia di Backup con SQL Server Management Studio

 

Per pianificare un’operazione di backup del database utilizzando SQL Server Management Studio in SQL Server, attenersi alla seguente procedura:

1. Inizio SQL Server Management Studio.

2. Nella finestra di dialogo Connetti al Server , fare clic su valori appropriati nell’elenco tipo di Server , nella casella Nome Server e nell’elenco autenticazione . .

3. Fare clic su Connetti.

4. In Esplora oggetti, espandere il database.

5. Tasto destro sul database di backup, fare clic su attività e quindi fare clic su Backup.

6. Nella finestra di dialogo Backup Database – DatabaseName digitare il nome del set di backup nella casella nome e quindi fare clic su Aggiungi nella sezione destinazione. Con versioni più recenti di SSMS queste dati saranno già proposti in automatico ed eventualmente si possono modificare.

7. Nella finestra di dialogo Seleziona destinazione di Backup digitare un percorso e un nome file nella casella destinazioni su disco e quindi fare clic su OK.

8. Nell’elenco Script scegliere Script azione nel processo.

clip_image002

9. Nella finestra di dialogo Nuovo processo scegliere passaggi in Selezionare una pagina e quindi fare clic su Modifica per modificare i parametri del processo.
Nota Nella finestra di dialogo Proprietà passaggio processo – 1 è possibile visualizzare il comando di backup.

10. In Selezionare una pagina, fare clic su pianificazioni e quindi fare clic su Nuovo.

11. Nella finestra di dialogo Nuova pianificazione processo digitare il nome nella casella nome , specificare la pianificazione del processo e quindi fare clic su OK. clip_image004
Nota Se si desidera configurare avvisi o notifiche, è possibile scegliere gli avvisi o notifiche in Selezionare una pagina.

12. Scegliere OK due volte.
Viene visualizzato il seguente messaggio:

Backup del database ‘DatabaseName‘ completata.

A questo punto la copia è stata fatta ed è possibile verificare sul percorso scelto la presenza del file di backup.

Sql Server Agent e manutenzione

Per verificare il processo di backup, espandere Agente SQL Server e quindi processi. In tal caso, è necessario eseguire il servizio Agente SQL Server.

Verificare che l’ Agente SQL Server sia avviato ed in caso contrario avviarlo con tasto Destro , quindi “Avvia

Attenzione ! Occorre verificare saltuariamente che l’Agente SQL Server sia avviato. Molte delle cause di mancato backup è da ricondurre proprio al fatto che l’agente non sia stato riattivato ad esempio dopo un riavvio del server.

clip_image005

E’ buona norma anche verificare che il file di backup sia stato generato correttamente . possibilmente anche procedendo a ripristino subito dopo avere fatto la copia.

Cloud computing con Gea.Net

 

Con il termine inglese cloud computing si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio offerto da un provider al cliente, di gestire dati grazie all’utilizzo di risorse hardware/software distribuite e virtualizzate in rete.

Nel caso di computer collegati in rete locale (LAN) o geografica (WAN) la possibilità di gestire dati può essere estesa ad altri computer e dispositivi remoti dislocati sulla rete stessa.

Il sistema del cloud computing prevede tre fattori distinti:

  • Fornitore di servizi (cloud provider)– Offre servizi (server virtuali, storage, applicazioni complete) generalmente secondo un modello "pay-per-use";
  • Cliente amministratore – Sceglie e configura i servizi offerti dal fornitore, generalmente offrendo un valore aggiunto come ad esempio applicazioni software;
  • Cliente finale – Utilizza i servizi opportunamente configurati dal cliente amministratore.

In determinati casi d’uso il cliente amministratore e il cliente finale possono coincidere. Ad esempio un cliente può utilizzare un servizio di storage per effettuare il backup dei propri dati, in questo caso il cliente finale provvede a configurare e utilizzare il servizio.

Sfruttando la tecnologia del cloud computing gli utenti collegati ad un cloud provider possono svolgere tutte queste mansioni, attraverso Gea.Net, Gea.Net web o Gea.Net App. In particolare Gea.Net nella versione Pro può essere configurato per essere sfruttato come client per accedere a database condiviso.

File Hosting (via Dropbox)

Diversi servizi basati su cloud computing offrono file hosting a prezzi spesso piuttosto contenuti ed alcuni di questi possono essere sfruttati anche con lo scopo di tenere un database condiviso.

Dropbox (https://www.dropbox.com/) è un ottimo servizio per la sincronizzazione centralizzata di file e documenti tra computer, notebook e smartphone.

Installando il client di Dropbox sul proprio PC, viene creata una cartella il cui contenuto verrà sincronizzato automaticamente con il server centrale.

Con Gea.Net possiamo sfruttare il servizio di Dropbox per depositare il database (Azienda.mdb) su questa cartella condivisa.

Aspetti positivi :

  • La velocità di esecuzione di Gea.Net è la stessa che avremmo con una installazione client/server infatti il database risiede a tutti gli effetti su disco locale.
  • Dropbox è un servizio gratutito fino a 2GB, spazio più che sufficiente per un piccolo database. Il servizio è economico anche se si desidera avere maggiore spazio.
  • Il servizio ci garantisce anche un servizio di replica dei dati. In un certo senso lo possiamo vedere come un piccolo servizio di copia dei dati ma deve essere attentamente valutato se per le proprie questo sia sufficiente a sostituire i backup.
  • Anche in caso di connessione non disponibile, l’operatività è garantita perchè si opera su disco locale o di rete.

Aspetti negativi :

  • Impossibilità di operare da diverse sedi contemporaneamente. Questo proprio perchè il riallineamento non è immediato e se due utenti hanno aperto il database contemporaneamente ne viene creata una copia sul server comportando inevitabilmente la perdita di tutto il lavoro svolto da un operatore.
  • Occorre dare il tempo al servizio di riallineare i dati. Questo comporta che all’accensione e allo spegnimento del PC bisogna prestare attenzione che il servizio abbia terminato il riallineamento.

Consigliato a :

piccole aziende con installazione monoutente o piccola rete locale aziendale, i cui utenti hanno esigenze di operare da sedi remote in orari notturni o festivi.

SaaS (Software as a Service)

Consiste nell’utilizzo di programmi in remoto, spesso attraverso un server web.

Tipicamente possiamo racchiudere in questo gruppo tutti gli applicativi web (come Gea.Net Web) ma anche soluzioni software client-server che si avvalgono di servizi web.

SaaS è un alternativa a DaaS (trattata di seguito) per alcuni aspetti più sicura e per altri più economica. Il database non è direttamente accessibile dall’esterno ma vi si può accedere solo attraverso un software installato sul server remoto (web service).

Gea.Net viene installato sul client con una particolare connectionstring che fa riferimento al servizio web Gea.Net DbService che viene installato sul server assieme al database.

Aspetti positivi :

  • I costi dell’hosting sono generalmente piuttosto contenuti. Aruba (www.aruba.it/) permette questa configurazione per poche decine di Euro all’anno.

Aspetti negativi :

  • La velocità è molto inferiore ad una soluzione client-server
  • I servizi di copia dei dati non sempre sono garantiti da contratto
  • E’ impossibile l’uso delle transazioni se non previsto dal servizio stesso

Consigliato a piccole aziende con sedi diverse.

DaaS (Data as a Service)

Con questo servizio vengono messi a disposizione via web solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se fossero residenti su un disco locale.

Quasi tutti gli applicativi client-server, possono sfruttare l’accesso ad un database installato presso una sede remota cambiando il sistema di puntamento alla base dati.

Gea.Net non fa eccezione ed è sufficiente cambiare la connectionstring nelle impostazioni.

Il servizio DaaS è proposto da diversi provider, tra cui anche Microsoft attraverso Windows Azure.

Per ragioni di sicurezza e velocità è consigliato l’uso di servizi DaaS solo su linee VPN.

Aspetti positivi :

  • Sicurezza attraverso VPN.
  • Solitamente nel pacchetto del servizio sono compresi copia dei dati e altri servizi.

Aspetti negativi :

  • La velocità è inferiore ad una soluzione client-server anche se si utilizza un collegamento VPN
  • I costi comprensivi di VPN dedicata solitamente superano i 500 Euro/mese.

Consigliato a PMI con due o più sedi operative.

HaaS (Hardware as a Service)

Con questo servizio l’utente invia dati ad un computer che vengono elaborati da computer messi a disposizione e restituiti all’utente iniziale.

E’ un servizio disponibile già dai primi anni 2000 con servizi come Microsoft Terminal Services o Citrix. Più concretamente è il ritorno ad ambienti centralizzati dove il client può essere un qualsiasi terminale in grado di collegarsi al sistema di elaborazione centrale.

Possiamo vedere in questo gruppo anche strutture più complesse come PaaS (Platform as a Service) o IaaS (Infrastructure as a Service).

In questo caso Gea.Net deve essere installato solamente sul server.

Aspetti positivi :

  • Sul ogni client deve essere installato solamente il software che consente il collegamento ai servizi presenti sul server.
  • Maggiore scalabilità. All’aumentare delle esigenze elaborative è sufficiente richiedere maggiori servizi al provider che provvederà ad aumentare la disponibilità di infrastruttura hardware.
  • I provider garantiscono una serie di servizi come la manutenzione dell’hardware, gli aggiornamenti dei software, i servizi di backup, ecc.
  • Nessuna competenza tecnica in azienda perchè tutta la gestione del servizio informatico viene gestita dal provider.
  • Definizione in anticipo dei costi relativi all’infrastruttura informatica.

Aspetti negativi :

  • L’unico lato negativo è rappresentato dai costi. Difficilmente si potrà spuntare un accordo inferiore al migliaio di Euro al mese anche per una soluzione molto semplice.

Consigliato a grandi aziende con elevato numero di postazioni di lavoro o che vogliono definire preventivamente e in maniera puntuale i costi informatici.