Configurare un database SQL Server per lavorare con Jazz Team Server.
In questa procedura si suppone che siano stati soddisfatti i seguenti prerequisiti:
- SQL Server deve essere stato installato
- Il servizio SQL Server deve essere avviato
- Sono stati installati i driver JDBC di SQL Server.
Per ulteriori informazioni, fare riferimento a http://msdn2.microsoft.com/en-us/data/aa937724.aspx
- Il protocollo TCP deve essere abilitato per SQL
Server
- L'utente che crea la tabella di database deve avere una delle seguenti autorizzazioni:
- Deve essere un membro nel ruolo server fisso sysadmin o deve essere il proprietario del database (dbo)
Attenzione: il nome di log predefinito definito nel file JazzInstallDir/server/teamserver.properties per un database SQL Server è jazzDBuser e la password predefinita è jazzDBpswd. Questi
valori vengono utilizzati nella procedura seguente per la creazione di un database. È possibile sostituirli con il nome utente e la
password per il database.
Configurazione di un database
questa sezione descrive la procedura di configurazione del database
SQL Server utilizzando lo strumento della riga comandi sqlcmd, fornito con l'installazione di SQL Server. È inoltre
possibile utilizzare uno strumento visivo, come SQL Server Studio Management, disponibile anche per la versione
Express di SQL Server Studio Management
Express. Per ulteriori informazioni, consultare la documentazione di SQL Server o un DBA (database administrator) di SQL Server.
Per configurare un database
SQL Server utilizzando lo strumento di comandi sqlcmd:
- Creare un database Jazz Team Server.
Dallo strumento della riga comandi, immettere:
CREATE DATABASE jazz
GO
- Creare un utente e una password e modificare la proprietà del database
Jazz Team Server.
Dallo strumento della riga comandi, immettere:
CREATE LOGIN jazzDBuser
WITH PASSWORD = 'jazzDBpswd';
USE jazz;
exec sp_changedbowner 'jazzDBuser'
GO
- Modificare l'ordinamento del database Jazz Team Server.
Dallo strumento della riga comandi, immettere:
ALTER DATABASE jazz COLLATE SQL_Latin1_General_CP437_CS_AS
GO
Configurazione del server
Attenzione: per impostazione predefinita, il file teamserver.properties nella directory JazzInstallDir/server non è impostato per la connessione a un database SQL Server. Tutte le impostazioni predefinite, insieme ad impostazioni specifiche di SQL Server si trovano nel file teamserver.sqlserver.properties nella stessa directory.
Per configurare il server:
- Rinominare i seguenti file:
- Rinominare il file JazzInstallDir/server/conf/jazz/teamserver.properties in teamserver.OtherDBProvider.properties
- Rinominare il file teamserver.sqlserver.properties in teamserver.properties
Suggerimento: la ridenominazione del file teamserver.properties originale consente di ripristinare il file a una versione precedente. Per impostazione predefinita, il fornitore DB è derby.
- Modificare il file di configurazione server se è stato utilizzato un nome utente, una password o un nome database differente, se SQL Server è stato installato su una macchina diversa da quella su cui è presente Jazz Team Server o se si utilizza una porta diversa da quella predefinita. Aprire il file teamserver.properties nella directory JazzInstallDir/server/conf/jazz e modificare le informazioni riportate di seguito in modo che corrispondano alla propria configurazione.
com.ibm.team.repository.db.vendor = SQLSERVER
com.ibm.team.repository.db.jdbc.location=//SQL SERVER MACHINE IP:SQL SERVER TCIP PORT;databaseName=JAZZ DATABASE NAME;user=JAZZ USERNAME;password={password}
com.ibm.team.repository.db.jdbc.password=JAZZ LOGIN PASSWORD
Importante: non modificare il testo password={password} nella proprietà com.ibm.team.repository.db.jdbc.location.
La password utente deve essere specificata nella proprietà com.ibm.team.repository.db.jdbc.password.
Importante: solo per Windows. Verificare che la sicurezza server non sia mista. È possibile verificare questa opzione controllando la sicurezza del server. La sicurezza dovrebbe essere impostata su "Modalità di autenticazione SQL Server e Windows".
per specificare il percorso del file jar per JDBC:
- Nella stessa directory degli script server (JazzInstallDir/server),
creare una directory denominata sqlserver.
- Individuare il file JAR del driver JDBC SQL Server denominato sqljdbc.jar.
Il percorso potrebbe variare a seconda del percorso in cui sono stati installati i driver, come descritto nella sezione dei prerequisiti. Copiare il file nella directory sqlserver appena creata.
- Specificare il percorso del file JAR JDBC completando la seguente attività:
- Impostare la variabile d'ambiente SQLSERVER_ABSPATH in modo che faccia riferimento alla directory che contiene il file JAR. Se il percorso contiene degli spazi, racchiuderli tra virgolette.
Suggerimento: se si utilizza WebSphere Application Server, configurare una proprietà denominata SQLSERVER_JDBC e impostarla sul percorso assoluto della directory (non l'URL) che contiene i driver JDBC di SQL Server, ad esempio, se il file sqljdbc.jar si trova in JazzInstallDir/server/sqlserver.
Per ulteriori informazioni, fare riferimento alle istruzioni di configurazione di WebSphere Application Server.
Prendere nota del percorso del file in modo da utilizzarlo successivamente.
Risoluzione dei problemi
Se il comando repotools non viene eseguito correttamente, consultare il file di log denominato repotools_createTables.log,
presente nella directory JazzInstallDir/server.
Verificare inoltre che si verifichino
le seguenti condizioni:
- SQL Server è configurato per consentire le connessioni utilizzando il protocollo TCP/IP. Se richiesto, riavviare il servizio
SQL.
- Il nome host e la porta della macchina SQL Server
sono riflessi nel file teamserver.properties.
- Il nome di login, la password e il nome del database sono riportati nel file teamserver.properties.
- Un firewall non impedisce l'accesso a SQL Server.
Utilizzare un comando telnet per eseguire il telnet alla macchina utilizzando il nome host e la porta dal file teamserver.properties.
- L'utente creato dispone delle autorizzazioni adeguate nel database
Jazz Team Server.
Nota: Il codice
database per
Jazz Team Server è stato
concepito come generico e standard per essere eseguito su più piattaforme database; tuttavia, esistono delle differenze tra i
fornitori database enterprise nella sintassi, nelle strategie di ottimizzazione e nella semantica di blocco. Il server è stato
verificato su SQL Server utilizzando una combinazione di simulazioni e test automatizzati di normali carichi di lavoro ed
esecuzione del test di sollecitazioni. La simulazione di normali carichi di lavoro ha mostrato prestazioni accettabili. In alcuni
casi, sono state osservate condizioni di stallo del database di istanze nei test di simultaneità automatizzati; tuttavia, tali
problemi non sono stati riprodotti in modo congruente su differenti componenti hardware del server.
Il server è concepito
per soddisfare numerose richieste simultanee. In casi eccezionali, potrebbero verificarsi condizioni di stallo nel database del
repository, poiché oggetti simili o uguali vengono aggiornati contemporaneamente in transazioni associate alle richieste. Questi sono eventi rari ma normali. Il sistema è concepito per difendersi da tali situazioni e l'integrità dei dati viene preservata;
non vi è alcuna perdita di dati.
Talvolta, attività quali l'esecuzione del motore di build registrano condizioni di stallo. Generalmente,
la condizione viene rilevata e l'attività viene rieseguita.
La condizione di stallo potrebbe impedire la riuscita della build. In casi molto rari, potrebbe essere un'azione utente
(ad esempio l'utilizzo di elementi di lavoro o di un codice sorgente) a venire interrotta in modo anomalo per risolvere una condizione
di stallo. In tal caso, l'azione utente non riesce e viene visualizzato un errore con dettagli relativi alla suddetta condizione. L'utente
può ritentare l'azione.
Tutte le condizioni di stallo incontrate vengono registrate sul server per fornire informazioni
sugli eventi verificatisi nel momento in cui è avvenuta la condizione di stallo. La voce di log ha un testo simile al seguente: com.ibm.team.repository.common.RetryableDatabaseException:
Errore di serializzazione.
Se il proprio sistema incontra delle condizioni di stallo, consultare il log degli
errori, disponibile all'indirizzo https://servername:9443/jazz/service/com.ibm.team.repository.common.internal.IFeedService?category=SystemLog.
Se
si contrano eccezioni frequenti di condizioni di stallo, contattare l'assistenza del prodotto o consultare i forum su jazz.net
per ottenere le informazioni, gli aggiornamenti o le tecniche di mitigazione più recenti.