Konfigurowanie bazy danych SQL Server do pracy z produktem Jazz Team Server.
W procedurze tej założono spełnienie następujących wymagań wstępnych:
- Baza danych SQL Server jest zainstalowana
- Usługa SQL Server jest uruchomiona
- Sterowniki interfejsu JDBC bazy danych SQL Server są zainstalowane. Więcej informacji można znaleźć w sekcji http://msdn2.microsoft.com/en-us/data/aa937724.aspx
- Protokół TCP jest włączony dla bazy danych SQL
Server
- Użytkownik tworzący tabelę bazy danych musi posiadać jedno z poniższych uprawnień:
- Ma przypisaną stałą rolę serwera sysadmin lub prawo własności bazy danych (dbo)
Zapamiętaj: Domyślna nazwa użytkownika zdefiniowana w pliku JazzInstallDir/server/teamserver.properties
dla bazy danych SQL Server brzmi jazzDBuser, a domyślnym hasłem
jest jazzDBpswd. Te wartości są używane w kolejnych krokach
przy tworzeniu bazy danych. Można je zastąpić nazwą użytkownika i hasłem własnej
bazy danych.
Konfigurowanie bazy danych
W tej sekcji opisano sposób konfiguracji
bazy danych SQL Server przy użyciu narzędzia wiersza komend sqlcmd
udostępnionego wraz z instalacją bazy danych SQL Server. Można także skorzystać z narzędzia
wizualnego, takiego jak SQL Server Studio Management, które jest dostępne także dla
wersji Express jako produkt
SQL Server Studio Management Express.
Aby uzyskać więcej informacji, należy skonsultować się z administratorem bazy danych SQL Server (DBA) lub sprawdzić w dokumentacji bazy danych SQL Server.
Aby skonfigurować bazę danych SQL Server, korzystając z narzędzia komend sqlcmd:
- Utwórz bazę danych produktu Jazz Team Server.
Z poziomu narzędzia wiersza komend wpisz:
CREATE DATABASE jazz
GO
- Utwórz użytkownika i hasło oraz zmień prawo własności bazy danych produktu Jazz Team Server.
Z poziomu narzędzia wiersza komend wpisz:
CREATE LOGIN jazzDBuser
WITH PASSWORD = 'jazzDBpswd';
USE jazz;
exec sp_changedbowner 'jazzDBuser'
GO
- Zmień scalenie bazy danych produktuJazz Team Server.
Z poziomu narzędzia wiersza komend wpisz:
ALTER DATABASE jazz COLLATE SQL_Latin1_General_CP437_CS_AS
GO
Konfigurowanie serwera
Zapamiętaj: Domyślnie plik
teamserver.properties znajdujący się w katalogu JazzInstallDir/server/conf/jazz
nie jest skonfigurowany do nawiązywania połączenia z bazą danych SQL Server. Wszystkie ustawienia domyślne wraz z ustawieniami specyficznymi dla bazy danych SQL Server zawiera plik teamserver.sqlserver.properties znajdujący się w tym samym katalogu.
Aby skonfigurować serwer:
- Zmień nazwy następujących plików:
- Zmień nazwę pliku JazzInstallDir/server/conf/jazz/teamserver.properties
na teamserver.OtherDBProvider.properties
- Zmień nazwę pliku teamserver.sqlserver.properties
na teamserver.properties
Wskazówka: Zmiana nazwy oryginalnego pliku teamserver.properties umożliwia
odtworzenie pliku do poprzedniej, działającej wersji. Domyślnym dostawcą bazy danych jest derby.
- Jeśli użyta została inna nazwa użytkownika, hasło lub nazwa bazy danych, jeśli serwer bazy danych SQL server
został zainstalowany na maszynie innej niż ta, na której zainstalowano produkt Jazz Team Server lub
jeśli używany jest port inny niż domyślny, przeprowadź edycję pliku konfiguracyjnego serwera. Otwórz plikteamserver.properties znajdujący się w katalogu JazzInstallDir/server/conf/jazz
i zmień pokazane poniżej informacje, tak aby odpowiadały bieżącej konfiguracji.
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
Ważne: Nie zmieniaj tekstu password={password} we właściwości com.ibm.team.repository.db.jdbc.location.
Hasło użytkownika musi zostać określone we właściwościcom.ibm.team.repository.db.jdbc.password.
Ważne: Tylko dla systemu Windows®.
Upewnij się, że zabezpieczenia serwera są w trybie mieszanym. Można to zweryfikować, sprawdzając zabezpieczenia serwera. Powinna być ustawiona wartość SQL Server
and Windows Authentication Mode (Tryb uwierzytelniania bazy danych SQL Server i systemu Windows).
Aby określić położenie pliku jar dla interfejsu JDBC:
- W katalogu zawierającym skrypty serwera (JazzInstallDir/server)
utwórz katalog o nazwie sqlserver.
- Znajdź plik JAR sterownika interfejsu JDBC bazy danych SQL Server
o nazwie sqljdbc.jar.
Położenie może się różnić zależnie od miejsca instalacji sterowników, co było zaznaczone w sekcji dotyczącej wymagań wstępnych. Skopiuj plik do nowo utworzonego katalogu sqlserver.
- Określ położenie pliku JAR interfejsu JDBC, wykonując następujące czynności:
- Skonfiguruj zmienną środowiskową SQLSERVER_ABSPATH, tak aby wskazywała na katalog zawierający plik JAR. Jeśli ścieżka zawiera znaki spacji, należy całą ścieżkę ująć w znaki cudzysłowu.
Wskazówka: Korzystając z
WebSphere Application Server, skonfiguruj
właściwość o nazwie SQLSERVER_JDBC; następnie nadaj jej
wartość odpowiadającą bezwzględnej ścieżce do katalogu (nie adresowi URL) zawierającego sterowniki interfejsu JDBC bazy danych SQL Server, np.
jeśli plik sqljdbc.jar znajduje się w kataloguJazzInstallDir/server/sqlserver.
Więcej informacji zawierają instrukcje konfigurowania WebSphere Application
Server. Zanotuj ścieżkę do pliku na potrzeby późniejszego użycia w tych instrukcjach.
Rozwiązywanie problemów
Jeśli działanie komendy narzędzi repotools
zakończy się niepowodzeniem, należy sprawdzić plik dziennika o nazwie repotools_createTables.log znajdujący się w katalogu JazzInstallDir/server.
Należy również sprawdzić, czy:
- baza danych SQL Server jest skonfigurowana tak, aby umożliwiać łączenie przy użyciu protokołu TCP/IP. W razie potrzeby należy zrestartować usługę SQL,
- nazwa hosta serwera bazy danych SQL Server i port są prawidłowo podane w pliku teamserver.properties,
- nazwa użytkownika, hasło i nazwa bazy danych są prawidłowo podane w pliku teamserver.properties,
- firewall nie uniemożliwia dostępu do bazy danych SQL Server.
Należy użyć komendy telnet, aby połączyć się w ten sposób z maszyną, używając nazwy hosta i portu podanego w pliku teamserver.properties,
- utworzony użytkownik posiada prawidłowe uprawnienia w bazie danych produktu Jazz Team Server.
Uwaga: Kod bazy danych dla produktu
Jazz Team Server został
zaprojektowany jako ogólny i standardowy, aby można go było uruchomić na wielu platformach bazodanowych; różnice między dostawcami korporacyjnych baz danych występują jednak w składni, strategiach optymalizacji i semantyce blokowania. Serwer
został przetestowany na bazie danych SQL Server przy użyciu kombinacji testów zautomatyzowanych
i symulacji normalnego obciążenia oraz testów obciążeniowych. Symulacja
normalnego obciążenia pozwoliła zaobserwować akceptowalną wydajność. W pewnych instancjach
bazy danych zaobserwowano zakleszczenia przy zautomatyzowanych testach współbieżności; nie były one jednak spójnie powtarzalne na innych platformach sprzętowych.
Serwer jest zaprojektowany do obsługi dużej liczby równoczesnych żądań. W wyjątkowych przypadkach mogą wystąpić zakleszczenia w bazie danych repozytorium, gdy podobne lub równe obiekty będą aktualizowane współbieżnie w transakcjach powiązanych z tymi żądaniami. Są to
przypadki rzadkie, ale normalne. System zaprojektowano tak, aby bronił się przed tym, a integralność danych jest zachowywana; nie występuje utrata danych.
Czasami zakleszczenia są rejestrowane przez zadania, takie jak wykonywanie działań mechanizmu budowania. Ogólnie, warunek jest wykrywany i podejmowana jest ponowna próba wykonania zadania.
Zakleszczenie może spowodować niepowodzenie budowania. W bardzo rzadkich przypadkach może to być
czynność użytkownika, taka jak praca w elementami pracy lub kodem źródłowym, która jest przerywana
w celu rozstrzygnięcia zakleszczenia. W takim przypadku czynność użytkownika kończy się niepowodzeniem,
a użytkownikowi przedstawiany jest komunikat o błędzie wraz ze szczegółami dotyczącymi zakleszczenia. Użytkownik może wówczas ponowić czynność.
Wszystkie napotkane zakleszczenia są rejestrowane na serwerze, aby zapewnić informacje na temat okoliczności wystąpienia zakleszczeń. Tekst wpisu rejestru jest zbliżony do następującego: com.ibm.team.repository.common.RetryableDatabaseException:
Serialization failure.
Jeśli w systemie wystąpi zakleszczenie, należy zapoznać się z dziennikiem błędów dostępnym pod adresemhttps://nazwaserwera:9443/jazz/service/com.ibm.team.repository.common.internal.IFeedService?category=SystemLog.
Jeśli wyjątki zakleszczeń występują często, należy skontaktować się z obsługą techniczną produktu lub sprawdzić fora serwisu jazz.net w poszukiwaniu najnowszych informacji, aktualizacji lub technik łagodzenia skutków.