Einbindung Speed4Trade DB in SQLServer

Transcription

Einbindung Speed4Trade DB in SQLServer
Speed4Trade GmbH
Einbinden der S4T-Datenbank in SQL Server
Speed4Trade-Datenbank in einen
Microsoft ® SQL-Server einbinden
Standardmäßig wird als Datenbank für die Speed4Trade-Software eine, freie Version des Microsoft ®
SQL-Server (SQL-Server 2005 Express Edition) installiert. Die darin angelegte Datenbank "S4T" kann
in eine vorhandene SQL-Server 2005 (SQL-Server >= SP2) oder SQL Server 2008 Umgebung
übernommen werden.
Alle im Folgenden beschriebenen Tätigkeiten den SQL Server betreffend, sind für das Microsoft ®
SQL Server Management Studio 2005 beschrieben und gelten so sinngemäß auch für Microsoft ®
SQL Server 2008
Diese Anleitung ist zwar in erster Linie auf Nutzer eines vollwertigen SQL-Server zugeschnitten, kann
aber auch auf die Express-Versionen von Microsoft ® SQL Server 2005 und 2008 übertragen werden.
Hierbei müssen Sie das passende „Server Management Studio“ von der Microsoft ® Website getrennt
herunterladen und installieren.
Bitte beachten Sie unbedingt:
Der Datenbank-Dump der mit der Installations-CD ausgeliefert wird, wurde
aus einer SQL Server 2005 Express Edition SP2 (Version 9.00.3x.x) erstellt
und kann somit auch nur in eine Umgebung mit gleichem oder höherem
Service-Pack-Stand übernommen werden (> Version 9.00.3000.00).
Bitte lassen Sie die folgenden Tätigkeiten durch einen erfahrenen User, Ihren Systembetreuer oder
einen Dienstleister durchführen.
Besondere Aufmerksamkeit gilt Systemen die nicht alleine der Speed4Trade-Datenbank dienen,
sondern noch Datenbanken für andere Dienste zur Verfügung stellen. Prüfen Sie die folgenden
Schritte aufmerksam und stellen Sie sicher, dass Speed4Trade fremde Datenbanken nicht durch die
notwendigen Maßnahmen beeinträchtigt werden.
Notwendige Berechtigungen / Voraussetzungen für die Einrichtung und den Betrieb der
Speed4Trade-DB in einem SQL Server
Sie benötigen für die Einrichtung einer neuen Datenbank und der SQL-Benutzerkonten administrative
Berechtigungen
•
•
•
Anmeldung als SA
Windows-Administrator oder
SQL-Benutzer mit entsprechender SQL-Server-Rolle
Wir empfehlen die Anmeldung als Windows-Benutzer mit administrativen Rechten für das WindowsSystem und den SQL-Server.
Die Serverauthentifizierung muss auf „SQL Server- und Windows-Authentifizierungsmodus“ eingestellt
sein.
Für die Kommunikation der Speed4Trade-Server und der Clients mit der DB muss in der
Netzwerkkonfiguration das TCP/IP Protokoll aktiviert sein.
Bei aktivierter Firewall am SQL Server Rechner muss Kommunikation
• *BELIEBIG* nach 1433
• von 1433 nach *BELIEBIG*
erlaubt sein.
Stand: 06.03.2009
Verfasser: Dirk Jungermann
1
Speed4Trade GmbH
Einbinden der S4T-Datenbank in SQL Server
1. Datenbank „s4t“ anlegen
Starten Sie das Management Studio auf dem SQL-Server Rechner und verbinden Sie sich mit
dem lokalen Datenbankserver.
Klicken Sie mit rechts auf den obersten Knoten im Objektexplorer und wählen Sie „neue Abfrage“
Es öffnet sich ein leeres Tab. Kopieren Sie dort den folgenden Befehls-Block hinein:
USE [Master]
CREATE DATABASE [s4t] ON PRIMARY
( NAME = N's4t', FILENAME = N'<pfad_mdf>\s4t.mdf' , SIZE = 3072KB , FILEGROWTH = 10% )
LOG ON
( NAME = N's4t_log', FILENAME = N'<pfad_ldf>\s4t_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
COLLATE Latin1_General_CI_AS
GO
EXEC dbo.sp_dbcmptlevel @dbname=N's4t', @new_cmptlevel=90
GO
USE [s4t]
GO
IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER
DATABASE [s4t] MODIFY FILEGROUP [PRIMARY] DEFAULT
GO
Ersetzen Sie die Platzhalter <pfad_mdf> und <pfad_ldf> durch die vollständigen Pfade zum
gewünschten Speicherort der Datendatei (s4t.mdf) und Transaktionslog-Datei (s4t_log.ldf).
Beispiel:
USE [Master]
CREATE DATABASE [s4t] ON PRIMARY
( NAME = N's4t', FILENAME = N'D:\SQL-Server-Data\s4t.mdf' , SIZE = 3072KB , FILEGROWTH = 10% )
LOG ON
( NAME = N's4t_log', FILENAME = N'D:\SQL-Server-Data\s4t_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
COLLATE Latin1_General_CI_AS
GO
EXEC dbo.sp_dbcmptlevel @dbname=N's4t', @new_cmptlevel=90
GO
USE [s4t]
GO
IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER
DATABASE [s4t] MODIFY FILEGROUP [PRIMARY] DEFAULT
GO
Führen Sie die Abfrage über F5 oder die Ausführen Schaltfläche aus. Die Abfrage sollte ohne
Fehler abgeschlossen werden.
Um die Datenbank in der Liste der Datenbanken im Objektexplorer zu sehen, klicken Sie auf
Datenbanken bitte rechts und führen Sie den Befehl Aktualisieren aus.
Stand: 06.03.2009
Verfasser: Dirk Jungermann
2
Speed4Trade GmbH
Einbinden der S4T-Datenbank in SQL Server
2. Datenbankbenutzer „s4t_user“ anlegen
Öffnen Sie ein neues Abfrage-Tab oder löschen Sie den Inhalt aus Schritt 1. Kopieren Sie dort
den folgenden Befehls-Block hinein:
USE [master]
GO
CREATE LOGIN [s4t_user] WITH PASSWORD=N'<passwort>', DEFAULT_DATABASE=[s4t],
CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
USE [s4t]
GO
CREATE USER [s4t_user] FOR LOGIN [s4t_user]
GO
USE [s4t]
GO
EXEC sp_addrolemember N'db_datareader', N's4t_user'
GO
USE [s4t]
GO
EXEC sp_addrolemember N'db_datawriter', N's4t_user'
GO
USE [s4t]
GO
EXEC sp_addrolemember N'db_owner', N's4t_user'
GO
Ersetzen Sie die den Platzhalter <passwort> durch das Passwort, das Ihnen durch den
Speed4Trade-Support mitgeteilt wurde. Sie können das Passwort nicht selbst wählen. Die
Speed4Trade Programmteile können sich bei einem falschen Passwort nicht verbinden.
Führen Sie die Abfrage über F5 oder die Ausführen Schaltfläche aus. Die Abfrage sollte ohne
Fehler abgeschlossen werden.
3. Import der Datenbank-Sicherung (über Dump-File)
Öffnen Sie ein neues Abfrage-Tab oder löschen Sie den Inhalt aus Schritt 2. Kopieren Sie dort
den folgenden Befehls-Block hinein:
USE [Master]
RESTORE DATABASE [s4t] FROM DISK = N'<pfad>' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10
GO
Ersetzen Sie den Platzhalter <pfad> durch den vollständigen Pfad zur Dump-Datei. Für die
Grundinstallation finden Sie das Dump-File s4t_init.bak auf der Installations-CD im Ordner Tools.
Beispiel:
USE [Master]
RESTORE DATABASE [s4t] FROM DISK = N ' D:\temp\s4t_init.bak' WITH FILE = 1, NOUNLOAD, REPLACE,
STATS = 10
GO
Führen Sie die Abfrage über F5 oder die Ausführen Schaltfläche aus. Die Abfrage sollte ohne
Fehler abgeschlossen werden.
Stand: 06.03.2009
Verfasser: Dirk Jungermann
3
Speed4Trade GmbH
Einbinden der S4T-Datenbank in SQL Server
4. Updaten des DB-Benutzers
Haben Sie unter Schritt 3 einen Dump eingespielt, der nicht am selben System erstellt wurde,
müssen Sie zum Abschluss noch die SID des unter Schritt 2 angelegten Benutzer s4t_user mit
der SID des durch den Datenbank-Import importierten s4t_user updaten.
Öffnen Sie ein neues Abfrage-Tab oder löschen Sie den Inhalt aus Schritt 3. Kopieren Sie dort
den folgenden Befehls-Block hinein:
USE [s4t]
go
sp_change_users_login 'update_one', 's4t_user', 's4t_user'
go
Führen Sie die Abfrage über F5 oder die Ausführen Schaltfläche aus. Die Abfrage sollte ohne
Fehler abgeschlossen werden.
5. Umstellung der Connection Strings
Der Connection-String in den db.ini Dateien in den Speed4Trade Installationsordnern API, APP,
Email und Update-SRV, sowie bei allen Clients mit DB Anbindung muss nun an die geänderte
Datenbankanbindung angepasst werden.
Standardmäßig steht hier die Verbindung als
connection=Provider=SQLOLEDB.1;…… Data Source=<IP oder Rechnername> \SPEED4TRADE_DB
eingetragen.
Ändern Sie den String so ab, das es nur noch auf den Rechner / IP zeigt auf dem der SQL Server
läuft und lassen Sie den Instanznamen SPEED4TRADE_DB weg
Bei Updateserver und Clients müssen Sie in der DB-Sektion [DB] zusätzlich den Parameter
KeepConnectionString=1
eintragen.
Nähere Informationen zum Anpassen der Connection-Strings bzw. der db.ini Dateien entnehmen
Sie bitte dem Teil I des Speed4Trade-Handbuchs.
Stand: 06.03.2009
Verfasser: Dirk Jungermann
4