Dienstprogramme - Sybase
Dienstprogramme - Sybase
Dienstprogramme - Sybase
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Dienstprogramme</strong><br />
Adaptive Server® Enterprise<br />
12.5.1
DOKUMENT-ID: DC32959-01-1251-01<br />
LETZTE ÜBERARBEITUNG: August 2003<br />
Copyright © 1989-2004 <strong>Sybase</strong> Inc. Alle Rechte vorbehalten.<br />
Dieses Handbuch ist Bestandteil der Dokumentation der <strong>Sybase</strong>-Software und jeder weiteren Version, sofern in neueren Ausgaben<br />
oder technischen Hinweisen nicht anders angegeben. Änderungen sind ohne vorherige Ankündigung jederzeit möglich. Die hierin<br />
beschriebene Software unterliegt einer Lizenzvereinbarung und darf nur im Rahmen der darin enthaltenen Bestimmungen eingesetzt<br />
oder kopiert werden.<br />
Kunden in den USA und Kanada können weitere Dokumentationsteile anfordern. Wenden Sie sich dazu an die Abteilung Customer<br />
Fulfillment unter der Telefonnummer (800) 685-8225 und der Faxnummer (617) 229-9845.<br />
Kunden außerhalb der USA mit einer amerikanischen Lizenz können mit unserer Abteilung Customer Fulfillment über Telefax oder mit<br />
Telesales unter Tel. 0130-73 91 87 (Deutschland) Kontakt aufnehmen. Alle anderen internationalen Kunden sollten sich an ihre <strong>Sybase</strong>-<br />
Geschäftsstelle oder an ihren örtlichen Vertriebsbeauftragten wenden. Upgrades sind erst nach dem regulären Erscheinungsdatum der<br />
Softwareversion erhältlich. Kein Teil dieses Dokuments darf ohne vorherige schriftliche Genehmigung der <strong>Sybase</strong> Inc. in irgendeiner<br />
Form, sei es elektronisch, mechanisch, manuell, optisch oder auf sonstige Weise, fotokopiert, reproduziert oder in eine andere Sprache<br />
übersetzt werden.<br />
<strong>Sybase</strong>, das <strong>Sybase</strong>-Logo, AccelaTrade, ADA Workbench, Adaptable Windowing Environment, Adaptive Component Architecture,<br />
Adaptive Server, Adaptive Server Anywhere, Adaptive Server Enterprise, Adaptive Server Enterprise Monitor, Adaptive Server<br />
Enterprise Replication, Adaptive Server Everywhere, Adaptive Server IQ, Adaptive Warehouse, Anywhere Studio, Application<br />
Manager, AppModeler, APT Workbench, APT-Build, APT-Edit, APT-Execute, APT-FORMS, APT-Translator, APT-Library, AvantGo,<br />
AvantGo Application Alerts, AvantGo Mobile Delivery, AvantGo Mobile Document Viewer, AvantGo Mobile Inspection, AvantGo<br />
Mobile Marketing Channel, AvantGo Mobile Pharma, AvantGo Mobile Sales, AvantGo Pylon, AvantGo Pylon Application Server,<br />
AvantGo Pylon Conduit, AvantGo Pylon PIM Server, AvantGo Pylon Pro, Backup Server, BizTracker, ClearConnect, Client-Library,<br />
Client Services, Convoy/DM, Copernicus, Data Pipeline, Data Workbench, DataArchitect, Database Analyzer, DataExpress, DataServer,<br />
DataWindow, DB-Library, dbQueue, Developers Workbench, Direct Connect Anywhere, DirectConnect, Distribution Director, e-ADK,<br />
E-Anywhere, e-Biz Integrator, E-Whatever, EC Gateway, ECMAP, ECRTP, eFulfillment Accelerator, Embedded SQL, EMS, Enterprise<br />
Application Studio, Enterprise Client/Server, Enterprise Connect, Enterprise Data Studio, Enterprise Manager, Enterprise SQL Server<br />
Manager, Enterprise Work Architecture, Enterprise Work Designer, Enterprise Work Modeler, eProcurement Accelerator, EWA,<br />
Financial Fusion, Financial Fusion Server, Gateway Manager, GlobalFIX, ImpactNow, Industry Warehouse Studio, InfoMaker,<br />
Information Anywhere, Information Everywhere, InformationConnect, InternetBuilder, iScript, Jaguar CTS, jConnect for JDBC, Mail<br />
Anywhere Studio, MainframeConnect, Maintenance Express, Manage Anywhere Studio, M-Business Channel, M-Business Network,<br />
M-Business Server, MDI Access Server, MDI Database Gateway, media.splash, MetaWorks, My AvantGo, My AvantGo Media Channel,<br />
My AvantGo Mobile Marketing, MySupport, Net-Gateway, Net-Library, New Era of Networks, ObjectConnect, ObjectCycle,<br />
OmniConnect, OmniSQL Access Module, OmniSQL Toolkit, Open Biz, Open Client, Open ClientConnect, Open Client/Server, Open<br />
Client/Server Interfaces, Open Gateway, Open Server, Open ServerConnect, Open Solutions, Optima++, PB-Gen, PC APT Execute, PC<br />
Net Library, PocketBuilder, Pocket PowerBuilder, Power++, power.stop, PowerAMC, PowerBuilder, PowerBuilder Foundation Class<br />
Library, PowerDesigner, PowerDimensions, PowerDynamo, PowerJ, PowerScript, PowerSite, PowerSocket, Powersoft, PowerStage,<br />
PowerStudio, PowerTips, Powersoft Portfolio, Powersoft Professional, PowerWare Desktop, PowerWare Enterprise, ProcessAnalyst,<br />
Rapport, Report Workbench, Report-Execute, Replication Agent, Replication Driver, Replication Server, Replication Server Manager,<br />
Replication Toolkit, Resource Manager, RW-DisplayLib, S-Designor, SDF, Secure SQL Server, Secure SQL Toolset, Security Guardian,<br />
SKILS, smart.partners, smart.parts, smart.script, SQL Advantage, SQL Anywhere, SQL Anywhere Studio, SQL Code Checker, SQL<br />
Debug, SQL Edit, SQL Edit/TPU, SQL Everywhere, SQL Modeler, SQL Remote, SQL Server, SQL Server Manager, SQL SMART,<br />
SQL Toolset, SQL Server/CFT, SQL Server/DBM, SQL Server SNMP SubAgent, SQL Station, SQLJ, STEP, SupportNow, S.W.I.F.T.<br />
Message Format Libraries, <strong>Sybase</strong> Central, <strong>Sybase</strong> Client/Server Interfaces, <strong>Sybase</strong> Financial Server, <strong>Sybase</strong> Gateways, <strong>Sybase</strong> MPP,<br />
<strong>Sybase</strong> SQL Desktop, <strong>Sybase</strong> SQL Lifecycle, <strong>Sybase</strong> SQL Workgroup, <strong>Sybase</strong> User Workbench, <strong>Sybase</strong>Ware, Syber Financial,<br />
SyberAssist, SyBooks, System 10, System 11, System XI (logo), SystemTools, Tabular Data Stream, TradeForce, Transact-SQL,<br />
Translation Toolkit, UltraLite.NET, UNIBOM, Unilib, Uninull, Unisep, Unistring, URK Runtime Kit for UniCode, Viewer, Visual<br />
Components, VisualSpeller, VisualWriter, VQL, WarehouseArchitect, Warehouse Control Center, Warehouse Studio, Warehouse<br />
WORKS, Watcom, Watcom SQL, Watcom SQL Server, Web Deployment Kit, Web.PB, Web.SQL, WebSights, WebViewer,<br />
WorkGroup SQL Server, XA-Library, XA-Server und XP Server sind Marken von <strong>Sybase</strong>, Inc.<br />
Unicode und das Unicode-Logo sind eingetragene Marken von Unicode Inc.<br />
Alle anderen Unternehmens- oder Produktbezeichnungen sind Marken oder eingetragene Marken des jeweiligen Inhabers.<br />
<strong>Sybase</strong>, Inc., One <strong>Sybase</strong> Drive, Dublin, CA 94568.
Inhalt<br />
KAPITEL 1 Server mit dem dataserver-Dienstprogramm einrichten............. 1<br />
Einführung........................................................................................ 1<br />
Ein neues Master-Device einrichten................................................. 2<br />
Betriebsumgebungen für dataserver ......................................... 3<br />
Einrichtmodus............................................................................ 4<br />
Start-Modus............................................................................... 7<br />
Upgrade zu einem Server mit größeren Seitengrößen ............. 7<br />
Die aktuellen Server-Beschränkungen anzeigen ...................... 7<br />
KAPITEL 2 Das isql-Dienstprogramm verwenden........................................... 9<br />
Vorbereitungen................................................................................. 9<br />
isql starten und stoppen ................................................................. 10<br />
Transact-SQL in isql verwenden .................................................... 10<br />
isql-Ausgabe formatieren ........................................................ 11<br />
Eingabe korrigieren ................................................................. 12<br />
set-Optionen, die sich auf die Ausgabe auswirken ................. 13<br />
Das Befehlsabschlusszeichen ändern ........................................... 13<br />
Wechselwirkung von Performance-Statistik und<br />
Befehlsabschlusszeichen-Werten .................................... 14<br />
Netzwerkpaketgröße einstellen...................................................... 15<br />
Eingabe- und Ausgabedateien....................................................... 16<br />
UNIX-Befehlszeile umleiten..................................................... 16<br />
KAPITEL 3 Daten mit bcp in und aus Adaptive Server übertragen ............. 17<br />
Methoden zum Verschieben von Daten ......................................... 18<br />
Daten mit bcp .......................................................................... 18<br />
bcp-Anforderungen ........................................................................ 19<br />
bcp-Modi ........................................................................................ 21<br />
bcp-Performance............................................................................ 22<br />
Schnellen oder langsamen bcp verwenden ............................ 22<br />
Daten mit schnellem bcp importieren ...................................... 25<br />
Mit dem Massenexport/-import Daten in partitionierte<br />
Tabellen kopieren ............................................................. 26<br />
<strong>Dienstprogramme</strong> iii
Inhalt<br />
Mit parallelem Massenexport/-import Daten in eine<br />
bestimmte Partition kopieren ............................................ 29<br />
Die bcp-Optionen verwenden......................................................... 35<br />
Die Standardformate verwenden............................................. 36<br />
Abschlusszeichen von der Befehlszeile ändern ...................... 38<br />
Die Standardwerte ändern: Interaktiver bcp................................... 38<br />
Auf bcp-Eingabeaufforderungen reagieren ............................. 39<br />
Dateispeichertyp...................................................................... 41<br />
Präfixlänge .............................................................................. 43<br />
Feldlänge................................................................................. 44<br />
Feld- und Zeilenabschlusszeichen .......................................... 47<br />
Formatdateien verwenden ............................................................. 50<br />
Elemente der bcp-Formatdatei................................................ 51<br />
Beispiele: Daten interaktiv exportieren........................................... 54<br />
Daten mit Feldlängen exportieren ........................................... 55<br />
Daten mit Begrenzern exportieren .......................................... 56<br />
Beispiele: Daten interaktiv importieren........................................... 57<br />
Daten mit Feldlängen importieren ........................................... 58<br />
Daten mit Begrenzern importieren .......................................... 60<br />
Daten mit einer Formatdatei importieren................................. 60<br />
bcp mit anderen Sprachen verwenden .......................................... 61<br />
bcp und Zugriffsregeln auf Zeilenebene......................................... 62<br />
Importieren und Anweisungsfolgedateien ...................................... 62<br />
Wiederherstellbarkeit erleichtern............................................. 63<br />
Anweisungsfolgen und partitionierte Tabellen......................... 64<br />
Exportieren und Text- und Bilddaten.............................................. 64<br />
Netzwerkpaketgröße festlegen ...................................................... 65<br />
Importieren und Fehlerdateien ....................................................... 65<br />
Exportieren und Fehlerdateien....................................................... 67<br />
Datenintegrität: Standardwerte, Regeln und Trigger...................... 67<br />
Standardwerte und Datentypen............................................... 67<br />
Regeln und Trigger.................................................................. 68<br />
Wie unterscheidet sich bcp von anderen<br />
<strong>Dienstprogramme</strong>n? ......................................................... 68<br />
KAPITEL 4 dsedit verwenden .......................................................................... 71<br />
Mit dsedit arbeiten.......................................................................... 71<br />
dsedit starten........................................................................... 71<br />
Eine Bearbeitungssitzung öffnen............................................. 73<br />
Servereinträge hinzufügen, anzeigen und bearbeiten ................... 75<br />
Servereinträge in Windows NT ändern ................................... 76<br />
Servereinträge auf UNIX-Plattformen ändern ......................... 79<br />
Servereinträge kopieren .......................................................... 82<br />
iv Adaptive Server Enterprise
Inhalt<br />
dsedit-Fehlerbehandlung ............................................................... 83<br />
Das dsedit-Dienstprogramm startet nicht ................................ 83<br />
Fehlermeldung: „Öffnen der X-Anzeige nicht möglich“ ........... 84<br />
Hinzufügen, Ändern oder Löschen von Servereinträgen<br />
nicht möglich..................................................................... 84<br />
KAPITEL 5 dscp verwenden............................................................................ 85<br />
Mit dscp arbeiten............................................................................ 85<br />
Eine dscp-Sitzung verwenden................................................. 86<br />
Mit Servereinträgen arbeiten.......................................................... 87<br />
Servereinträge hinzufügen und ändern ................................... 87<br />
Servereinträge kopieren .......................................................... 90<br />
Inhalte von Servereinträgen auflisten und anzeigen ............... 91<br />
Servereinträge löschen ........................................................... 92<br />
dscp beenden................................................................................. 93<br />
Übersicht über die dscp-Dienstprogrammbefehle.......................... 93<br />
KAPITEL 6 Migrations-Dienstprogramm........................................................ 95<br />
Überblick ........................................................................................ 95<br />
Bestehende Lösungen ............................................................ 96<br />
Vorteile von sybmigrate........................................................... 96<br />
Was sybmigrate durchführt ..................................................... 96<br />
Was sybmigrate nicht tut ......................................................... 98<br />
Vorbereitungen............................................................................. 100<br />
Erforderliche Komponenten für sybmigrate........................... 100<br />
Voraussetzungen .................................................................. 100<br />
Installation ............................................................................. 100<br />
Upgrade................................................................................. 100<br />
Berechtigungen ..................................................................... 101<br />
Plattformen ............................................................................ 102<br />
Umgebungsvariablen ............................................................ 102<br />
Migrationsprozess ........................................................................ 103<br />
Überblick über den Migrationsprozess .................................. 103<br />
Vorbereitung der Migration.................................................... 104<br />
Konfiguration und Optimierung für eine bessere<br />
Performance ................................................................... 107<br />
Fehlervermeidung ................................................................. 110<br />
Automatische Auswahl abhängiger Objekte für<br />
die Migration ................................................................... 110<br />
sybmigrate ausführen............................................................ 110<br />
GUI-Modus ............................................................................ 114<br />
Ressourcedatei-Modus ......................................................... 122<br />
Aufgaben nach der Migration ....................................................... 130<br />
<strong>Dienstprogramme</strong> v
Inhalt<br />
Daten aus Replication Server in Adaptive Server 12.5<br />
migrieren......................................................................... 130<br />
Vorbereitung der Datenbanken mit Replikationsdaten<br />
für die Migration.............................................................. 132<br />
Aufgaben für replizierte Datenbanken nach<br />
der Migration................................................................... 133<br />
Einschränkungen ......................................................................... 138<br />
Problembehebung und Fehlermeldungen.................................... 140<br />
Objekte werden nicht migriert................................................ 140<br />
Beginn der Datenbankmigration............................................ 140<br />
„Connection refused“ und „Unable to obtain<br />
connection to the server“ ................................................ 141<br />
Der Zielserver ist vom Quellserver nicht erreichbar .............. 141<br />
Wenn sybmigrate bei der Migration hängt............................. 141<br />
Zwei Datenbanken zusammenführen.................................... 142<br />
Bereinigen von Fehlern nach der Migration .......................... 142<br />
Datenbank erneut migrieren.................................................. 142<br />
Einzelne Objekte neu erstellen.............................................. 143<br />
Verbindung fehlgeschlagen................................................... 143<br />
„Insufficient memory in JVM shared class“............................ 143<br />
„There is not enough memory in the procedure cache“ ........ 144<br />
java.lang-Fehler..................................................................... 144<br />
KAPITEL 7 Adaptive Server Plug-In installieren .......................................... 145<br />
Einführung.................................................................................... 145<br />
Lieferung des Adaptive Server Plug-Ins................................ 146<br />
Funktionsunterschiede zwischen den Versionen<br />
im Vergleich.................................................................... 146<br />
Auf die Monitor Client-GUI zugreifen ........................................... 148<br />
Monitor Client-GUI als eigenständige Anwendung<br />
ausführen........................................................................ 148<br />
KAPITEL 8 Übersicht über die Dienstprogrammbefehle............................. 151<br />
Erste Orientierung ........................................................................ 152<br />
*_dce- und *_r-<strong>Dienstprogramme</strong>.......................................... 154<br />
Dienstprogramm-Überblick .......................................................... 155<br />
Installations- und Konfigurationsdienstprogramme ............... 155<br />
<strong>Dienstprogramme</strong> für Sprachen, Zeichensätze<br />
und Sortierreihenfolgen .................................................. 156<br />
<strong>Dienstprogramme</strong> zum Starten von Servern ......................... 156<br />
Erstellungs- und Bearbeitungsdienstprogramme<br />
für Datenbanken ............................................................. 157<br />
<strong>Dienstprogramme</strong> zum Sammeln von Informationen ............ 157<br />
vi Adaptive Server Enterprise
Inhalt<br />
backupserver................................................................................ 158<br />
bcp ............................................................................................... 163<br />
buildmaster................................................................................... 176<br />
certauth ........................................................................................ 176<br />
certpk12 ....................................................................................... 179<br />
certreq .......................................................................................... 182<br />
charset ......................................................................................... 185<br />
cobpre .......................................................................................... 186<br />
cpre .............................................................................................. 186<br />
dataserver .................................................................................... 187<br />
dataxtr .......................................................................................... 194<br />
ddlgen .......................................................................................... 194<br />
defncopy....................................................................................... 209<br />
dscp.............................................................................................. 216<br />
dsedit............................................................................................ 217<br />
extractjava.................................................................................... 218<br />
installjava ..................................................................................... 221<br />
isql................................................................................................ 226<br />
langinstall ..................................................................................... 236<br />
optdiag ......................................................................................... 239<br />
pwdcrypt....................................................................................... 246<br />
showserver................................................................................... 247<br />
sqldbgr ......................................................................................... 247<br />
sqlloc ............................................................................................ 253<br />
sqllocres ....................................................................................... 254<br />
sqlsrvr........................................................................................... 255<br />
sqlupgrade ................................................................................... 263<br />
sqlupgraderes .............................................................................. 264<br />
srvbuild......................................................................................... 264<br />
srvbuildres.................................................................................... 265<br />
startserver .................................................................................... 266<br />
sybmigrate.................................................................................... 269<br />
xpserver ....................................................................................... 273<br />
Index ........................................................................................................................................... 277<br />
<strong>Dienstprogramme</strong> vii
Inhalt<br />
viii Adaptive Server Enterprise
Über dieses Handbuch<br />
<strong>Dienstprogramme</strong> für Adaptive Server Enterprise ist ein Leitfaden für<br />
die <strong>Dienstprogramme</strong> in <strong>Sybase</strong> ® Adaptive Server ® Enterprise, die für<br />
UNIX-Plattformen und Windows NT verfügbar sind. <strong>Dienstprogramme</strong><br />
sind Befehle, die Sie direkt vom Betriebssystem aus aufrufen können.<br />
Zielgruppe Dieses Handbuch ist für Benutzer gedacht, die Transact-SQL ® und<br />
Adaptive Server Enterprise Version 12.5 verwenden. Es setzt voraus,<br />
dass Sie Grundkenntnisse über Adaptive Server und Ihr Betriebssystem<br />
besitzen.<br />
Umgang mit dieser<br />
Dokumentation<br />
Dieses Handbuch besteht aus folgenden Kapiteln:<br />
Kapitel 1, „Server mit dem dataserver-Dienstprogramm einrichten“,<br />
beschreibt, wie Sie mit dem Dienstprogramm dataserver neue Server<br />
erstellen.<br />
Kapitel 2, „Das isql-Dienstprogramm verwenden“, beschreibt, wie<br />
Sie das Dienstprogramm Interactive SQL (isql) verwenden, mit dem<br />
Sie von Ihrem Betriebssystem aus auf SQL zugreifen können.<br />
Kapitel 3, „Daten mit bcp in und aus Adaptive Server übertragen“,<br />
beschreibt detailliert das Dienstprogramm bcp für den Massenexport/<br />
-import von Daten, mit dem Sie Daten zwischen Adaptive Server und<br />
einer Betriebssystemdatei verschieben können.<br />
Kapitel 4, „dsedit verwenden“, beschreibt wie Sie das Verzeichnisdienst-Editor-Dienstprogramm<br />
dsedit verwenden, um die Interface-<br />
Datei sql.ini unter Windows NT zu bearbeiten, und um in X-Windows<br />
Servereinträge in der Interface-Datei auf UNIX-Plattformen<br />
anzuzeigen und zu bearbeiten.<br />
Kapitel 5, „dscp verwenden“, beschreibt, wie Sie mit dem<br />
Dienstprogramm dscp Servereinträge in der Interface-Datei auf<br />
UNIX-Plattformen anzeigen und bearbeiten.<br />
Kapitel 6, „Migrations-Dienstprogramm“, beschreibt, wie Sie mit<br />
dem Dienstprogramm sybmigrate Daten und Datenbankenschemata<br />
aus Datenbankversionen vor 12.5 in Datenbanken der Version 12.5<br />
übertragen.<br />
<strong>Dienstprogramme</strong> ix
Weiterführende<br />
Dokumentationen<br />
Kapitel 7, „Adaptive Server Plug-In installieren“, beschreibt das<br />
Adaptive Server Enterprise Plug-In sowie den Einsatz der Monitor<br />
Client-GUI als Teil des Adaptive Server Plug-In und als eigenständige<br />
Anwendung. Außerdem wird die Verwendung der C++-Version des<br />
Adaptive Server Plug-In erläutert.<br />
Kapitel 8, „Übersicht über die Dienstprogrammbefehle“, listet<br />
die Dienstprogrammbefehle und ihre Beschreibung auf, mit denen<br />
Sie Ihre Datenbanken und Adaptive Server Enterprise verwalten und<br />
pflegen können.<br />
Die Beispiele in diesem Handbuch basieren auf der Musterdatenbank pubs2.<br />
Ihr Systemadministrator kann Ihnen beim Zugriff auf eine saubere Kopie der<br />
Datenbank pubs2 behilflich sein.<br />
Die Dokumentation von <strong>Sybase</strong> ® Adaptive Server ® Enterprise umfasst<br />
Folgendes:<br />
Versionshinweise für Ihre Plattform – Diese Dokumentation enthält<br />
aktuelle Informationen, die in die anderen Dokumente nicht mehr<br />
aufgenommen werden konnten.<br />
Eine neuere Ausgabe dieser Versionshinweise finden Sie unter Umständen<br />
im World Wide Web. Um wichtige Produkt- oder Dokumentationsinformationen<br />
zu erhalten, die erst nach der Herausgabe der Produkt-CD<br />
verfasst wurden, benutzen Sie die „Technical Library“.<br />
Installationsanleitungen für Ihre Plattform – Diese Dokumentationen<br />
beschreiben Installations- und Upgrade-Prozeduren für alle Adaptive<br />
Server-Installationen und ähnliche <strong>Sybase</strong>-Produkte.<br />
What’s New in Adaptive Server Enterprise? (in englischer Sprache) –<br />
Diese Einführungsdokumentation beschreibt die neuen Funktionen der<br />
Version 12.5.1 von Adaptive Server Enterprise, die für die Unterstützung<br />
dieser Funktionen durchgeführten Systemänderungen und die<br />
Änderungen, die sich auf Ihre vorhandenen Anwendungen<br />
auswirken können.<br />
ASE Replicator User’s Guide (in englischer Sprache) – Diese<br />
Dokumentation beschreibt die Verwendungsweise der ASE Replicator-<br />
Funktion von Adaptive Server zur Umsetzung einer grundlegenden<br />
Replikation aus einem Primärserver auf einen oder mehrere entfernte<br />
Adaptive Server.<br />
Component Integration Services User’s Guide (in englischer Sprache) –<br />
In dieser Dokumentation wird erklärt, wie Sie die Adaptive Server<br />
Component Integration Services verwenden, um sich mit entfernten<br />
<strong>Sybase</strong>- und Nicht-<strong>Sybase</strong>-Datenbanken zu verbinden.<br />
x Adaptive Server Enterprise
Über dieses Handbuch<br />
Konfigurationsanleitung für Adaptive Server Enterprise für Ihre<br />
Plattform – Diese Dokumentation enthält Anweisungen für bestimmte<br />
Aufgaben zur Konfiguration von Adaptive Server.<br />
EJB Server User’s Guide (in englischer Sprache) – Dieses Benutzerhandbuch<br />
erläutert, wie EJB Server zur Bereitstellung und Ausführung<br />
von Enterprise JavaBeans in Adaptive Server eingesetzt wird.<br />
Error Messages and Troubleshooting Guide (in englischer Sprache) –<br />
Diese Dokumentation beschreibt, wie häufig auftretende Fehler behoben<br />
werden können, und bietet Lösungen zu Systemfehlern, auf die Benutzer<br />
häufig stoßen.<br />
Full-Text Search Specialty Data Store User’s Guide (in englischer<br />
Sprache) – Dieses Benutzerhandbuch beschreibt den Einsatz der Volltext-<br />
Recherchefunktion mit Verity zum Durchsuchen von Daten in Adaptive<br />
Server Enterprise-Datenbanken.<br />
Glossary (in englischer Sprache) – Im Glossar werden Fachbegriffe<br />
definiert, die in der Dokumentation von Adaptive Server verwendet<br />
werden.<br />
Historical Server User’s Guide (in englischer Sprache) – Dieses<br />
Handbuch beschreibt den Einsatz von Historical Server für den Abruf<br />
von Performancedaten von SQL Server ® und Adaptive Server.<br />
Java in Adaptive Server Enterprise (in englischer Sprache) – Diese<br />
Dokumentation beschreibt, wie Sie Java-Klassen als Datentypen sowie<br />
benutzerdefinierte Funktionen in der Adaptive Server-Datenbank<br />
installieren und einsetzen.<br />
Job Scheduler User’s Guide (in englischer Sprache) – Dieses<br />
Handbuch enthält Anleitungen zur Installation und Konfiguration sowie<br />
zur Erstellung und Planung von Aufträgen auf lokalen oder entfernten<br />
Adaptive Server-Installationen über die Befehlszeile oder eine grafische<br />
Benutzeroberfläche.<br />
Monitor Client Library Programmer’s Guide (in englischer Sprache) –<br />
Dieses Handbuch für Programmierer enthält Anleitungen zum<br />
Programmieren von Monitor Client Library-Anwendungen,<br />
die auf Performancedaten von Adaptive Server zugreifen.<br />
Monitor Server User’s Guide (in englischer Sprache) – Dieses Handbuch<br />
beschreibt den Einsatz von Monitor Server für den Abruf von<br />
Performancedaten von SQL Server und Adaptive Server.<br />
<strong>Dienstprogramme</strong> xi
Performance and Tuning Guide (in englischer Sprache) – In dieser<br />
vierteiligen Dokumentation wird erklärt, wie Adaptive Server so optimiert<br />
wird, dass er mit höchster Performance arbeitet:<br />
Basics – Dieses Dokument enthält grundlegende Informationen<br />
zum Verständnis und zur Untersuchung von Performancefragen in<br />
Adaptive Server.<br />
Locking – Dieses Dokument erläutert die Verwendungsweise der<br />
unterschiedlichen Sperrschemata zur Performanceverbesserung in<br />
Adaptive Server.<br />
Optimizer and Abstract Plans – Dieses Dokument erläutert,<br />
wie ein Optimierer Abfragen verarbeitet und wie Abstraktpläne<br />
zur Anpassung von Optimiererplänen verwendet werden können.<br />
Monitoring and Analyzing – Dieses Dokument beschreibt, wie<br />
statistische Daten abgerufen und zur Überwachung und Optimierung<br />
der Performance verwendet werden.<br />
Kurzreferenz – Diese Kurzübersicht bietet eine vollständige Liste der<br />
Namen und der Syntax von Befehlen, Funktionen, Systemprozeduren,<br />
erweiterten Systemprozeduren, Datentypen und <strong>Dienstprogramme</strong>n im<br />
handlichen Taschenbuchformat.<br />
Reference Manual (in englischer Sprache) – Diese vierteilige<br />
Dokumentation enthält folgende detaillierte Informationen zu<br />
Transact-SQL ® :<br />
Building Blocks – Enthält Transact-SQL-Datentypen, Funktionen,<br />
globale Variablen, Ausdrücke, Bezeichner und Wildcard-Zeichen<br />
sowie reservierte Wörter.<br />
Commands – Enthält Transact-SQL-Befehle.<br />
Procedures – Enthält Transact-SQL-Systemprozeduren, Katalog-<br />
Systemprozeduren, erweiterte Systemprozeduren sowie gespeicherte<br />
Prozeduren für dbcc.<br />
Tables – Enthält Transact-SQL-Systemtabellen und dbcc-Tabellen.<br />
Systemadministration für Adaptive Server Enterprise – Diese<br />
Dokumentation bietet detaillierte Informationen zur Verwaltung von<br />
Servern und Datenbanken. Außerdem werden darin Anleitungen und<br />
Richtlinien für die Verwaltung von physischen Ressourcen, Sicherheit<br />
und Benutzer- bzw. Systemdatenbanken sowie für die Definition der<br />
Zeichensatzkonvertierung, für internationale Sprachversionen und für<br />
Einstellungen der Sortierreihenfolge besprochen.<br />
xii Adaptive Server Enterprise
Über dieses Handbuch<br />
System Tables Diagram – Dieses Übersichtsschema zeigt die<br />
Systemtabellen und ihre Entitätsrelationen in Form eines Plakats.<br />
Nur in gedruckter Form verfügbar.<br />
Transact-SQL User’s Guide (in englischer Sprache) – Diese<br />
Dokumentation beschäftigt sich mit Transact-SQL, der von <strong>Sybase</strong><br />
erweiterten Version der Sprache für relationale Datenbanken. Dieses<br />
Handbuch dient als Lehrbuch für Erstbenutzer des Datenbank-<br />
Managementsystems. Außerdem enthält es Beschreibungen der<br />
Beispieldatenbanken pubs2 und pubs3.<br />
Using Adaptive Server Distributed Transaction Management<br />
Features (in englischer Sprache) – Diese Dokumentation erklärt, wie<br />
Sie Adaptive Server DTM-Funktionen in einer Umgebung mit verteilter<br />
Transaktionsverarbeitung konfigurieren und verwenden sowie eventuell<br />
auftretende Fehler beheben.<br />
Using <strong>Sybase</strong> Failover in a High Availability System (in englischer<br />
Sprache) – Diese Dokumentation enthält Anweisungen zur Arbeit mit<br />
<strong>Sybase</strong> Failover, um Adaptive Server als Begleitserver-Konfiguration<br />
in einem System mit hoher Verfügbarkeit zu konfigurieren.<br />
<strong>Dienstprogramme</strong> – Dieses Handbuch dokumentiert die Adaptive Server-<br />
<strong>Dienstprogramme</strong> wie isql und bcp, die auf Betriebssystemebene<br />
ausgeführt werden.<br />
Web Services User’s Guide (in englischer Sprache) – Dieses Handbuch<br />
erläutert die Konfiguration und Verwendung von Web Services für<br />
Adaptive Server sowie Maßnahmen zur Fehlerbehebung.<br />
XA Interface Integration Guide for CICS, Encina, and TUXEDO<br />
(in englischer Sprache) – Dieses Handbuch für die Integration von<br />
Schnittstellen enthält Anweisungen zur Verwendung der <strong>Sybase</strong>-<br />
DTM-XA-Schnittstelle mit X/Open XA-Transaktionsmanagern.<br />
XML Services in Adaptive Server Enterprise (in englischer Sprache) –<br />
Dieses Dokument beschreibt den <strong>Sybase</strong>-eigenen XML-Prozessor und<br />
den Java-basierten XML-Support von <strong>Sybase</strong>, gibt eine Einführung in<br />
XML in Datenbanken und legt die Abfrage- und Zuordnungsfunktionen<br />
der XML Services dar.<br />
<strong>Dienstprogramme</strong> xiii
<strong>Sybase</strong>-<br />
Zertifizierungen<br />
im Internet<br />
<strong>Sybase</strong>-EBFs und<br />
Software-Updates<br />
Die technischen Informationen auf der <strong>Sybase</strong>-Website werden in<br />
regelmäßigen Abständen aktualisiert.<br />
❖ So finden Sie die neuesten Informationen zu Produkt-Zertifizierungen:<br />
1 Gehen Sie in Ihrem Webbrowser zur Adresse Technical Documents<br />
http://www.sybase.com/support/techdocs/.<br />
2 Wählen Sie „Products“ aus der Navigationsleiste auf der linken Seite.<br />
3 Wählen Sie ein Produkt aus der Auswahlliste aus und klicken Sie<br />
auf „Go“.<br />
4 Wählen Sie den Filter „Certification Report“ aus, geben Sie einen<br />
Zeitrahmen an, und klicken Sie auf „Go“.<br />
5 Klicken Sie auf den gewünschten Titel, um den Report anzuzeigen.<br />
❖ So erstellen Sie eine auf Ihre persönlichen Bedürfnisse angepasste<br />
Ansicht der <strong>Sybase</strong>-Website (einschließlich Support-Seiten):<br />
Richten Sie ein My<strong>Sybase</strong>-Profil ein. My<strong>Sybase</strong> ist eine kostenlose<br />
Serviceleistung, mit der Sie eine auf Ihre persönlichen Anforderungen<br />
angepasste Ansicht der <strong>Sybase</strong>-Website erstellen können.<br />
1 Gehen Sie in Ihrem Webbrowser zur Adresse Technical Documents<br />
http://www.sybase.com/support/techdocs/.<br />
2 Klicken Sie auf „My<strong>Sybase</strong>“ und erstellen Sie ein My<strong>Sybase</strong>-Profil.<br />
❖ So finden Sie die neuesten Informationen zu EBFs und Software-<br />
Updates:<br />
1 Gehen Sie in Ihrem Webbrowser zur Adresse the <strong>Sybase</strong> Support Page<br />
http://www.sybase.com/support.<br />
2 Wählen Sie „EBFs/Maintenance“ aus. Geben Sie einen Benutzernamen<br />
und ein Kennwort ein, falls Sie dazu aufgefordert werden, oder erstellen<br />
Sie ein neues Konto (ein kostenloser Dienst).<br />
3 Wählen Sie ein Produkt aus.<br />
4 Geben Sie einen Zeitrahmen an und klicken Sie auf „Go“.<br />
5 Klicken Sie zur Anzeige des EBF/Maintenance-Reports auf das<br />
Info-Symbol, oder klicken Sie auf die Produktbeschreibung, um die<br />
entsprechende Software herunterzuladen.<br />
xiv Adaptive Server Enterprise
Über dieses Handbuch<br />
Konventionen Im normalen Fließtext dieses Handbuchs werden Namen von Dateien,<br />
Datenträgern und Verzeichnissen kursiv gesetzt, zum Beispiel:<br />
Unter Windows NT: %SYBASE%\bin<br />
Auf UNIX-Plattformen: $SYBASE<br />
Hinweis Setzen Sie Ihr <strong>Sybase</strong>-Installationslaufwerk und -verzeichnis<br />
unter UNIX auf $SYBASE und unter Windows NT auf %SYBASE%.<br />
Tabelle 1 beschreibt die typographischen (Schriftart- und Syntax-)<br />
Konventionen, die in dieser Dokumentation benutzt werden.<br />
Tabelle 1: Schriftart- und Syntaxkonventionen in diesem Handbuch<br />
Element Beispiel<br />
Die Namen von Befehlen, Befehlsoptionen, dsedit<br />
Datenbanken, Datentypen, <strong>Dienstprogramme</strong>n,<br />
Dienstprogramm-Parametern und anderen<br />
Schlüsselwörtern werden in Helvetica dargestellt.<br />
Variablen oder Wörter, die durch einen<br />
select Spaltenname<br />
entsprechenden Wert ersetzt werden müssen, from Tabellenname<br />
werden kursiv dargestellt.<br />
where Suchbedingungen<br />
Runde Klammern sind ein Teil des Befehls und compute row_aggregate (Spaltenname)<br />
müssen eingegeben werden.<br />
Geschweifte Klammern bedeuten, dass<br />
{Käse, Soße}<br />
Sie zumindest eine der darin angegebenen<br />
Optionen wählen müssen (siehe Komma).<br />
Hinweis Die geschweiften Klammern selbst dürfen nicht<br />
eingegeben werden.<br />
Eckige Klammern bedeuten, dass die darin<br />
angegebenen Optionen wahlfrei sind.<br />
Der Senkrechtstrich bedeutet, dass Sie nur eine<br />
der angegebenen Optionen auswählen können.<br />
Das Komma bedeutet, dass Sie beliebig viele der<br />
angegebenen Optionen durch Kommas voneinander<br />
getrennt eingeben können.<br />
[Salat, grüne_Bohnen, Sauerkraut]<br />
Hinweis Die Klammern selbst dürfen nicht eingegeben<br />
werden.<br />
{Barzahlung | Scheck | Kreditkarte}<br />
Hinweis Die geschweiften Klammern selbst dürfen nicht<br />
eingegeben werden.<br />
[Schmelzkäse, Avocados, Sahne]<br />
Hinweis Die Klammern selbst dürfen nicht eingegeben<br />
werden.<br />
<strong>Dienstprogramme</strong> xv
Element Beispiel<br />
Auslassungspunkte (...) bedeuten, dass Sie den<br />
vorhergehenden Eintrag beliebig oft wiederholen<br />
können.<br />
Syntaxanweisungen, die die Syntax der<br />
<strong>Dienstprogramme</strong> mit all ihren Optionen zeigen,<br />
werden wie folgt dargestellt: entweder in der Schrift<br />
San Serif bei Dienstprogramm-Parametern und<br />
Optionen (-v) oder kursiv bei vom Benutzer<br />
gelieferten Werten (Benutzername).<br />
Beispiele, die Computerausgaben zeigen, werden in<br />
Courier dargestellt:<br />
Falls Sie Hilfe<br />
brauchen<br />
Dinge kaufen = Preis [Bargeld | Scheck |<br />
Kreditkarte]<br />
[, Dinge = Preis [Bargeld | Scheck |<br />
Kreditkarte] ]...<br />
Sie müssen zumindest ein Ding (Objekt) kaufen und den<br />
Preis dafür bezahlen.<br />
Sie können die Zahlungsart aussuchen: eine der Optionen<br />
in den eckigen Klammern.<br />
Sie können auch zusätzliche Objekte kaufen, so viele<br />
Sie wollen. Für jedes Objekt, das Sie kaufen, geben<br />
Sie seinen Namen, seinen Preis und (fakultativ) die<br />
Zahlungsart an.<br />
charset<br />
[-PKennwort]<br />
[-SServer]<br />
[-ISchnittstelle]<br />
Sortierreihenfolge | Zeichensatz<br />
pub_id pub_name city state<br />
------ --------- ---------- -----<br />
0736 New Age Books Boston MA<br />
0877 Binnet & Hardley Washington DC<br />
(2 rows affected)<br />
Für jede <strong>Sybase</strong>-Installation, für die ein Kundendienst-Vertrag abgeschlossen<br />
wurde, werden Personen bestimmt, die im Bedarfsfall Kontakt zum<br />
technischen Kundendienst von <strong>Sybase</strong> aufnehmen. Wenn Sie ein Problem<br />
haben, das Sie weder mit der Dokumentation noch mit der Online-Hilfe lösen<br />
können, bitten Sie die in Ihrer Organisation vorgesehene Person, mit dem<br />
technischen Kundendienst von <strong>Sybase</strong> oder der <strong>Sybase</strong>-Geschäftsstelle in<br />
Ihrem Bereich Kontakt aufzunehmen.<br />
xvi Adaptive Server Enterprise
KAPITEL 1 Server mit dem dataserver-<br />
Dienstprogramm einrichten<br />
Einführung<br />
Adaptive Server Version 12.5 verwendet nicht mehr die buildmaster-<br />
Binärdatendatei, um das Master-Device zu erstellen. Stattdessen hat<br />
<strong>Sybase</strong> die buildmaster-Funktionalität in dataserver integriert. In diesem<br />
Kapitel wird beschrieben, wie Sie dataserver zum Einrichten Ihres Servers<br />
verwenden.<br />
Thema Seite<br />
Einführung 1<br />
Ein neues Master-Device einrichten 2<br />
Hinweis Die dataserver-Binärdatendatei hat unter Windows NT den<br />
Namen sqlsrvr.exe. Wenn Sie die Windows NT-Plattform verwenden,<br />
ersetzen Sie alle Verweise auf dataserver in diesem Kapitel durch sqlsrvr.<br />
Eine ausführliche Beschreibung der dataserver-Syntax finden Sie unter<br />
dataserver auf Seite 188. Eine ausführliche Beschreibung der sqlsrvr-<br />
Syntax finden Sie unter sqlsrvr auf Seite 259.<br />
Mit dem Befehl dataserver können Sie Master-Devices und Datenbanken<br />
mit logischen Seitengrößen von 2 KByte, 4 KByte, 8 KByte oder<br />
16 KByte erstellen. Größere logische Seiten ermöglichen Ihnen, größere<br />
Zeilen zu erstellen, die Adaptive Server die Möglichkeit geben, auf mehr<br />
Daten bei jedem Seitenlesen zuzugreifen. Eine 16-KByte-Seite zum<br />
Beispiel kann das Achtfache der Datenmenge einer 2-KByte-Seite<br />
aufnehmen, eine 8-KByte-Seite das Vierfache einer 2-KByte-Seite<br />
usw.; dies gilt für alle Größen von logischen Seiten.<br />
<strong>Dienstprogramme</strong> 1
Ein neues Master-Device einrichten<br />
Da die logische Seitengröße eine serverweite Einstellung ist, können Sie keine<br />
Datenbanken mit unterschiedlichen logischen Seitengrößen auf demselben<br />
Server einrichten. Die Größe aller Tabellen wird entsprechend angepasst,<br />
so dass die Zeilengröße die aktuelle Seitengröße des Servers nicht<br />
überschreitet. Das heißt, Zeilen können sich nicht über mehrere Seiten<br />
erstrecken.<br />
Ein neues Master-Device einrichten<br />
In diesem Abschnitt wird der Vorgang zur Erstellung eines neuen Master-<br />
Device anhand des Dienstprogramms dataserver beschrieben. Das Master-<br />
Device wird unter Verwendung des build-Modus in dataserver eingerichtet.<br />
Nachdem das Master-Device eingerichtet worden ist, fährt der Server herunter.<br />
Sie müssen nun den Server manuell im start-Modus starten. Danach können<br />
Sie Adaptive Server nach Bedarf jederzeit starten, stoppen und erneut starten,<br />
ohne dass Sie das Master-Device neu einrichten müssen.<br />
Adaptive Server verwendet drei Typen von Seitengrößen:<br />
Logische Seitengröße – dies sind die Seiten, mit denen die<br />
Datenbankobjekte eingerichtet werden. Eine Datenbank und alle sich<br />
auf sie beziehenden Objekte müssen dieselbe logische Seitengröße<br />
verwenden. Logische Seitengrößen sind 2 KByte, 4 KByte, 8 KByte<br />
und 16 KByte.<br />
Virtuelle Seitengröße – dies ist die physische Seitenzuweisung auf der<br />
Plattenspeicher-Ebene, die immer in 2-KByte-Seiten erfolgt. Alle I/O-<br />
Vorgänge werden als Vielfaches der virtuellen Seitengröße durchgeführt.<br />
Speicher-Seitengröße – der Speicher, der innerhalb von Adaptive Server<br />
zugewiesen und verwaltet wird. Die Speicher-Seitengröße besteht immer<br />
aus Einheiten von 2-KByte-Seiten.<br />
Die folgende Syntax erstellt ein neues Master-Device mit dataserver:<br />
dataserver -dDevice_Name<br />
. . .<br />
-b [Master_Device_Größe [k|K|m|M|g|G]<br />
[-z logische_Seitengröße [k|K]<br />
-h<br />
2 Adaptive Server Enterprise
Wobei gilt:<br />
Kapitel 1 Das isql-Dienstprogramm verwenden<br />
-d Device_Name ist der vollständige Pfad des Device für die master-<br />
Datenbank. Das Master-Datenbankdevice muss für den Benutzer,<br />
der Adaptive Server startet, beschreibbar sein. Der standardmäßige<br />
master-Datenbankdevicename lautet d_master.<br />
-b gibt an, dass dataserver sich im Einrichtmodus befindet und ein neues<br />
Master-Device erstellt, und zeigt die Größe des Master-Device an. Wenn<br />
Sie keine Einheit (k, m oder g) für die Größe des Device anführen, nimmt<br />
dataserver eine Größe in virtuellen Seiten an. Die Größe einer virtuellen<br />
Seite ist immer 2 KByte. Beispiel:<br />
-b 51204 legt ein Device von 51.204 virtuellen Seiten (100,0078125<br />
MByte) fest.<br />
-b 100M gibt ein Device von 100 MByte an.<br />
-z legt die logische Seitengröße fest, die immer 2K, 4K, 8K oder 16K beträgt.<br />
Das heißt, eine logische Seite = N virtuelle Seiten. Dieser Parameter ist<br />
während der Einrichtphase fakultativ und wird im Start-Modus ignoriert.<br />
Wenn Sie keinen -z-Parameter während des Einrichtmodus angeben,<br />
wird das Master-Device mit logischen Seiten von 2 KByte erstellt.<br />
-h druckt die Syntax für den dataserver-Befehl.<br />
Unter dataserver auf Seite 188 finden Sie eine vollständige Liste der<br />
dataserver-Parameter sowie ihre Definitionen.<br />
Betriebsumgebungen für dataserver<br />
Wenn Sie eine Adaptive Server-Installation mit dem dataserver-Programm<br />
starten, entnimmt Adaptive Server seine Betriebsumgebung aus:<br />
der Konfigurationsdatei, die Sie in -c Konfigurationsdatei festgelegt haben<br />
der Standard-Konfigurationsdatei servername.cfg, sofern Sie den<br />
Parameter -c nicht angegeben haben<br />
Standardwerten, sofern Sie weder -c Konfigurationsdatei noch<br />
servername.cfg angegeben haben<br />
Weitere Hinweise zu diesen Konfigurationsparametern finden Sie in<br />
Kapitel 17, „Konfigurationsparameter einstellen“, in der Dokumentation<br />
Systemadministration für Adaptive Server Enterprise.<br />
<strong>Dienstprogramme</strong> 3
Ein neues Master-Device einrichten<br />
Einrichtmodus<br />
Um eine neue Adaptive Server-Installation einzurichten, verwenden Sie<br />
dataserver mit den Optionen -b und -z. Zum Beispiel:<br />
So richten Sie ein 100-MByte-Master-Device ein, wobei die logische<br />
Standard-Seitengröße (2 KByte) verwendet wird, und starten den Server:<br />
dataserver -d /var/sybase/masterdb.dat -b100M -sMASTER2K<br />
So richten Sie ein 100-MByte-Master-Device mit einer logischen<br />
Seitengröße von 4 KByte ein:<br />
dataserver -d /var/sybase/masterdb.dat -b100M -z4K -sMASTER4K<br />
So richten Sie ein Master-Device von 102.400 virtuellen Seiten mit<br />
der Größe von 2 KByte ein, erstellen Datenbanken mit einer logischen<br />
Seitengröße von 8 KByte und fahren den Server hoch:<br />
dataserver -d /var/sybase/masterdb.dat -b102400 -z8K -sMASTER8K<br />
Wenn der angeforderte Platzbedarf (102.400 x 2 KByte = 200 MByte)<br />
nicht ausreicht, um alle benötigten Systemdatenbanken mit der angegebenen<br />
logischen Seitengröße einzurichten, wird eine Fehlermeldung ausgegeben,<br />
und der Vorgang schlägt fehl.<br />
Beispiel Es folgt ein Beispiel der Ausgabe von dataserver, wobei ein 200-MByte-<br />
Device mit einer logischen Seitengröße von 2 KByte namens personnel2k<br />
eingerichtet wird:<br />
dataserver -d /var/sybase/personnel2k.dat -b200M -z2k -sPERSONNEL2K<br />
dataserver verwendet eine Standard-Konfigurationsdatei, wenn Sie keine<br />
angeben:<br />
00:00000:00000:2001/04/16 10:24:31.73 kernel Warning: Using default file<br />
'/var/sybase/PERSONNEL2K.cfg' since a configuration file was not specified.<br />
Specify a configuration file name in the RUNSERVER file to avoid this<br />
message.<br />
Um Ihre eigene Konfigurationsdatei anzugeben, verwenden Sie den Parameter<br />
-c von dataserver. Weitere Hinweise finden Sie in Kapitel 11, „Konfigurationsparameter<br />
einstellen“, in der Dokumentation Systemadministration für<br />
Adaptive Server Enterprise.<br />
4 Adaptive Server Enterprise
Kapitel 1 Das isql-Dienstprogramm verwenden<br />
Adaptive Server Version 12.5 behandelt jede Installation als ein Upgrade,<br />
unabhängig davon, ob Sie bereits eine Version von Adaptive Server haben oder<br />
nicht. Daher erhalten Sie bei Ausführung von dataserver die folgende Ausgabe:<br />
00:00000:00001:2001/04/16 10:24:32.63 server Database 'master' appears to<br />
be at an older revision than the present installation; SQL Server will assess<br />
it, and upgrade it as required.<br />
00:00000:00001:2001/04/16 10:24:32.66 server Database 'master': beginning<br />
upgrade step [ID 1]: Initialize disk and create empty allocation units on<br />
master device.<br />
00:00000:00001:2001/04/16 10:24:34.74 server Database 'master': beginning<br />
upgrade step [ID 2]: Bootstrap basic system catalogs in database.<br />
dataserver fährt mit der Erstellung der master-Datenbank fort, einschließlich<br />
aller Tabellen wie systypes, sysobjects und sysusages:<br />
00:00000:00001:2001/04/16 10:24:35.21 server Database 'master': beginning<br />
upgrade step [ID 3]: creating index (table systypes, index ncsystypes)<br />
00:00000:00001:2001/04/16 10:24:35.36 server Database 'master': beginning<br />
upgrade step [ID 4]: creating index (table sysobjects, index ncsysobjects)<br />
00:00000:00001:2001/04/16 10:24:35.44 server Database 'master': beginning<br />
upgrade step [ID 20]: creating table (table sysusages)<br />
[...]<br />
Wenn dataserver die master-Datenbank erstellt hat, wird die model-Datenbank<br />
erstellt:<br />
[...]<br />
00:00000:00001:2001/04/16 10:24:43.14 server Database 'model' appears to<br />
be at an older revision than the present installation; SQL Server will assess<br />
it, and upgrade it as required.<br />
00:00000:00001:2001/04/16 10:24:43.14 server Database 'model': beginning<br />
upgrade step [ID 1]: Initialize disk and create empty allocation units on<br />
master device.<br />
00:00000:00001:2001/04/16 10:24:43.83 server Database 'model': beginning<br />
upgrade step [ID 2]: Bootstrap basic system catalogs in database.<br />
00:00000:00001:2001/04/16 10:24:43.89 server Database 'model': beginning<br />
upgrade step [ID 3]: creating index (table systypes, index ncsystypes)<br />
00:00000:00001:2001/04/16 10:24:43.91 server Database 'model': beginning<br />
upgrade step [ID 4]: creating index (table sysobjects, index ncsysobjects)<br />
[...]<br />
<strong>Dienstprogramme</strong> 5
Ein neues Master-Device einrichten<br />
Wenn dataserver die model-Datenbank erstellt hat, werden die Datenbanken<br />
tempdb und sybsystemdb erstellt:<br />
[...]<br />
00:00000:00001:2001/04/16 10:24:45.23 server CREATE DATABASE: allocating<br />
1024 logical pages (2.0 megabytes) on disk 'master'.<br />
00:00000:00001:2001/04/16 10:24:46.79 server Database sybsystemdb<br />
successfully created.<br />
[...]<br />
dataserver war erfolgreich, wenn der Server die standardmäßige<br />
Sortierreihenfolge ändert und herunterfährt:<br />
[...]<br />
00:00000:00001:2001/04/16 10:24:47.23 server Now loading SQL Server's new<br />
default sort order and character set<br />
[...]<br />
00:00000:00001:2001/04/16 10:24:47.31 server Default Sort Order<br />
successfully changed.<br />
00:00000:00001:2001/04/16 10:24:47.37 server SQL Server shutdown after<br />
verifying System Indexes.<br />
00:00000:00001:2001/04/16 10:24:47.37 kernel ueshutdown: exiting<br />
Fehlermeldungen Falls dataserver fehlgeschlagen ist, können Sie den Server nicht auf dem<br />
Master-Device hochfahren, und es wird folgende Fehlermeldung ausgegeben:<br />
00:00000:00001:2001/04/16 19:02:39.53 kernel Use license file<br />
/var/sybase/SYSAM-1_0/licenses/license.dat.<br />
00:00000:00001:2001/04/16 19:02:39.54 kernel The master device's<br />
configuration area appears to be corrupt. The server needs this data to boot,<br />
and so cannot continue. The server will shut down.<br />
Wenn Sie dataserver mit einer benutzerdefinierten Konfigurationsdatei<br />
ausführen, die Optionen enthält, die die Zuweisung eines gemeinsam<br />
genutzten Segments und den Start eines Servers verhindern, schlägt dataserver<br />
fehl und gibt eine Fehlermeldung aus. Sie können in diesem Fall den Server<br />
nicht auf dem Master-Device hochfahren:<br />
00:00000:00001:2001/04/16 19:04:01.11 kernel Use license file<br />
/var/sybase/SYSAM-1_0/licenses/license.dat.<br />
00:00000:00000:2001/02/09 19:04:01.25 kernel Using config area from primary<br />
master device.<br />
00:00000:00001:2001/04/16 19:04:01.36 server The value of the 'max<br />
total_memory' parameter (33792) defined in the configuration file is not<br />
high enough to set the other parameter values specified in the configuration<br />
file. 'max total_memory' should be greater than the logical memory '34343'.<br />
6 Adaptive Server Enterprise
Start-Modus<br />
Kapitel 1 Das isql-Dienstprogramm verwenden<br />
Um eine vorhandene Adaptive Server-Installation zu starten, geben Sie<br />
dataserver ohne die Optionen -b und -z aus.<br />
dataserver -d /sybase/masterdb.dat<br />
Upgrade zu einem Server mit größeren Seitengrößen<br />
Adaptive Server vor der Version 12.5 haben logische Seitengrößen von<br />
2 KByte verwendet. Sie können die Seitengrößen einer Installation nicht<br />
durch ein Upgrade ändern. Das heißt, wenn Ihre derzeitige Adaptive Server-<br />
Installation logische Seiten von 2 KByte verwendet, kann das Ergebnis des<br />
Upgrades nur ein Adaptive Server sein, der ebenfalls logische Seiten von<br />
2 KByte verwendet.<br />
Sie können allerdings Datenbanken mit logischen 2-KByte-Seiten aus früheren<br />
Versionen von Adaptive Server migrieren. Hinweise dazu, wie Sie das dataxtr-<br />
Datenmigrations-Tool einsetzen, finden Sie in den Adaptive Server Enterprise-<br />
Versionshinweisen für Ihre Plattform.<br />
Die aktuellen Server-Beschränkungen anzeigen<br />
So zeigen Sie Informationen über die Beschränkungen einer Adaptive Server-<br />
Installation an:<br />
Die Ausgabe von dbcc serverlimits enthält die logische Seitengröße Ihres<br />
Servers. Dazu geben Sie beispielsweise ein:<br />
dbcc serverlimits<br />
Suchen Sie nach der Zeichenfolge „logical page size“ im Fehlerlog.<br />
Die globale Variable @@maxpagesize zeigt die logische Seitengröße des<br />
Servers an. Geben Sie an der isql-Eingabeaufforderung Folgendes ein:<br />
select @@maxpage size<br />
-----------<br />
8192<br />
<strong>Dienstprogramme</strong> 7
Ein neues Master-Device einrichten<br />
8 Adaptive Server Enterprise
KAPITEL 2 Das isql-Dienstprogramm<br />
verwenden<br />
Vorbereitungen<br />
Dieses Kapitel beschreibt das interaktive SQL-Dienstprogramm isql.<br />
Thema Seite<br />
Vorbereitungen 9<br />
isql starten und stoppen 10<br />
Transact-SQL in isql verwenden 10<br />
Das Befehlsabschlusszeichen ändern 13<br />
Wechselwirkung von Performance-Statistik und<br />
Befehlsabschlusszeichen-Werten<br />
14<br />
Netzwerkpaketgröße einstellen 15<br />
Eingabe- und Ausgabedateien 16<br />
Eine ausführliche Beschreibung der isql-Syntax finden Sie unter isql auf<br />
Seite 227.<br />
Wenn Sie Open Client Version 11.1 oder später ausführen und eine<br />
externe <strong>Sybase</strong>-Konfigurationsdatei verwenden, müssen Sie Folgendes<br />
Ihrer Konfigurationsdatei hinzufügen, um isql zu aktivieren:<br />
[CTISQL]<br />
<strong>Dienstprogramme</strong> 9
isql starten und stoppen<br />
isql starten und stoppen<br />
Um isql zu starten, geben Sie an der Betriebssystem-Eingabeaufforderung<br />
den folgenden Befehl ein:<br />
isql<br />
Wenn die Eingabeaufforderung erscheint, geben Sie Ihr Kennwort ein.<br />
Das Kennwort wird während der Eingabe nicht angezeigt. Die isql-<br />
Eingabeaufforderung wird angezeigt:<br />
1><br />
Sie können nun Transact-SQL-Befehle eingeben.<br />
Um isql zu beenden, geben Sie einen der folgenden Befehle in einer neuen<br />
Zeile ein:<br />
quit<br />
exit<br />
Transact-SQL in isql verwenden<br />
isql sendet Transact-SQL-Befehle an Adaptive Server, wobei die Ergebnisse<br />
formatiert und an die Standardausgabe ausgegeben werden. Es gibt keine<br />
maximale Größe für eine isql-Anweisung. Weitere Hinweise zur Verwendung<br />
von Transact-SQL finden Sie in der Dokumentation Transact-SQL<br />
User’s Guide.<br />
Hinweis Um Transact-SQL mit dem Dienstprogramm isql direkt vom<br />
Betriebssystem aus verwenden zu können, müssen Sie ein Konto (Login)<br />
auf Adaptive Server haben.<br />
Um einen Transact-SQL-Befehl auszuführen, geben Sie das Standard-<br />
Befehlsabschlusszeichen „go“ auf einer neuen Zeile ein.<br />
10 Adaptive Server Enterprise
Beispiel:<br />
isql<br />
Kennwort:<br />
isql-Ausgabe formatieren<br />
1> use pubs2<br />
2> go<br />
1> select *<br />
2> from authors<br />
3> where city = "Oakland"<br />
4> go<br />
Kapitel 2 Das isql-Dienstprogramm verwenden<br />
Tabelle 2-1 beschreibt die Optionen, die das Format der isql-Ausgabe ändern:<br />
Tabelle 2-1: Formatoptionen bei isql<br />
Option Standardwerte Bedeutung<br />
-h Headers 1 Anzahl der Zeilen, die zwischen Spaltentiteln<br />
anzuzeigen ist<br />
-s Spaltentrennzeichen Einzelne Leerstelle Ändert das Spaltentrennzeichen<br />
-w Spaltenbreite 80 Zeichen Ändert die Zeilenbreite<br />
-e Bezieht jeden an isql ausgegebenen Befehl in die<br />
Ausgabe ein<br />
-n Entfernt Nummerierung und<br />
Eingabeaufforderungssymbole<br />
In diesem Beispiel werden die Ergebnisse der Abfrage in eine Datei namens<br />
output geschrieben:<br />
isql -Uuser_name -Ppassword -Sserver -e -n -o output<br />
use pubs2<br />
go<br />
select *<br />
from authors<br />
where city = "Oakland"<br />
go<br />
quit<br />
Um den Inhalt von output anzuzeigen, geben Sie Folgendes ein:<br />
Unter Windows NT:<br />
type output<br />
<strong>Dienstprogramme</strong> 11
Transact-SQL in isql verwenden<br />
Auf UNIX-Plattformen:<br />
cat output<br />
select *<br />
from authors<br />
where city = "Oakland"<br />
au_id au_lname au_fname<br />
phone address<br />
city state country postalcode<br />
----------- -------------------------------------------- -----------<br />
--------<br />
---------- ----------------------------------------<br />
------------------ ---- ----------- -----------<br />
213-46-8915 Green Marjorie<br />
415 986-7020 309 63rd St. #411<br />
Oakland CA USA 94618<br />
274-80-9391 Straight Dick<br />
415 834-2919 5420 College Av.<br />
Oakland CA USA 94609<br />
724-08-9931 Stringer Dirk<br />
415 843-2991 5420 Telegraph Av.<br />
Oakland CA USA 94609<br />
724-80-9391 MacFeather Stearns<br />
415 354-7128 44 Upland Hts.<br />
Oakland CA USA 94612<br />
756-30-7391 Karsen Livia<br />
415 534-9219 5720 McAuley St.<br />
Oakland CA USA 94609<br />
Eingabe korrigieren<br />
Hinweis Die output-Datei enthält nicht das Befehlsabschlusszeichen.<br />
Wenn Sie einen Fehler machen, während Sie einen Transact-SQL-Befehl<br />
eingeben, haben Sie folgende Möglichkeiten:<br />
Drücken Sie Strg-c oder geben Sie das Wort „reset“ auf einer eigenen<br />
Zeile ein. Daraufhin wird der Abfragepuffer bereinigt und die isql-<br />
Eingabeaufforderung angezeigt.<br />
Schreiben Sie den Namen Ihres Texteditors auf eine eigene Zeile. Dadurch<br />
wird eine Textdatei geöffnet, in der Sie die Abfrage bearbeiten können.<br />
Wenn Sie die Datei bearbeitet und gespeichert haben, kehren Sie zu isql<br />
zurück, und die korrigierte Abfrage wird angezeigt. Geben Sie „go“ ein,<br />
um sie auszuführen.<br />
12 Adaptive Server Enterprise
set-Optionen, die sich auf die Ausgabe auswirken<br />
Kapitel 2 Das isql-Dienstprogramm verwenden<br />
Tabelle 2-2 listet die set-Optionen auf, die die Transact-SQL-Ausgabe<br />
betreffen. Ausführliche Hinweise zu set finden Sie in der Dokumentation<br />
Reference Manual.<br />
Tabelle 2-2: set-Optionen, die sich auf die Transact-SQL-Ausgabe<br />
auswirken<br />
set-Option Standardwerte Bedeutung<br />
char_convert Aus Schaltet die Zeichensatzkonvertierung zwischen Adaptive Server und<br />
einem Client ein und aus; startet außerdem eine Konvertierung zwischen<br />
dem Serverzeichensatz und einem unterschiedlichen Clientzeichensatz.<br />
fipsflagger Aus Warnt, falls irgendwelche Transact-SQL-Erweiterungen zur Einstiegsebene<br />
SQL92 verwendet werden. Mit dieser Option werden die SQL-<br />
Erweiterungen nicht deaktiviert. Die Prozessverarbeitung wird fortgesetzt,<br />
wenn Sie den nicht zum ANSI-Standard gehörenden SQL-Befehl eingeben.<br />
flushmessage Aus Versendet Meldungen, während sie erzeugt werden.<br />
language us_english Stellt die Sprache für Systemmeldungen ein.<br />
nocount Aus Schaltet die Ausgabe der Anzahl der betroffenen Zeilen aus.<br />
noexec Aus Kompiliert jede Abfrage, führt sie jedoch nicht aus; häufig mit showplan<br />
verwendet.<br />
parseonly Aus Überprüft die Syntax von Abfragen und gibt Fehlermeldungen aus,<br />
ohne die Abfragen zu kompilieren oder auszuführen.<br />
showplan Aus Erzeugt eine Beschreibung des Verarbeitungsplans für eine Abfrage;<br />
gibt keine Ergebnisse aus, wenn die Option innerhalb einer gespeicherten<br />
Prozedur oder eines Triggers verwendet wird.<br />
statistics io<br />
statistics time<br />
Aus Zeigt die Performance-Statistik nach jeder Ausführung an.<br />
statistics Aus Zeigt die Anzahl der Cachetreffer, Cachefehlanzeigen und Zeilen im<br />
subquerycache<br />
Unterabfragencache für jede Unterabfrage an.<br />
textsize 32KB Steuert die Anzahl der Bytes von ausgegebenen Text- oder Bild-Daten.<br />
Das Befehlsabschlusszeichen ändern<br />
Wenn Sie das Befehlsabschlusszeichen-Argument (-c) verwenden, können Sie<br />
Ihr eigenes Abschlusszeichensymbol festlegen. go ist der Standartwert dieser<br />
Option. Sie müssen das Befehlsabschlusszeichen immer ohne vorangestellte<br />
Tabulatoren oder Leerzeichen eingeben.<br />
<strong>Dienstprogramme</strong> 13
Wechselwirkung von Performance-Statistik und Befehlsabschlusszeichen-Werten<br />
Um zum Beispiel einen Punkt als Befehlsabschlusszeichen zu verwenden,<br />
rufen Sie isql folgendermaßen auf:<br />
isql -c.<br />
Eine isql-Mustersitzung mit diesem Befehlsabschlusszeichen sieht<br />
folgendermaßen aus:<br />
1> select name from sysusers<br />
2> .<br />
name<br />
----------sandy<br />
kim<br />
leslie<br />
(3 rows affected)<br />
Wenn Sie die isql-Befehlsabschlusszeichen-Option in Skripten verwenden<br />
wollen, müssen Sie Ihre Programmierarbeit entsprechend planen:<br />
In Adaptive Server mitgelieferte Skripten, z.B. installmaster, verwenden<br />
„go“. Ändern Sie das Befehlsabschlusszeichen nicht für Sitzungen, die<br />
diese Skripten verwenden.<br />
Ihre eigenen Skripten enthalten möglicherweise bereits „go“. Vergessen<br />
Sie nicht, Ihre Skripten zu aktualisieren, um das Abschlusszeichen<br />
einzufügen, das Sie verwenden möchten.<br />
Wechselwirkung von Performance-Statistik und<br />
Befehlsabschlusszeichen-Werten<br />
isql stellt eine Performance-Statistikoption (-p) zur Verfügung.<br />
Diese Syntax zum Beispiel gibt folgende Statistikdaten zurück:<br />
isql -p<br />
1> select * from sysobjects<br />
2> go<br />
Execution Time (ms.): 1000 Clock Time (ms.): 1000<br />
1 xact:<br />
14 Adaptive Server Enterprise
Kapitel 2 Das isql-Dienstprogramm verwenden<br />
Die Ausgabe bedeutet, dass eine einzelne Transaktion 100 Millisekunden<br />
gebraucht hat. Der Uhrzeitwert bezieht sich auf die gesamte Transaktion,<br />
die beginnt, wenn Client-Library die Abfrage kompiliert, und endet,<br />
wenn Client-Library die Information von Adaptive Server zurückmeldet.<br />
Sie können die Performance-Statistik auf der Grundlage von einer oder<br />
mehreren Transaktionen zusammenstellen. Um die Statistik aus mehr als<br />
einer Transaktion zusammenzustellen, geben Sie eine Zahl nach dem<br />
Befehlsabschlusszeichen ein.<br />
Der folgende Befehl zum Beispiel weist Adaptive Server an, drei select *-<br />
Transaktionen auszuführen und die Performance-Statistik auszugeben:<br />
isql -p<br />
1> select * from sysobjects<br />
2> go 3<br />
Netzwerkpaketgröße einstellen<br />
Execution Time (ms.): 1000 Clock Time (ms.): 1000<br />
Execution Time (ms.): 1000 Clock Time (ms.): 2000<br />
Execution Time (ms.): 1000 Clock Time (ms.): 1000<br />
Execution Time (ms.): 1000 Clock Time (ms.): 4000<br />
3xact:<br />
Das korrekte Einstellen der Netzwerkpaketgröße kann die Performance von<br />
Adaptive Server erheblich verbessern.<br />
Die Option -A Größe gibt die Netzwerkpaketgröße an, die in einer isql-Sitzung<br />
verwendet werden soll. Um zum Beispiel die Paketgröße auf 2048 Byte für die<br />
aktuelle isql-Sitzung einzustellen, geben Sie Folgendes ein:<br />
Auf UNIX-Plattformen:<br />
isql -A 2048<br />
Unter Windows NT:<br />
load isql -A 2048<br />
Um Ihre Netzwerkpaketgröße zu überprüfen, geben Sie Folgendes ein:<br />
select * from sysprocesses<br />
<strong>Dienstprogramme</strong> 15
Eingabe- und Ausgabedateien<br />
Der Wert für diese isql-Sitzung wird unterhalb des network_pktsz-Titels in der<br />
Tabelle sysprocesses angezeigt.<br />
Weitere Hinweise zum Einstellen der Netzwerkpaketgröße finden Sie in der<br />
Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
Eingabe- und Ausgabedateien<br />
UNIX-Befehlszeile umleiten<br />
Sie können in der Befehlszeile mit den Optionen -i und -o Eingabe- und<br />
Ausgabedateien festlegen.<br />
isql stellt keine Formatierungsoptionen für die Ausgabe zur Verfügung. Sie<br />
können allerdings die Option -n verwenden, um die isql-Eingabeaufforderungen<br />
und andere Tools zu entfernen, wenn Sie die Ausgabe neu<br />
formatieren möchten.<br />
Wenn Sie die Option -e verwenden, zeigt isql die Eingabe in der Ausgabe an<br />
(Echo). Die resultierende Ausgabedatei enthält sowohl die Abfragen als auch<br />
ihre Ergebnisse.<br />
Die UNIX-Umleitungssymbole „“ stellen einen ähnlichen<br />
Mechanismus wie die Optionen -i und -o zur Verfügung, und zwar<br />
folgendermaßen:<br />
isql -Usa < input > output<br />
Sie können isql anweisen, die Eingabe vom Terminal zu beziehen, wie im<br />
folgenden Beispiel gezeigt:<br />
isql -Usa -PKennwort -SServername Ausgabe<br />
use pubs2<br />
go<br />
select * from table<br />
go<br />
EOF<br />
„
KAPITEL 3 Daten mit bcp in und aus<br />
Adaptive Server übertragen<br />
Dieses Kapitel beschreibt, wie Sie mit dem Dienstprogramm für den<br />
Massenexport/-import von Daten, bcp, Daten zwischen Adaptive Server<br />
und einer Betriebssystemdatei verschieben.<br />
Thema Seite<br />
Methoden zum Verschieben von Daten 18<br />
bcp-Anforderungen 19<br />
bcp-Modi 21<br />
bcp-Performance 22<br />
Die bcp-Optionen verwenden 35<br />
Die Standardwerte ändern: Interaktiver bcp 38<br />
Formatdateien verwenden 50<br />
Beispiele: Daten interaktiv exportieren 54<br />
Beispiele: Daten interaktiv importieren 57<br />
bcp mit anderen Sprachen verwenden 61<br />
Importieren und Anweisungsfolgedateien 62<br />
Exportieren und Text- und Bilddaten 64<br />
Netzwerkpaketgröße festlegen 65<br />
Importieren und Fehlerdateien 65<br />
Exportieren und Fehlerdateien 67<br />
Datenintegrität: Standardwerte, Regeln und Trigger 67<br />
Wie unterscheidet sich bcp von anderen <strong>Dienstprogramme</strong>n? 68<br />
bcp ist eine bequeme und schnelle Methode zum Übertragen von Daten<br />
zwischen einer Datenbanktabelle oder Ansicht und einer Betriebssystemdatei.<br />
bcp kann Dateien in verschiedenen Formaten lesen oder schreiben.<br />
Wenn Sie aus einer Datei in die Tabelle kopieren, fügt bcp Daten in eine<br />
vorhandene Datenbanktabelle ein. Wenn Sie aus einer Tabelle in eine<br />
Datei kopieren, überschreibt bcp den vorhandenen Inhalt der Datei.<br />
Ausführliche Hinweise zur Syntax von bcp finden Sie unter bcp auf<br />
Seite 164.<br />
<strong>Dienstprogramme</strong> 17
Methoden zum Verschieben von Daten<br />
Methoden zum Verschieben von Daten<br />
Daten mit bcp<br />
Sie können die folgenden Methoden verwenden, um Daten in und aus Ihren<br />
Adaptive Server-Datenbanken zu verschieben:<br />
bcp als Standalone-Programm vom Betriebssystem. Dieses Kapitel enthält<br />
Hinweise zu dieser Methode.<br />
Client Library, um Bibliotheks-Routinen für die Massenmaterialisierung<br />
aufzurufen. Ausführliche Hinweise zur Client Library finden Sie in der<br />
Dokumentation Open Client and Open Server Common Libraries<br />
Reference Manual.<br />
Transact-SQL-Befehle können Daten nicht mit Massenmaterialisierung<br />
übertragen. Daher müssen Sie bei großen Übertragungsmengen bcp<br />
verwenden. Sie können bcp für die folgenden Aufgaben verwenden:<br />
Daten importieren, die vorher einem anderen Programm zugeordnet<br />
waren, wie zum Beispiel Datensätze von einem anderen Datenbank-<br />
Managementsystem. Dies ist die gängigste Verwendung von bcp.<br />
Bevor Sie bcp verwenden können, müssen Sie eine Datei der zu<br />
importierenden Datensätze erstellen. Gehen Sie folgendermaßen vor:<br />
a Legen Sie die zu übertragenden Daten in eine Betriebssystemdatei.<br />
b Führen Sie bcp von der Befehlszeile des Betriebssystems aus.<br />
Verschieben Sie Tabellen zwischen Adaptive Server-Installationen oder<br />
zwischen einer Adaptive Server-Installation und anderen Datenquellen,<br />
die eine Betriebssystemdatei generieren können.<br />
Kopieren Sie Daten aus einer Ansicht. Unter bcp auf Seite 164 wird die<br />
Syntax beschrieben, mit der bcp Daten aus einer Ansicht kopiert.<br />
Hinweis Sie können mit bcp keine Daten in eine Ansicht kopieren.<br />
18 Adaptive Server Enterprise
cp-Anforderungen<br />
Grundlegende<br />
Anforderungen<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Übertragen Sie Daten zur Verwendung mit anderen Programmen, zum<br />
Beispiel mit einem Tabellenkalkulationsprogramm. Führen Sie folgende<br />
Schritte durch, um Daten zu übertragen:<br />
a Verwenden Sie bcp, um die Daten von einer Adaptive Server-<br />
Installation in eine Betriebssystemdatei zu verschieben. Von hier<br />
aus kann das andere Programm die Daten importieren.<br />
b Wenn Sie die Bearbeitung Ihrer Daten mit dem anderen Programm<br />
abgeschlossen haben, kopieren Sie die Daten in eine Betriebssystemdatei<br />
und übertragen Sie sie mit bcp in die Adaptive Server-<br />
Installation.<br />
Adaptive Server kann Daten in jedem Zeichen- oder Binärformat annehmen,<br />
solange die Datendatei entweder die Länge der Felder oder die<br />
Abschlusszeichen (Zeichen zur Trennung von Spalten) angibt.<br />
Für bcp müssen die Strukturen der von der Übertragung betroffenen Tabellen<br />
nicht identisch sein, und zwar aus folgenden Gründen:<br />
Beim Import aus einer Datei werden die Daten an eine vorhandene<br />
Datenbanktabelle angehängt.<br />
Beim Export in eine Datei wird der vorherige Inhalt der Datei<br />
überschrieben.<br />
Nach dem Abschluss des Kopiervorgangs gibt bcp die folgenden<br />
Informationen aus: Anzahl der Zeilen, in die erfolgreich Daten kopiert wurden,<br />
Anzahl der Zeilen (falls vorhanden), die nicht kopiert werden konnten,<br />
Gesamtdauer des Kopiervorgangs, durchschnittliche Zeit in Millisekunden<br />
für das Kopieren einer Zeile, Anzahl der kopierten Zeilen pro Sekunde.<br />
Bevor Sie das Dienstprogramm bcp verwenden können, müssen Sie einige<br />
grundlegende Informationen eingeben sowie die Daten für die Übertragung<br />
und den Befehl für den Datenzugriff vorbereiten.<br />
Sie müssen die folgenden Informationen zur Verfügung stellen, um erfolgreich<br />
Daten in eine und aus einer Adaptive Server-Installation zu übertragen:<br />
Name der Datenbank und der Tabelle oder Ansicht<br />
Name der Betriebssystemdatei<br />
Richtung der Übertragung (in oder out)<br />
<strong>Dienstprogramme</strong> 19
cp-Anforderungen<br />
Darüber hinaus können Sie bcp verwenden, um wahlweise den Speichertyp,<br />
die Speicherlänge und das Abschlusszeichen der einzelnen Spalten zu ändern.<br />
Berechtigungen Um bcp verwenden zu können, müssen Sie ein Adaptive Server-Konto und die<br />
entsprechenden Berechtigungen für die Datenbanktabellen oder Ansichten und<br />
Betriebssystemdateien haben, die Sie übertragen werden.<br />
Um Daten in eine Tabelle kopieren zu können, müssen Sie über die insertund<br />
select-Berechtigung für die Tabelle verfügen.<br />
Um eine Tabelle in eine Betriebssystemdatei kopieren zu können, müssen<br />
Sie über die select-Berechtigung für die folgenden Tabellen verfügen:<br />
die zu kopierende Tabelle<br />
sysobjects<br />
syscolumns<br />
sysindexes<br />
Vorbereitende Tasks Bevor Sie bcp in verwenden können, müssen Sie den Befehl und die Daten für<br />
die Übertragung vorbereiten:<br />
Um schnellen oder langsamen bcp zu verwenden, stellen Sie select<br />
into/bulkcopy/pllsort auf true ein. Beispiel: Um diese Option für die<br />
Datenbank pubs2 zu aktivieren, können Sie Folgendes eingeben:<br />
sp_dboption pubs2, "select into/bulkcopy/pllsort", true<br />
Weitere Informationen finden Sie unter „bcp-Modi“ auf Seite 21.<br />
Um schnellen bcp zu verwenden, entfernen Sie Indizes und Trigger in<br />
der Zieltabelle. Weitere Hinweise zu dieser Anforderung finden Sie unter<br />
„bcp-Performance“ auf Seite 22.<br />
Zusätzlich:<br />
Wenn Sie Open Client Version 11.1 oder später ausführen und eine<br />
externe <strong>Sybase</strong>-Konfigurationsdatei verwenden, müssen Sie Folgendes<br />
hinzufügen, um bcp zu aktivieren:<br />
[BCP]<br />
Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version des Adaptive Servers einstellen, bevor Sie bcp<br />
verwenden können.<br />
20 Adaptive Server Enterprise
cp-Modi<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Um eine frühere Version von bcp verwenden zu können, müssen Sie<br />
die CS_BEHAVIOR-Eigenschaft im [bcp]-Abschnitt der ocs.cfg-<br />
Datei einstellen:<br />
[bcp]<br />
CS_BEHAVIOR = CS_BEHAVIOR_100<br />
Wenn CS_BEHAVIOR nicht auf CS_BEHAVIOR_100 eingestellt ist,<br />
können Sie die Funktionalität nur für bcp 11.1 oder später verwenden.<br />
bcp in kann in zwei Modi ausgeführt werden:<br />
Langsamer bcp – protokolliert alle durchgeführten Zeileneinfügungen;<br />
wird bei Tabellen verwendet, die ein oder mehrere Indizes oder<br />
Trigger haben.<br />
Schneller bcp – protokolliert nur Seitenzuweisungen, wobei Daten so<br />
schnell wie möglich in Tabellen ohne Indizes oder Trigger kopiert werden.<br />
Um den für Ihre Kopieraufgabe geeigneten bcp-Modus zu bestimmen,<br />
berücksichtigen Sie folgende Punkte:<br />
Die Größe der Tabelle, in die Sie Daten kopieren<br />
Die Menge der Daten, die Sie importieren<br />
Die Anzahl der Indizes auf der Tabelle<br />
Die Menge an freiem Datenbankdevice-Speicherplatz, der Ihnen zum<br />
Wiedererstellen der Indizes zur Verfügung steht<br />
Hinweis Schneller bcp steigert zwar möglicherweise die Performance,<br />
langsamer bcp erleichtert Ihnen jedoch die Wiederherstellbarkeit der Daten.<br />
<strong>Dienstprogramme</strong> 21
cp-Performance<br />
bcp-Performance<br />
Wenn Indizes und Trigger auf der Tabelle verbleiben, wird beim<br />
Massenexport/-import der Daten automatisch langsamer bcp verwendet.<br />
Allerdings füllt langsamer bcp das Transaktionslog sehr schnell.<br />
Wenn Sie eine große Anzahl von Zeilen kopieren, können die<br />
Performance-Einbußen und der Logspeicherplatz-Bedarf bei der<br />
Verwendung von langsamem bcp entscheidend sein.<br />
Bei extrem großen Tabellen ist die Verwendung von langsamem bcp keine<br />
echte Option, weil die Ausführung durch das ausführliche Log extrem<br />
verlangsamt wird.<br />
So können Sie die Performance von bcp steigern:<br />
Verwenden Sie partitionierte Tabellen. Mehrere bcp-Sitzungen mit einer<br />
partitionierten Tabelle können die Zeit, die zum Kopieren von Daten<br />
benötigt wird, deutlich reduzieren. Solche Performance-Steigerungen<br />
sind bei schnellem bcp deutlicher als bei langsamem bcp.<br />
Verwenden Sie bcp im parallelen Modus, um die Performance deutlich<br />
zu verbessern. Paralleler Massenexport/-import der Daten kann eine<br />
ausgeglichene Datenverteilung in den Partitionen bewirken. Weitere<br />
Hinweise finden Sie unter „Mit parallelem Massenexport/-import Daten<br />
in eine bestimmte Partition kopieren“ auf Seite 29.<br />
Schnellen oder langsamen bcp verwenden<br />
Das Vorhandensein von Indizes und Triggern auf Tabellen wirkt sich<br />
auf die Geschwindigkeit der Übertragung aus. Wenn Sie bcp auf solchen<br />
Tabellen verwenden, verwendet bcp automatisch den langsamen Modus,<br />
der Dateneinfügungen im Transaktionslog protokolliert. Dadurch kann<br />
das Transaktionslog sehr groß werden.<br />
Um diese Datenmassen zu bewältigen und um sicherzustellen, dass die<br />
Datenbank bei einem Ausfall voll wiederherstellbar ist, können Sie das<br />
Log mit dump transaction sichern.<br />
Hinweis bcp löst keinen Trigger auf der Zieltabelle aus.<br />
22 Adaptive Server Enterprise
Tabellen mit Indizes<br />
oder Triggern<br />
kopieren<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Schneller bcp protokolliert nur Seitenzuweisungen. Beim Kopieren von Daten<br />
in eine Tabelle ist bcp am schnellsten, wenn Ihre Datenbanktabelle keine<br />
Indizes oder Trigger hat.<br />
Wenn Sie allerdings langsamen bcp verwendet haben, um Dateneinfügungen<br />
durchzuführen (die vom schnellen bcp nicht protokolliert werden), können Sie<br />
das Transaktionslog nicht mit einem dump-Befehl auf einem Device sichern.<br />
Die Änderungen sind nicht im Log verzeichnet und ein Zurückladen der nicht<br />
vorhandenen Sicherungsdaten ist nicht möglich. Die erforderliche Sicherung<br />
(dump transaction) erzeugt eine Fehlermeldung, in der Sie aufgefordert werden,<br />
statt dessen dump database zu verwenden. Diese Einschränkung bleibt bis zur<br />
erfolgreichen Ausführung von dump database bestehen.<br />
Weitere Hinweise zu dump database und dump transaction finden Sie in den<br />
Dokumentationen Systemadministration für Adaptive Server Enterprise und<br />
Reference Manual.<br />
Das bcp-Programm ist optimal darauf abgestimmt, Daten in Tabellen zu laden,<br />
die keine ihnen zugeordneten Indizes oder Trigger haben. Das Programm<br />
kopiert so schnell wie möglich Daten in Tabellen ohne Indizes oder Trigger<br />
und beschränkt dabei die Protokollierung im Transaktionslog auf ein<br />
Minimum. Seitenzuordnungen werden logmäßig erfasst, die Einfügung<br />
von Zeilen hingegen nicht.<br />
Wenn Sie Daten in eine Tabelle kopieren, die einen oder mehrere Indizes oder<br />
Trigger hat, wird automatisch eine langsamere Version von bcp verwendet, die<br />
die Zeileneinfügungen protokolliert. Dies gilt auch für Indizes, die implizit mit<br />
der eindeutigen Identitätsregel einer create table-Anweisung erstellt wurden.<br />
bcp erzwingt jedoch keine anderen Integritätsregeln, die für eine Tabelle<br />
definiert sind.<br />
Standardmäßig ist die select into/bulkcopy/pllsort-Option in neu erstellten<br />
Datenbanken auf false (aus) eingestellt. Um diesen Standardwert zu ändern,<br />
schalten Sie diese Option in der model-Datenbank ein.<br />
Hinweis Das Log kann während langsamem bcp stark anwachsen, da<br />
das bcp-Programm Einfügungen in einer Tabelle mit Indizes und Triggern<br />
protokolliert. Nachdem der Massenexport/-import der Daten abgeschlossen ist,<br />
stellen Sie mit dump database eine Sicherung der Datenbank her und kürzen<br />
dann das Log mit dump transaction, nachdem der Massenexport/-import<br />
der Daten abgeschlossen ist und Sie Ihre Datenbank mit dump database<br />
gesichert haben.<br />
<strong>Dienstprogramme</strong> 23
cp-Performance<br />
Während die select into/bulkcopy/pllsort-Option eingeschaltet ist, können<br />
Sie das Transaktionslog nicht sichern. Die Ausgabe der Anweisung dump<br />
transaction erzeugt eine Fehlermeldung, in der Sie aufgefordert werden,<br />
stattdessen dump database zu verwenden.<br />
Achtung! Sichern Sie Ihre Datenbank, bevor Sie die select into/bulkcopy/pllsort-<br />
Option ausschalten. Wenn Sie unprotokollierte Daten in Ihre Datenbank<br />
eingefügt haben und Sie dump transaction vor dump database durchführen,<br />
werden Sie nicht in der Lage sein, Ihre Daten wiederherzustellen.<br />
Schneller bcp läuft langsamer, während ein dump database-Befehl<br />
ausgeführt wird.<br />
Tabelle 3-1 zeigt, welche Version von bcp beim Importieren verwendet wird,<br />
welche Einstellungen für die select into/bulkcopy/pllsort-Option erforderlich<br />
sind und ob ein Transaktionslog geführt wird und gesichert werden kann.<br />
Tabelle 3-1: Vergleiche von schnellem und langsamem bcp<br />
select into/bulkcopy/pllsort ein aus<br />
schneller bcp (keine Indizes oder OK<br />
bcp nicht zulässig<br />
Trigger auf Zieltabelle)<br />
dump transaction nicht zulässig dump transaction<br />
langsamer bcp (ein oder mehrere<br />
Indizes oder Trigger)<br />
Hinweis Die Performance-Einbuße beim Kopieren von Daten in eine Tabelle,<br />
die Indizes und Trigger enthält, kann schwerwiegend sein. Wenn Sie eine sehr<br />
große Anzahl von Zeilen kopieren, kann es schneller sein, alle Indizes und<br />
Trigger im Voraus mit drop index (oder alter table bei Indizes, die mit einer<br />
Eindeutigkeits-Integritätsregel erstellt sind) und drop trigger zu löschen, die<br />
Datenbankoption einzustellen, die Daten in die Tabelle zu kopieren, die Indizes<br />
und Trigger neu zu erstellen und dann die Datenbank zu sichern. Denken<br />
Sie daran, Plattenspeicherplatz für die Erstellung der Indizes und Trigger<br />
zuzuweisen: ungefähr 2,2 Mal die Menge des Speicherplatzes, der für die<br />
Daten benötigt wird.<br />
24 Adaptive Server Enterprise<br />
OK<br />
dump transaction nicht zulässig<br />
OK<br />
dump transaction OK
Datenbanken für<br />
schnellen bcp<br />
konfigurieren<br />
Indizes und<br />
Trigger löschen<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Um einem Benutzer das Kopieren von Daten mit schnellem bcp zu<br />
ermöglichen, muss der Systemadministrator oder Datenbankeigentümer<br />
zunächst mit sp_dboption den Befehl select into/bulkcopy/pllsort auf der<br />
Datenbank, die die Zieltabellen enthält, auf true einstellen. Wenn die Option<br />
auf false gesetzt ist und ein Benutzer versucht, mit schnellem bcp Daten in<br />
eine Tabelle zu kopieren, die keine Indizes oder Trigger hat, erzeugt Adaptive<br />
Server eine Fehlermeldung.<br />
Hinweis Sie müssen die select into/bulkcopy/pllsort-Option nicht auf true setzen,<br />
um Daten aus einer Tabelle zu exportieren oder in eine Tabelle zu importieren,<br />
die Indizes und Trigger hat. Langsames bcp kopiert stets Tabellen mit Indizes<br />
und Triggern und protokolliert alle Einfügungen.<br />
Standardmäßig ist die Option select into/bulkcopy/pllsort in neu erstellten<br />
Datenbanken auf false (aus) eingestellt. Um die Standardeinstellung für<br />
zukünftige Datenbanken zu ändern, aktivieren Sie die Option (eingestellt<br />
auf true) in der model-Datenbank.<br />
Wenn Sie eine große Anzahl von Zeilen kopieren, muss der Speicherplatz<br />
1,2 Mal größer sein als die vorhandene Datenmenge. Außerdem muss der<br />
Speicherplatz für den Server groß genug sein, um einen Clustered-Index<br />
wieder aufzubauen.<br />
Wenn ausreichend Platz vorhanden ist, können Sie mit drop index und drop<br />
trigger alle Indizes und Trigger vorher löschen.<br />
Wenn nicht genügend Platz vorhanden ist, um die Daten zu sortieren und<br />
den Index oder die Indizes zu kompilieren, verwenden Sie langsames bcp.<br />
Daten mit schnellem bcp importieren<br />
Tabelle 3-2 fasst die Schritte beim Importieren von Daten in eine Adaptive<br />
Server-Installation unter Verwendung von schnellem bcp zusammen.<br />
Tabelle 3-2: Schritte beim Importieren von Daten mit schnellem bcp<br />
Schritt Berechtigung<br />
Stellen Sie den Befehl select into/bulkcopy/pllsort mit sp_dboption Systemadministrator oder<br />
auf true ein.<br />
Datenbankeigentümer<br />
Führen Sie in der geänderten Datenbank den Befehl checkpoint aus.<br />
Vergewissern Sie sich, dass Sie genügend Speicherplatz haben, um etwaige<br />
Indizes oder Trigger auf der Tabelle neu erstellen zu können.<br />
Löschen Sie die Indizes und Trigger auf der Tabelle.<br />
Tabelleneigentümer<br />
<strong>Dienstprogramme</strong> 25
cp-Performance<br />
Schritt Berechtigung<br />
Vergewissern Sie sich, dass Sie über die insert-Berechtigung für<br />
die Tabelle verfügen.<br />
Vom Tabelleneigentümer erteilt<br />
Führen Sie den Import mit bcp aus. Alle Benutzer mit insert-Berechtigung<br />
Erstellen Sie die Indizes und Trigger neu. Tabelleneigentümer<br />
Stellen Sie sp_dboption gegebenenfalls neu ein und führen Sie checkpoint<br />
in der Datenbank aus, die geändert wurde.<br />
Systemadministrator oder<br />
Datenbankeigentümer<br />
Verwenden Sie dump database, um die eben eingefügten Daten zu sichern. Systemadministrator, Operator oder<br />
Datenbankeigentümer<br />
Führen Sie gespeicherte Prozeduren oder Abfragen aus, um festzustellen,<br />
ob die neu geladenen Daten Regeln verletzen.<br />
Tabelleneigentümer oder Eigentümer<br />
der gespeicherten Prozedur<br />
Mit dem Massenexport/-import Daten in partitionierte Tabellen<br />
kopieren<br />
Unter bestimmten Umständen können Sie die Performance von bcp deutlich<br />
steigern, indem Sie mehrere bcp-Sitzungen mit einer partitionierten Tabelle<br />
ausführen.<br />
Partitionierte Tabellen erhöhen die Einfügegeschwindigkeit, indem<br />
Sperrenkonflikte vermindert und I/O-Vorgänge über mehrere Devices verteilt<br />
werden. Die bcp-Performance mit partitionierten Tabellen wird hauptsächlich<br />
durch verteilte I/O-Vorgänge gesteigert.<br />
Wenn Sie eine bcp-Sitzung ausführen, bedenken Sie Folgendes:<br />
Eine partitionierte Tabelle erhöht die Performance nur, wenn Sie mit dem<br />
Massenexport/-import Daten in die Tabelle kopieren (importieren).<br />
Die Performance-Steigerung von langsamem bcp ist bei partitionierten<br />
Tabellen nicht so deutlich festzustellen. Löschen Sie stattdessen alle<br />
Indizes und Trigger und verwenden Sie zur Performance-Steigerung<br />
schnelles bcp, wie in Tabelle 3-2 auf Seite 25 beschrieben.<br />
Im Netzwerkverkehr können Engpässe eintreten, wenn mehrere bcp-<br />
Sitzungen ausgeführt werden. Verwenden Sie wenn möglich eine lokale<br />
Verbindung zur Adaptive Server-Installation, um dieses Problem zu<br />
vermeiden.<br />
26 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Es gibt zwei Methoden, Daten in eine partitionierte Heap-Tabelle zu kopieren:<br />
Die Daten nach dem Zufallsprinzip (ungesteuert) kopieren, ohne Bezug<br />
auf die Partition, in die Daten kopiert werden<br />
Die Daten in eine bestimmte Partition kopieren<br />
Wenn die Tabelle einen Clustered-Index hat, wird bcp verwendet, und der<br />
Index steuert die Platzierung der Zeilen.<br />
❖ Daten ungesteuert in Partitionen kopieren<br />
Um Daten ungesteuert in partitionierte Tabellen unter Verwendung mehrerer<br />
bcp-Sitzungen zu kopieren, führen Sie die folgenden Schritte durch:<br />
1 Konfigurieren Sie die Tabelle mit so vielen Partitionen und physischen<br />
Devices, wie es Ihr System erfordert.<br />
Weitere Hinweise finden Sie in der Dokumentation Performance and<br />
Tuning Guide und unter „Mit parallelem Massenexport/-import Daten<br />
in eine bestimmte Partition kopieren“ auf Seite 29 dieses Handbuchs.<br />
2 Achten Sie darauf, dass Adaptive Server mit genug Sperren konfiguriert<br />
ist, um mehrere bcp-Sitzungen zu unterstützen. Informationen zum<br />
Konfigurieren von Sperren finden Sie in der Dokumentation<br />
Systemadministration für Adaptive Server Enterprise.<br />
3 Entfernen Sie Trigger und Indizes auf der Tabelle und aktivieren Sie<br />
schnellen bcp. Anleitungen finden Sie unter „Schnellen oder langsamen<br />
bcp verwenden“ auf Seite 22.<br />
Hinweis Wenn Sie langsamen bcp verwenden, erhöht sich die<br />
Performance möglicherweise nicht im gewünschten Ausmaß, nachdem<br />
Sie Trigger und Indizes entfernt haben. Wenn die Tabelle Indizes enthält,<br />
kann es zusätzlich Deadlocks auf den Indexseiten geben.<br />
4 Teilen Sie die bcp-Eingabedatei auf so viele gleich große Dateien auf,<br />
wie die Anzahl der geplanten bcp-Sitzungen beträgt.<br />
Sie können auch die Optionen -F first_row und -L last_row verwenden,<br />
um den Start und das Ende der einzelnen Eingabedateien anzugeben.<br />
5 Führen Sie die bcp-Sitzungen mit separaten Dateien parallel und wenn<br />
möglich auf der lokalen Adaptive Server-Installation aus.<br />
Auf UNIX-Plattformen können Sie zum Beispiel verschiedene Sitzungen<br />
in verschiedenen Shell-Fenstern ausführen oder einzelne bcp-Sitzungen<br />
im Hintergrund starten.<br />
<strong>Dienstprogramme</strong> 27
cp-Performance<br />
Eine ausführliche Beschreibung des Kopierens von Daten in partitionierte<br />
Tabellen finden Sie in der Dokumentation Performance and Tuning Guide.<br />
bcp-Sitzungen mit dbcc checktable und sp_helpsegment überwachen<br />
Wenn Sie nicht festlegen, welche Partitionen die bcp-Sitzungen verwenden<br />
sollen, ordnet Adaptive Server die mehrfachen bcp-Sitzungen nach eigenem<br />
Ermessen den verfügbaren Partitionen der Tabelle zu. Wenn Sie diese<br />
ungesteuerte Zuordnung verwenden, stellen Sie sicher, dass der Prozess die<br />
Einfügungen gleichmäßig verteilt hat, indem Sie eines der folgenden Verfahren<br />
verwenden:<br />
dbcc checktable – um in regelmäßigen Abständen die Gesamtseitenanzahl<br />
für die einzelnen Partitionen zu prüfen<br />
sp_helpsegment oder sp_helpartition – um eine ähnliche Prüfung<br />
durchzuführen, aber ohne die Datenbankobjekte zu sperren<br />
Weitere Hinweise zu dbcc checktable finden Sie in der Dokumentation<br />
Systemadministration für Adaptive Server Enterprise. Weitere Hinweise<br />
zu sp_helpsegment und sp_helpartition finden Sie in der Dokumentation<br />
Reference Manual.<br />
Weitere Hinweise zu Tabellenpartitionen finden Sie in der Dokumentation<br />
Performance and Tuning Guide.<br />
Vermindertes Protokollieren durch Erhöhung der Seitenzuweisungen<br />
Wenn Sie schnelles bcp verwenden, bedenken Sie, dass jede bcp in -<br />
Anweisungsfolge den Seiten-Manager veranlasst, einen oder mehrere Extents<br />
zuzuweisen. Jede solche Seitenzuweisung erzeugt einen einzelnen Logeintrag.<br />
Mit dem Konfigurationsparameter number of preallocated extents können Sie<br />
festlegen, wie viele Extents Adaptive Server durch den Seiten-Manager<br />
zuweisen soll.<br />
Für den Konfigurationsparameter number of preallocated extents sind<br />
Werte von 0 bis 31 zulässig. Der Standardwert ist 2.<br />
Sie müssen Adaptive Server neu starten, um diesen Wert zu ändern.<br />
Erhöhen Sie diese Zahl, wenn Sie große bcp-Vorgänge durchführen,<br />
um zu verhindern, dass Seitenzuweisungen das Log auffüllen.<br />
Setzen Sie diesen Wert auf 0, um umfangreiche Extent-Zuweisungen zu<br />
verhindern, damit der Seiten-Manager nur einzelne Seitenzuweisungen<br />
durchführt.<br />
28 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Da Adaptive Server möglicherweise mehr Seiten zuordnet, als tatsächlich<br />
benötigt werden, sollten Sie diesen Wert niedrig halten, wenn der Speicherplatz<br />
beschränkt ist. Diese Seiten werden am Ende der Anweisungsfolge<br />
freigegeben.<br />
Weitere Hinweise finden Sie in der Dokumentation Systemadministration für<br />
Adaptive Server Enterprise.<br />
Mit parallelem Massenexport/-import Daten in eine bestimmte<br />
Partition kopieren<br />
Verwenden Sie den parallelen Massenexport/-import von Daten, um parallel in<br />
eine bestimmte Partition zu kopieren. Das Bulk-Copy-Dienstprogramm erhöht<br />
die Performance während bcp-Sitzungen deutlich, weil große bcp-Aufträge in<br />
mehrere Sitzungen aufgeteilt und gleichzeitig ausgeführt werden können.<br />
So verwenden Sie den parallelen Massenexport/-import der Daten:<br />
Die Zieltabelle muss partitioniert sein.<br />
Mit sp_helpartition können Sie die Anzahl der Partitionen auf der<br />
Tabelle anzeigen.<br />
Verwenden Sie alter table ... partition, um die Tabelle aufzuteilen,<br />
wenn die Tabelle noch nicht partitioniert ist.<br />
Die Zieltabelle sollte aus folgenden Gründen keine Indizes enthalten:<br />
Wenn die Tabelle einen Clustered-Index hat, bestimmt der Index die<br />
physische Platzierung der Daten, und die Partitionsspezifikation im<br />
bcp-Befehl wird ignoriert.<br />
Wenn irgendein Index vorhanden ist, verwendet bcp automatisch die<br />
langsame statt der schnellen Version.<br />
Wenn Nonclustered-Indizes auf den Tabellen vorkommen, kann der<br />
Massenexport/-import der Daten leicht zu Deadlocks auf Indexseiten<br />
führen.<br />
Die beste Performance erhalten Sie, wenn sich jede Partition auf einer<br />
anderen physischen Festplatte befindet.<br />
<strong>Dienstprogramme</strong> 29
cp-Performance<br />
Große Datei aufgeteilt in<br />
vier kleinere Dateien<br />
Datei 1<br />
Datei 2<br />
Datei 3<br />
Datei 4<br />
Bevor Sie Daten in Ihre Datenbank kopieren, müssen Sie die Tabelle<br />
aufteilen, die die Daten enthalten wird.<br />
Paralleler Massenexport/-import der Daten kann in eine Tabelle<br />
aus mehreren Betriebssystemdateien kopieren. Hierzu führen Sie<br />
Folgendes aus:<br />
bcp Tabellenname :Partitionsnummer in Dateiname<br />
Abbildung 3-1 zeigt den parallelen Massenexport/-import der Daten.<br />
Abbildung 3-1: Daten in eine partitionierte Tabelle mit parallelem<br />
Massenexport/-import kopieren<br />
bcp mydb..bigtable:1 in Datei 2 &<br />
Kopie in Partition 1<br />
bcp mydb..bigtable:2 in Datei 2 &<br />
Kopie in Partition 2<br />
Kopie in Partition 3<br />
bcp mydb..bigtable:3 in Datei 2 &<br />
Kopie in Partition 4<br />
bcp mydb..bigtable:4 in Datei 2 &<br />
Partitionierte Tabelle<br />
Weitere Hinweise zur Partitionierung von Tabellen finden Sie in der<br />
Dokumentation Performance and Tuning Guide.<br />
Hinweis Wenn Sie den parallelen Massenexport/-import der Daten verwenden,<br />
um Daten zu exportieren, können Sie nicht bestimmen, welche Partitionen bcp<br />
verwenden soll.<br />
30 Adaptive Server Enterprise
cp-Import und Sperren<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Wenn Sie in eine Tabelle mit bcp importieren, und besonders wenn Sie mit<br />
parallelem bcp kopieren, erwirbt der Kopierprozess die folgenden Sperren:<br />
Eine exklusive Absichtssperre für die Tabelle<br />
Eine exklusive Seitensperre für jede Datenseite<br />
Eine exklusive Sperre für Indexseiten, falls vorhanden<br />
Wenn Sie in sehr große Tabellen kopieren, und vor allem, wenn Sie<br />
gleichzeitiges Kopieren in partitionierte Tabellen verwenden, kann dies eine<br />
sehr große Anzahl von Sperren bedeuten.<br />
So können Sie einen Sperrenmangel vermeiden:<br />
Erhöhen Sie die Anzahl der Sperren.<br />
Mit folgender Formel können Sie die Anzahl der erforderlichen<br />
Sperren schätzen:<br />
#Nr_gleichzeitige_Stapel * (Zeilen_pro_Stapel / (2016/Zeilenlänge))<br />
Um die Zeilenlänge bei einer Tabelle einzusehen, führen Sie<br />
Folgendes aus:<br />
1> select maxlen<br />
2> from sysindexes<br />
3> where id = object_id("Tabellenname") and (indid = 0 or indid = 1)<br />
Weitere Hinweise zur Einstellung der Sperrenanzahl finden Sie in der<br />
Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
Verwenden Sie die Markierung -b Größe_der_Anweisungsfolge,<br />
um kleinere Anweisungsfolgen zu kopieren.<br />
Führen Sie weniger Anweisungsfolgen gleichzeitig aus.<br />
Methoden des parallelen Massenexports/-imports<br />
Verwenden Sie eine der folgenden Methoden, um Daten mit dem<br />
Massenexport/-import zu importieren:<br />
Starten Sie mehrere bcp-Sitzungen im Hintergrund und führen Sie<br />
folgende Schritte aus:<br />
Geben Sie das Kennwort in die Befehlszeile ein.<br />
Verwenden Sie den nativen Modus, den Zeichenmodus oder eine<br />
Formatdatei.<br />
Sie können bcp so oft starten, wie die Tabelle aufgeteilt ist.<br />
<strong>Dienstprogramme</strong> 31
cp-Performance<br />
Erstellen und verwenden Sie eine Formatdatei:<br />
a Starten Sie bcp im interaktiven Modus.<br />
b Beantworten Sie die Eingabeaufforderungen.<br />
c Erstellen Sie eine Formatdatei, die Ihre Antworten speichert.<br />
d Legen Sie den Prozess in den Hintergrund, wenn der Kopiervorgang<br />
anfängt.<br />
e Geben Sie den nächsten bcp-Befehl ein und geben Sie die Formatdatei<br />
an, die mit dem ersten bcp erstellt wurde.<br />
Starten Sie bcp-Sitzungen in mehreren Fenstern.<br />
Syntax des parallelen Massenexport/-import von Daten<br />
Die Syntax bei parallelem Massenexport/-import von Daten lautet:<br />
bcp Tabellenname[:Partitionsnummer] in Dateiname -PMeinKennwort<br />
Dabei gilt Folgendes:<br />
Tabellenname ist der Name der Tabelle, in die Sie die Daten kopieren<br />
Partitionsnummer ist die Nummer der Partition, in die Sie kopieren<br />
Dateiname ist die Hostdatei, die die Daten enthält<br />
MeinKennwort ist Ihr Kennwort<br />
Parallelen Massenexport/-import auf partitionierten Tabellen verwenden<br />
So kopieren Sie sortierte Daten parallel in eine bestimmte Partition:<br />
Geben Sie die Partitionsnummer an, indem Sie einen Doppelpunkt (:)<br />
und die Partitionsnummer an den Tabellennamen anfügen. Beispiel:<br />
publishers:10<br />
Hinweis Die angegebene Partition muss vorhanden sein, bevor Sie den<br />
bcp-Befehl eingeben.<br />
32 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Teilen Sie die sortierten Daten in separate Dateien auf oder legen Sie<br />
den Bereich der Zeilen in den „Dateien“ fest, indem Sie die erste Zeile<br />
(-F erste_Zeile) und die letzte Zeile (-L letzte_Zeile) der Hostdatei angeben.<br />
Notieren Sie die Anzahl der Partitionen in der Tabelle. Diese Zahl limitiert<br />
die Anzahl von parallelen Massenexport/-importprozessen, die Sie<br />
starten können.<br />
Wenn eine Tabelle zum Beispiel vier Partitionen hat und Sie fünf parallele<br />
Massenexport/-import-Sitzungen starten, können nur die ersten vier<br />
Aufträge parallel ausgeführt werden; der fünfte Auftrag startet erst,<br />
wenn einer der vier anderen Aufträge beendet wird.<br />
bcp kopiert jede Datei oder Menge von Zeilennummern in eine separate<br />
Partition. Um zum Beispiel mit dem parallelen Massenexport/-import sortierte<br />
Daten in mydb..bigtable aus vier Dateien in vier Partitionen zu kopieren, geben<br />
Sie Folgendes ein:<br />
bcp mydb..bigtable:1 in file1 -Pmypassword -c &<br />
bcp mydb..bigtable:2 in file2 -Pmypassword -c &<br />
bcp mydb..bigtable:3 in file3 -Pmypassword -c &<br />
bcp mydb..bigtable:4 in file4 -Pmypassword -c &<br />
Paralleler Massenexport/-import und Identity-Spalten<br />
Wenn Sie den parallelen Massenexport/-import verwenden, können Identity-<br />
Spalten einen Engpass verursachen. Während bcp die Daten liest, erzeugt<br />
das Dienstprogramm die Werte für die Identity-Spalte und aktualisiert<br />
den Höchstwert der Identity-Spalte bei jeder Zeile. Dieser zusätzliche<br />
Arbeitsschritt kann sich auf die Performance-Steigerung auswirken,<br />
die Sie sich von der Verwendung des Massenexport/-imports der Daten<br />
erwartet haben.<br />
Um diesen Engpass zu vermeiden, können Sie explizit den Identity-Startpunkt<br />
für jede Sitzung festlegen.<br />
<strong>Dienstprogramme</strong> 33
cp-Performance<br />
Sortierreihenfolge aufrecht erhalten<br />
Wenn Sie sortierte Daten in die Tabelle kopieren, ohne den Identity-Startpunkt<br />
explizit anzugeben, erstellt bcp möglicherweise die Identity-Spaltenwerte<br />
nicht in der sortierten Reihenfolge. Der parallele Massenexport/-import<br />
der Daten liest die Informationen in alle Partitionen gleichzeitig ein und<br />
aktualisiert die Werte der Identity-Spalte, während die Daten gelesen werden.<br />
Eine bcp-Anweisung ohne expliziten Startpunkt würde Identity-<br />
Spaltennummern erzeugen, die den in Abbildung 3-2 gezeigten ähnlich sind:<br />
Abbildung 3-2: Identity-Spalten in Sortierreihenfolge erzeugen<br />
Partition 1 Partition 2 Partition 3 Partition 4<br />
ID-Spalte<br />
100 A<br />
104 A<br />
107 B<br />
108 B<br />
114 B<br />
ID-Spalte<br />
102 C<br />
106 C<br />
109 C<br />
112 D<br />
117 E<br />
ID-Spalte<br />
103 F<br />
105 F<br />
111 F<br />
116 G<br />
119 G<br />
Die Tabelle hat eine maximale Identity-Spaltennummer von 119, aber die<br />
Reihenfolge ist nicht mehr sinnvoll.<br />
Wenn Adaptive Server eindeutige Identity-Spaltenwerte erzwingen soll,<br />
müssen Sie bcp entweder mit dem Parameter -g oder -E ausführen.<br />
Den Startpunkt von der Befehlszeile aus angeben<br />
Verwenden Sie die Option -g ID_Anfangswert, um den Startpunkt der Identity-<br />
Spalte für eine Sitzung in der Befehlszeile festzulegen.<br />
Der -g-Parameter fordert Adaptive Server auf, eine Sequenz von Identity-<br />
Spaltenwerten für die bcp-Sitzung zu generieren, ohne den Höchstwert der<br />
Identity-Spalte der Tabelle für jede Zeile zu überprüfen und zu aktualisieren.<br />
Statt einer Prüfung aktualisiert Adaptive Server den Höchstwert am Ende jeder<br />
Anweisungsfolge.<br />
Achtung! Sie können aus Versehen mehrfach vorhandene Identity-Werte<br />
erstellen, wenn Sie Identity-Bereiche festlegen, die sich überschneiden.<br />
Um einen Identity-Anfangswert anzugeben, geben Sie ein:<br />
bcp [-gID_Anfangswert]<br />
ID-Spalte<br />
101 H<br />
110 H<br />
113 I<br />
115 J<br />
118 J<br />
34 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Um zum Beispiel in vier Dateien mit jeweils 100 Zeilen zu kopieren,<br />
geben Sie ein:<br />
bcp mydb..bigtable in file1 -g100<br />
bcp mydb..bigtable in file2 -g200<br />
bcp mydb..bigtable in file3 -g300<br />
bcp mydb..bigtable in file4 -g400<br />
Die Verwendung des -g -Parameters stellt nicht sicher, dass die Identity-<br />
Spaltenwerte eindeutig sind. Um Eindeutigkeit zu erzwingen, ist Folgendes<br />
notwendig:<br />
Sie müssen wissen, wie viele Zeilen in der Eingabedatei sind und was der<br />
höchste vorhandene Wert ist. Verwenden Sie diese Informationen, um die<br />
Startwerte mit dem -g-Parameter festzulegen, damit Sie Bereiche<br />
generieren, die nicht überlappen.<br />
Wenn im obenstehenden Beispiel eine Datei mehr als 100 Zeilen enthält,<br />
überlappen die Identity-Werte die nächsten 100 Zeilen von Daten,<br />
wodurch doppelte Identity-Werte erstellt werden.<br />
Sie müssen auch sicherstellen, dass niemand sonst Daten einfügt,<br />
die widersprechende Identity-Werte erzeugen können.<br />
Den Startpunkt mit der Datendatei angeben<br />
Verwenden Sie den -E-Parameter, um den Identity-Startpunkt explizit von der<br />
Datendatei aus zu setzen.<br />
Der -E-Parameter bewirkt, dass Sie von bcp aufgefordert werden, einen<br />
expliziten Identity-Spaltenwert für die einzelnen Zeilen einzugeben.<br />
Wenn dabei der höchstmögliche Identity-Spaltenwert überschritten<br />
wird, gibt Adaptive Server einen Fehler aus.<br />
Die bcp-Optionen verwenden<br />
Im vorliegenden Abschnitt werden einige der komplexeren Optionen der bcp-<br />
Syntax genauer beschrieben. Ausführliche Hinweise zur Syntax finden Sie<br />
unter bcp auf Seite 164.<br />
<strong>Dienstprogramme</strong> 35
Die bcp-Optionen verwenden<br />
Die Standardformate verwenden<br />
Natives Format<br />
bcp stellt zwei Programm-Startparameter zur Verfügung, die Dateien mit<br />
häufig verwendeten Standardformaten erstellen. Diese Optionen bieten die<br />
einfachste Möglichkeit, Daten in und aus einer Adaptive Server-Installation<br />
zu kopieren.<br />
Die -n -Option verwendet „native“ Formate (Betriebssystemformate).<br />
Die Option -c verwendet für alle Spalten „Zeichen“ (Datentyp char).<br />
Dieser Datentyp verwendet Tabulator-Trennzeichen zwischen Feldern in<br />
einer Zeile und ein Neue-Zeile-Abschlusszeichen (z.B. Zeilenschaltung)<br />
am Ende jeder Zeile.<br />
Wenn Sie die Optionen „nativ“ oder „Zeichen“ verwenden, operiert bcp nicht<br />
interaktiv und fragt Sie nur nach Ihrem Kennwort in Adaptive Server.<br />
Die Option -n erstellt Dateien mit nativen (betriebssystemspezifischen)<br />
Formaten. Native Formate erstellen gewöhnlich eine kompaktere<br />
Betriebssystemdatei. Mit dem folgenden Befehl wird beispielsweise die<br />
Tabelle publishers in eine Datei namens pub_out kopiert, wobei das native<br />
Datenformat verwendet wird:<br />
bcp pubs2..publishers out pub_out -n<br />
Inhalt von pub_out:<br />
0736^MNew Age Books^FBoston^BMA0877^PBinnet & Hardley^J<br />
Washington^BDC1389^TAlgodata Infosystems^HBerkeley^BCA<br />
bcp stellt jedem Feld, außer pub_id, dem der Datentyp char(4) zugeordnet ist,<br />
ein ASCII-Zeichen voran, das der Länge der Daten im Feld entspricht. Zum<br />
Beispiel besteht „New Age Books“ aus 13 Zeichen, und ^M (Strg-m) ist<br />
ASCII 13.<br />
Alle in der Datei pub_out gespeicherten Tabellendaten sind Daten des<br />
Typs char oder varchar und daher in einer lesbaren Form. In einer Tabelle mit<br />
nummerischen Daten schreibt bcp die Informationen im Datendarstellungsformat<br />
des Betriebssystems in die Datei; diese Daten sind möglicherweise für den<br />
Benutzer nicht lesbar.<br />
36 Adaptive Server Enterprise
Zeichenformat<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
bcp kopiert Daten aus einer Tabelle in eine Datei entweder unter Beibehaltung<br />
ihrer Datenbankdatentypen oder mit Umwandlung in einen Datentyp, bei<br />
dem implizite Konvertierung unterstützt wird. bcp kopiert benutzerdefinierte<br />
Datentypen als Basis-Datentyp oder beliebigen Datentyp, für den die implizite<br />
Konvertierung unterstützt wird. Weitere Informationen zur Datentypkonvertierung<br />
finden Sie unter dbconvert in der Dokumentation Open Client DB-<br />
Library/C Reference Manual oder der Dokumentation <strong>Sybase</strong> Adaptive Server<br />
Enterprise Reference Manual.<br />
Hinweis Das Dienstprogramm bcp unterstützt nicht das Kopieren von Daten<br />
im nativen Format von verschiedenen Betriebssystemen (zum Beispiel von NT<br />
auf UNIX). Verwenden Sie die Option -c, wenn Sie mit bcp Dateien von einem<br />
Betriebssystem auf ein anderes kopieren.<br />
Achtung! Verwenden Sie keine Zeilenabschlusszeichen-Parameter (-t)<br />
oder Feldabschlusszeichen-Parameter (-r) mit bcp im nativen Format. Die<br />
Ergebnisse sind nicht vorhersehbar und die Daten könnten beschädigt werden.<br />
Das Zeichenformat (-c) verwendet für alle Spalten den Datentyp char. Es fügt<br />
Tabulatoren zwischen die Felder jeder Zeile ein und setzt ein Neue-Zeile-<br />
Abschlusszeichen am Ende jeder Zeile.<br />
Mit dem folgenden Befehl werden beispielsweise die Daten aus der Tabelle<br />
publishers im Zeichenformat in die Datei pub_out kopiert:<br />
bcp pubs2..publishers out pub_out -c<br />
Der Befehl erzeugt die folgende bcp-Ausgabe:<br />
0736 New Age Books Boston MA<br />
0877 Binnet & Hardley Washington DC<br />
1389 Algodata Infosystems Berkeley CA<br />
<strong>Dienstprogramme</strong> 37
Die Standardwerte ändern: Interaktiver bcp<br />
Abschlusszeichen von der Befehlszeile ändern<br />
Abschlusszeichen sind die Zeichen, die Datenfelder trennen (Feldabschlusszeichen).<br />
Das Zeilenabschlusszeichen ist das Feldabschlusszeichen des letzten<br />
Felds in der Tabelle oder der Datei. Verwenden Sie die Programm-Startparameter<br />
-tFeldabschlusszeichen und -rrow_terminator Zeilen-Abschlusszeichen<br />
mit der Zeichenformatoption (-c), um die Abschlusszeichen von der Befehlszeile<br />
zu ändern.<br />
Das folgende Beispiel verwendet das Komma (,) als Feldabschlusszeichen<br />
und die Zeilenschaltung (\r) als Zeilenabschlusszeichen.<br />
Auf UNIX-Plattformen:<br />
bcp pubs2..publishers out pub_out -c -t , -r \\r<br />
Vergessen Sie nicht, den Rückstrich mit Escape-Zeichen zu markieren,<br />
falls das bei Ihrer Betriebssystem-Befehlsoberfläche erforderlich ist.<br />
Unter Windows NT:<br />
bcp pubs2..publishers out pub_out -c -t , -r \r<br />
Diese bcp-Befehlszeile gibt die folgenden Informationen aus:<br />
0736,New Age Books,Boston,MA<br />
0877,Binnet & Hardley,Washington,DC<br />
1389,Algodata Infosystems,Berkeley,CA<br />
Hinweis Mit den Optionen -t und -r können Sie die Standard-Abschlusszeichen<br />
ohne Berücksichtigung der Zeichenoption (-c) ändern.<br />
Die Standardwerte ändern: Interaktiver bcp<br />
Wenn Sie kein natives Format (-n) oder Zeichenformat (-c) angeben, werden<br />
Sie von bcp interaktiv aufgefordert, die folgenden Informationen<br />
bereitzustellen:<br />
Dateispeichertyp<br />
Präfixlänge<br />
Abschlusszeichen für alle zu kopierenden Datenspalten<br />
Länge für Felder, die als char oder binary<br />
gespeichert werden sollen<br />
38 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Die Standardwerte für diese Eingabeaufforderungen führen zu denselben<br />
Ergebnissen wie das Verwenden des nativen Formats und bieten eine einfache<br />
Methode, Daten aus einer Datenbank zu exportieren, um sie später wieder in<br />
die Adaptive Server-Installation zurückzuladen.<br />
Wenn Sie Daten zur Verwendung mit anderen Programmen in die oder aus<br />
der Adaptive Server-Installation kopieren, sollten Sie Ihre Antworten auf die<br />
Eingabeaufforderungen auf dem Format aufbauen, das für die andere Software<br />
erforderlich ist.<br />
Diese vier Eingabeaufforderungen sind ein äußerst flexibles System,<br />
mit dem Sie eine Datei aus einer anderen Software lesen können oder eine<br />
Datei erstellen können, die nach geringer oder keiner Bearbeitung mit vielen<br />
anderen Datenformaten kompatibel ist.<br />
In den folgenden Abschnitten werden diese Eingabeaufforderungen, ihre<br />
Wechselbeziehungen und ihre Auswirkungen auf die Daten erörtert.<br />
Auf bcp-Eingabeaufforderungen reagieren<br />
Wenn Sie Daten mit den Parametern -n (natives Format) oder -c<br />
(Zeichenformat) importieren oder exportieren, fordert Sie bcp zur Eingabe<br />
Ihres Kennworts auf, wenn es nicht bereits mit dem Parameter -P angegeben<br />
wurde. Wenn Sie den Parameter -n, -c oder -f Formatdatei nicht angeben, fordert<br />
bcp Sie auf, Daten in die einzelnen Felder der Tabelle oder Ansicht einzugeben.<br />
Jede Eingabeaufforderung zeigt in Klammern einen Standardwert an,<br />
den Sie durch Drücken der Eingabetaste bestätigen können.<br />
Diese Eingabeaufforderungen sind:<br />
Der Dateispeichertyp – entweder character oder ein anderer in<br />
Adaptive Server gültiger Datentyp<br />
Die Präfixlänge, eine Ganzzahl, die die Länge der nachfolgenden<br />
Daten in Byte anzeigt<br />
Die Speicherlänge der Daten in der Datei für Nicht-NULL-Felder<br />
Das Feldabschlusszeichen – eine beliebige Zeichenfolge<br />
(Windows NT) – Dezimalstellen und Gesamtstellenzahl bei<br />
nummerischen und Dezimal-Datentypen<br />
Das Zeilenabschlusszeichen ist das Feldabschlusszeichen des letzten<br />
Felds in der Tabelle, Ansicht oder Datei.<br />
<strong>Dienstprogramme</strong> 39
Die Standardwerte ändern: Interaktiver bcp<br />
Die in Klammern gefassten Standardwerte sind angemessene Werte für die<br />
Datentypen der betreffenden Felder. Die wirkungsvollste Ausnutzung des<br />
Speicherplatzes erzielen Sie, wenn Sie beim Kopieren von Daten aus einer<br />
Tabelle folgende Hinweise berücksichtigen:<br />
Bestätigen Sie die vorgeschlagenen Standardwerte.<br />
Kopieren Sie alle Daten in den Datentypen, wie sie von ihrer Tabelle<br />
definiert sind.<br />
Verwenden Sie die angegebenen Präfixe.<br />
Verwenden Sie keine Abschlusszeichen.<br />
Akzeptieren Sie die Standardlängen.<br />
Tabelle 3-3 zeigt die bcp-Eingabeaufforderungen, Standardwerte und die<br />
möglichen Benutzerantworten:<br />
Tabelle 3-3: Standardwerte und Benutzerantworten für<br />
bcp-Eingabeaufforderungen<br />
Eingabeaufforderung Verfügbarer Standard Mögliche Benutzerreaktion<br />
Dateispeichertyp Verwenden Sie den Datenbankspeichertyp<br />
für die meisten Felder, ausgenommen:<br />
char für varchar<br />
binary für varbinary<br />
Präfixlänge 0 für Felder, die mit dem Datentyp char<br />
(nicht Speichertyp) definiert sind und<br />
alle Datentypen mit festen Längen<br />
1 für die meisten anderen Datentypen<br />
2 für binary und varbinary gespeichert<br />
als char<br />
4 für text und image<br />
Speicherlänge Verwenden Sie für char und varchar<br />
die definierte Länge.<br />
Verwenden Sie für binary und<br />
varbinary gespeichert als char das<br />
Doppelte der definierten Länge.<br />
Verwenden Sie für alle anderen<br />
Datentypen die erforderliche<br />
Mindestlänge, um Kürzen oder<br />
Datenüberlauf zu verhindern.<br />
char, um eine benutzerlesbare Datei<br />
zu erstellen; alle Adaptive Server-<br />
Datentypen, die implizite Konvertierung<br />
unterstützen.<br />
0, wenn kein Präfix gewünscht wird;<br />
Standardwerte werden empfohlen.<br />
Standardwerte oder höher werden<br />
empfohlen.<br />
40 Adaptive Server Enterprise
Feld- oder<br />
Zeilenabschlusszeichen<br />
Dateispeichertyp<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Eingabeaufforderung Verfügbarer Standard Mögliche Benutzerreaktion<br />
Keiner Bis zu 30 Zeichen oder eines der<br />
folgenden:<br />
\t – Tabulator<br />
\n – Zeilenschaltung<br />
\r – Wagenrücklauf<br />
\0 – Nullabschlusszeichen<br />
\ – Rückstrich<br />
Die Eingabeaufforderung für den Datentyp bietet Ihnen eine Auswahl von<br />
Optionen, wie die Daten in der Datei zu speichern sind. Sie können Daten<br />
folgendermaßen in eine Datei kopieren:<br />
Als ihr Datenbanktabellentyp<br />
Als Zeichenfolge oder<br />
Als beliebiger Datentyp, für den implizite Konvertierung unterstützt wird.<br />
Hinweis bcp kopiert benutzerdefinierte Datentypen als Basistypen.<br />
Tabelle 3-4 zeigt den Standard-Speichertyp für alle Adaptive Server-<br />
Datentypen und die Abkürzungen, die von bcp akzeptiert werden.<br />
Am kompaktesten können Sie mit den Standortwerten speichern.<br />
Verwenden Sie für Zeichendateien den Datentyp char.<br />
Beachten Sie, dass der Speichertyp date das interne Speicherformat<br />
von Adaptive Server für datetime und nicht das Format des Host-<br />
Betriebssystems für das Datum ist.<br />
timestamp-Daten werden als binary(8) behandelt.<br />
In Tabelle 3-4 bedeuten eckige Klammern [ ], dass Sie das erste Zeichen oder<br />
die Anfangszeichen des Wortes verwenden können. Für „bit“ können Sie zum<br />
Beispiel „b“, „bi“ oder „bit“ verwenden.<br />
<strong>Dienstprogramme</strong> 41
Die Standardwerte ändern: Interaktiver bcp<br />
Tabelle 3-4: Datentypen für den Dateispeicher für bcp<br />
Tabellendatentyp Speichertyp<br />
char, varchar c[har]<br />
text T[ext]<br />
int i[nt]<br />
smallint s[mallint]<br />
tinyint t[inyint]<br />
float f[loat]<br />
money m[oney]<br />
bit b[it]<br />
datetime d[atetime]<br />
binary, varbinary x<br />
image I[mage]<br />
smalldatetime D<br />
real r<br />
smallmoney M<br />
numeric n<br />
decimal e<br />
Um diese Liste anzuzeigen, während Sie bcp interaktiv ausführen,<br />
geben Sie ein Fragezeichen (?) als Antwort auf die Eingabeaufforderung<br />
„Dateispeichertyp eingeben“ ein.<br />
Die vorgeschlagenen Werte, die in den Eingabeaufforderungen angezeigt<br />
werden, sind die Standardwerte. Vergessen Sie nicht, dass Ihre Antwort<br />
festlegt, wie Ihre Daten in der Ausgabedatei gespeichert werden. Sie müssen<br />
den Typ der Spalte in der Datenbanktabelle nicht angeben.<br />
bcp wird nicht erfolgreich ausgeführt, wenn Sie einen Datentyp eingeben, der<br />
weder implizit konvertierbar noch char ist. Beispiel: Sie können smallint nicht<br />
für int-Daten verwenden (es kann zu Überlaufsfehlern kommen). Sie können<br />
jedoch int für smallint verwenden.<br />
Wenn Sie Nicht-Zeichen-Datentypen in Form ihrer Datenbanktypen speichern,<br />
schreibt bcp die Daten in eine Datei im internen Datendarstellungsformat von<br />
Adaptive Server für das Host-Betriebssystem und nicht in einem für den<br />
Benutzer lesbaren Format.<br />
42 Adaptive Server Enterprise
Präfixlänge<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Bevor Sie Daten im Zeichenformat von einer Datei in eine Datenbanktabelle<br />
kopieren, überprüfen Sie die Datentypeingaberegeln in der Dokumentation<br />
Reference Manual. Zeichendaten, die mit bcp in eine Datenbank kopiert<br />
werden, müssen diesen Regeln entsprechen. Beachten Sie, dass<br />
Datumsangaben im nicht begrenzten Format (yy)yymmdd einen<br />
Überlauf bewirken können, wenn das Jahr nicht zuerst angegeben wird.<br />
Wenn Sie Host-Datendateien an Standorte versenden, die Terminals mit<br />
einem anderen Zeichensatz verwenden, geben Sie mit datafile_charset<br />
den Zeichensatz bekannt, den Sie zum Erstellen der Datei verwendet haben.<br />
Standardmäßig stellt bcp jedem Feld, das eine variable Speicherlänge hat, eine<br />
Zeichenfolge von einem oder mehreren Byte voran, die die Länge des Feldes<br />
anzeigt. Durch dieses Präfix wird die kompakteste Feldspeicherung erreicht.<br />
Die Standardwerte in den Eingabeaufforderungen zeigen die effizienteste<br />
Präfixlänge an:<br />
Bei Feldern mit fester Länge sollte das Präfix 0 betragen.<br />
Bei Feldern von 255 Bytes oder weniger ist der Standardwert 1.<br />
Für die Datentypen text oder image beträgt die Standard-Präfixlänge 4.<br />
Für die Datentypen binary und varbinary, die in char-Speichertypen<br />
konvertiert werden, lautet die Standard-Präfixlänge 2, da pro Byte<br />
Tabellendaten 2 Byte Dateispeicher erforderlich ist.<br />
Verwenden Sie für Daten des Datentyps binary, varbinary und image gerade<br />
Zahlen für Präfix und Länge. Diese Bedingung sorgt für Konsistenz mit<br />
Adaptive Server, der Daten als eine gerade Zahl von hexadezimalen<br />
Ziffern speichert.<br />
Verwenden Sie für alle Datenspalten, die Nullwerte zulassen, eine<br />
Präfixlänge (nicht 0) oder ein Abschlusszeichen, um die Länge der Daten<br />
der einzelnen Zeilen anzugeben. bcp behandelt diese Spalten wie auch<br />
Spalten mit ganzzahligen Datentypen, die normalerweise wie Spalten<br />
mit fester Länge behandelt werden, wie Spalten mit variabler Länge.<br />
Verwenden Sie für Daten ohne Präfix vor der Spalte eine Präfixlänge<br />
von 0.<br />
<strong>Dienstprogramme</strong> 43
Die Standardwerte ändern: Interaktiver bcp<br />
Feldlänge<br />
Eine Präfixlänge ist eine Ganzzahl von 1, 2 oder 4 Byte, die die Länge jedes<br />
Datenwerts in Byte wiedergibt. Sie steht dem Datenwert in der Hostdatei<br />
unmittelbar voran.<br />
Wenn Sie kein Abschlusszeichen eingeben, füllt bcp jedes gespeicherte<br />
Feld mit Leerstellen auf die volle Länge auf, die an der nächsten<br />
Eingabeaufforderung, „Länge“, angegeben wird.<br />
Da Präfixlängen aus nativen Formatganzzahlen bestehen, enthält die<br />
resultierende Hostdatei nicht-druckbare Zeichen. Dadurch sind Sie<br />
möglicherweise nicht in der Lage, die Hostdatei auszudrucken oder sie<br />
mittels eines Kommunikationsprogramms zu übermitteln, das ausschließlich<br />
druckbare Zeichen handhaben kann.<br />
Weitere Hinweise zu Präfixlängen finden Sie unter Tabelle 3-9 auf Seite 53.<br />
In den meisten Fällen können Sie für das Exportieren von Daten den<br />
Standardwert von bcp für die Speicherlänge verwenden.<br />
Hinweis In diesem Abschnitt beziehen sich „Länge“ und „Speicherlänge“ auf<br />
die Betriebssystemdatei und nicht auf die Feldlängen von Adaptive Server.<br />
Wenn Sie eine Datei zum Wiederladen in Adaptive Server erstellen,<br />
schränken Standardpräfixe und -länge den benötigten Speicherplatz<br />
auf ein Minimum ein.<br />
Wenn Sie eine vom Benutzer lesbare Datei erstellen, verhindert<br />
die Standardlänge ein Kürzen der Daten oder die Erzeugung von<br />
Überlauffehlern, die zum Scheitern von bcp führen.<br />
Da es möglich ist, die Standardlänge zu ändern, indem Sie einen anderen Wert<br />
eingeben, müssen Sie mit den Daten vertraut sein, die übertragen werden.<br />
Wenn Sie Zeichendaten von anderer Software kopieren, sollten Sie die<br />
Quelldatei genauestens überprüfen, bevor Sie Längenwerte auswählen.<br />
Hinweis Wenn der Speicherungstyp Nichtzeichen ist, speichert bcp die Daten<br />
in der nativen Datendarstellung des Betriebssystems und fordert Sie nicht zur<br />
Eingabe der Länge auf.<br />
44 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Wenn bcp Nichtzeichen-Daten in Zeichenspeicherung konvertiert, wird eine<br />
Standardfeldlänge vorgeschlagen, die groß genug zum Speichern der Daten ist,<br />
ohne dass datetime-Daten abgeschnitten werden oder ein Überlauf von<br />
nummerischen Daten verursacht wird.<br />
Die Standardlänge ist die Byteanzahl, die benötigt wird, um den längsten<br />
Wert für den Adaptive Server-Datentyp anzuzeigen. Tabelle 3-5 listet<br />
die Standardfeldlängen für die Datenkonvertierung in<br />
Zeichenspeicherung auf.<br />
Tabelle 3-5: Standard-Feldlängen bei der Konvertierung von<br />
Nichtzeichen- in Zeichendatentypen<br />
Datentyp Standardgröße<br />
int 12 Byte<br />
smallint 6 Byte<br />
tinyint 3 Byte<br />
float 25 Byte<br />
money 24 Byte<br />
bit 1 Byte<br />
datetime 26 Byte<br />
smalldatetime 26 Byte<br />
real 25 Byte<br />
smallmoney 24 Byte<br />
Wenn Sie eine Feldlänge angeben, die beim Kopieren von Daten aus einer<br />
Tabelle für nummerische Daten zu kurz ist, gibt bcp eine Überlaufmeldung<br />
aus und kopiert die Daten nicht.<br />
Die Standardlänge für die Felder binary und varbinary entspricht zweimal<br />
der für die Spalte definierten Länge, da pro Byte des Feldes 2 Byte<br />
Feldspeicherung erforderlich sind.<br />
Wenn Sie die Standard-Speicherlänge akzeptieren, hängt die tatsächlich<br />
zugewiesene Menge an Speicherplatz davon ab, ob Sie eine Präfixlänge<br />
und Abschlusszeichen angeben.<br />
Wenn Sie eine Präfixlänge von 1, 2 oder 4 angeben, verwendet bcp als<br />
Speicherplatz die tatsächliche Datenlänge plus die Länge des Präfixes<br />
plus etwaige Abschlusszeichen.<br />
<strong>Dienstprogramme</strong> 45
Die Standardwerte ändern: Interaktiver bcp<br />
Wenn Sie eine Präfixlänge von 0 und kein Abschlusszeichen angeben,<br />
weist bcp die maximale Menge des in der Eingabeaufforderung<br />
angezeigten Speicherplatzes zu. Dies entspricht dem maximalen<br />
Platzbedarf für den betreffenden Datentyp. Mit anderen Worten:<br />
bcp behandelt das Feld so, als hätte es eine feste Länge, um zu<br />
bestimmen, wo ein Feld endet und das nächste beginnt.<br />
Wenn zum Beispiel das Feld als varchar(30) definiert ist, verwendet<br />
bcp 30 Byte für jeden Wert, auch wenn manche Werte nur 1 Zeichen<br />
lang sind.<br />
Felder, die in der Datenbank als char, nchar und binary definiert sind,<br />
und Felder, die keine Nullwerte zulassen, werden stets mit Leerstellen<br />
(null Byte bei binär) auf die volle in der Datenbank definierte Länge<br />
aufgefüllt. timestamp-Daten werden als binary(8) behandelt.<br />
Wenn Daten in den Feldern varchar und varbinary länger als die Länge<br />
sind, die Sie zum Exportieren angeben, kürzt bcp die Daten in der Datei<br />
stillschweigend auf die festgelegte Länge.<br />
bcp weiß nicht, wie lang ein beliebiger Datenwert sein wird, bevor nicht<br />
alle Daten kopiert sind. Daher werden char-Datentypen immer vollständig<br />
bis zur angegebenen Länge aufgefüllt.<br />
Der Dateispeichertyp und die Länge einer Spalte müssen nicht unbedingt<br />
dem Typ und der Länge der Spalte in der Datenbanktabelle entsprechen.<br />
Wenn die in die Tabelle kopierten Typen und Formate nicht mit der<br />
Struktur der Datenbanktabelle kompatibel sind, scheitert der<br />
Kopiervorgang.<br />
Die Dateispeicherlänge stellt gewöhnlich die größte Menge von zu<br />
übertragenden Daten für die Spalte dar, ausgenommen Abschlusszeichen<br />
und/oder Präfixe.<br />
Wenn Sie Daten in eine Tabelle kopieren, beachtet bcp die Standardwerte,<br />
die für Spalten und benutzerdefinierte Datentypen definiert sind.<br />
Allerdings ignoriert bcp Regeln, damit das Laden von Daten mit der<br />
optimalen Geschwindigkeit durchgeführt werden kann.<br />
Da bcp alle Datenspalten, die Nullwerte enthalten, als Spalten mit<br />
variabler Länge einstuft, sollten Sie entweder ein Längenpräfix oder ein<br />
Abschlusszeichen verwenden, um die Länge der einzelnen Zeilen von<br />
Daten zu kennzeichnen.<br />
Der Dateispeichertyp und die Länge einer Spalte müssen nicht unbedingt<br />
dem Typ und der Länge der Spalte in der Datenbanktabelle entsprechen.<br />
(Wenn die importierten Typen und Formate nicht mit der Struktur der<br />
Datenbanktabelle kompatibel sind, scheitert der Kopiervorgang.)<br />
46 Adaptive Server Enterprise
Feld- und Zeilenabschlusszeichen<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Sie können ein Abschlusszeichen verwenden, um das Ende einer Spalte oder<br />
Zeile zu markieren und von der folgenden abzugrenzen. Als Standard ist kein<br />
Abschlusszeichen angegeben.<br />
Feldabschlusszeichen trennen Tabellenspalten.<br />
Das Zeilenabschlusszeichen ist das Feldabschlusszeichen des letzten<br />
Felds in der Zeile der Tabelle oder Datei.<br />
Abschlusszeichen sind sehr nützlich beim Arbeiten mit Zeichendaten, weil<br />
Sie für sie ein vom Benutzer lesbares Format auswählen können. Die bcp-<br />
Zeichenoption, die zwischen den Spalten Tabulatoren und am Ende jeder Zeile<br />
ein Neue-Zeile-Abschlusszeichen verwendet, ist ein Beispiel für den Einsatz<br />
von Abschlusszeichen zur besseren Lesbarkeit einer Datendatei.<br />
Wenn Sie Daten in anderen Programmen verwenden und mit bcp Tabellendaten<br />
vorbereiten möchten, geben Sie Ihre eigenen Abschlusszeichen ein.<br />
Die verfügbaren Abschlusszeichen sind:<br />
Tabulatoren, gekennzeichnet durch \t<br />
Neue Zeilen, gekennzeichnet durch \n<br />
Zeilenschaltungen, gekennzeichnet durch \r<br />
Rückstrich, gekennzeichnet durch \<br />
Nullabschlusszeichen (kein sichtbares Abschlusszeichen),<br />
gekennzeichnet durch \0<br />
Jedes druckbare Zeichen, zum Beispiel *, A, t, |<br />
Zeichenketten von bis zu 10 druckbaren Zeichen, einschließlich mancher<br />
oder aller Abschlusszeichen, die oben aufgelistet sind (zum Beispiel<br />
**\t**, end, !!!!!!!!!! und \t--\n)<br />
Hinweis Steuerzeichen (ASCII 0–25) können nicht gedruckt werden.<br />
<strong>Dienstprogramme</strong> 47
Die Standardwerte ändern: Interaktiver bcp<br />
Abschlusszeichen auswählen<br />
Wählen Sie Abschlusszeichen mit Mustern aus, die sonst nirgendwo in den<br />
Daten auftreten.<br />
So kann beispielsweise die Verwendung eines Tabulator-Abschlusszeichens<br />
mit einer Zeichenfolge von Daten, die ebenfalls einen Tabulator enthält,<br />
zweideutig sein: Welcher Tabulator stellt das Ende der Zeichenfolge dar? bcp<br />
sucht immer nach dem ersten möglichen Abschlusszeichen, was in diesem Fall<br />
nicht korrekt wäre, da das erste Tabulatorzeichen, auf das das Programm stößt,<br />
Teil der Zeichenfolge ist.<br />
Daten im nativen Format können auch Konflikte mit Abschlusszeichen<br />
bewirken. Bei einer Spalte, die eine 4-Byte Ganzzahl im nativen Format<br />
enthält, ist es unmöglich, ein Abschlusszeichen auszuwählen, das ganz sicher<br />
nicht innerhalb der Daten vorkommt, außer wenn die Werte dieser Ganzzahlen<br />
streng begrenzt sind. Verwenden Sie die native Formatoption von bcp bei<br />
Daten im nativen Format.<br />
Hinweis „Kein Abschlusszeichen“ entspricht nicht dem „Nullabschlusszeichen“,<br />
das ein unsichtbares, jedoch reales Zeichen ist.<br />
Eine Feldabschlusszeichenfolge kann bis zu 30 Zeichen lang sein. Die<br />
häufigsten Abschlusszeichen sind das Tabulatorzeichen (eingegeben als<br />
\t und in allen Spalten mit Ausnahme der letzten Spalte verwendet) und<br />
die Zeilenschaltung (eingegeben als \n und im letzten Feld einer Zeile<br />
verwendet). Andere Abschlusszeichen: \0 (Nullabschlusszeichen),<br />
\ (Rückstrich) und \r (Zeilenschaltung). Stellen Sie bei Auswahl eines<br />
Abschlusszeichens sicher, dass es in keinen Zeichendaten vorkommt,<br />
denn bcp sucht immer nach dem ersten möglichen Abschlusszeichen.<br />
Beispiel: Wenn Sie Tabulator-Abschlusszeichen für eine Zeichenfolge<br />
verwenden, in der ein Tabulatorzeichen enthalten ist, kann bcp nicht<br />
beurteilen, welches der beiden Tabulatorzeichen das Abschlusszeichen<br />
ist. Da bcp immer nach dem ersten möglichen Abschlusszeichen sucht,<br />
würde das Programm in diesem Fall das falsche Tabulatorzeichen als<br />
Abschlusszeichen interpretieren.<br />
48 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Ein Abschlusszeichen oder ein Präfix wirkt sich auf die tatsächliche Länge<br />
der übertragenen Daten aus:<br />
Wenn ein Abschlusszeichen oder ein Präfix vorhanden ist, wirkt es<br />
sich auf die Länge der übertragenen Daten aus. Wenn die Länge eines<br />
Eintrags, der aus einer Tabelle in eine Datei kopiert wird, kürzer als die<br />
Speicherlänge ist, wird ihm das Abschlusszeichen oder das Präfix des<br />
nächsten Feldes unmittelbar angefügt. Der Eintrag wird nicht auf die<br />
volle Speicherlänge aufgefüllt (char, nchar und binary-Daten wurden<br />
von Adaptive Server bereits auf die volle Länge aufgefüllt).<br />
Wenn bcp aus einer Datei in eine Tabelle kopiert, werden Daten so<br />
lange übertragen, bis die in der Eingabeaufforderung „Länge“ angegebene<br />
Byteanzahl erreicht ist oder das Programm auf ein Abschlusszeichen stößt.<br />
Sobald so viele Byte kopiert sind, wie es in der Längenangabe festgelegt<br />
wurde, wird der Rest der Daten gelöscht, bis das Abschlusszeichen<br />
auftritt. Werden keine Abschlusszeichen verwendet, so wird die<br />
Speicherlänge der Tabelle strikt eingehalten.<br />
Felder, die als char (außer char, nchar und binary-Felder) und nicht als ihre<br />
Datenbank-Datentypen gespeichert sind, benötigen weniger Speicherplatz<br />
mit der Standardlänge und Präfix oder Abschlusszeichen. bcp kann sowohl<br />
ein Abschlusszeichen als auch ein Präfix verwenden, um eine optimale<br />
Nutzung des verfügbaren Speicherplatzes zu gewährleisten. bcp schlägt<br />
die maximale Menge für den Speicherplatz vor, der für jedes Feld als<br />
Standard erforderlich ist. Für char oder varchar -Daten akzeptiert bcp<br />
jede Länge.<br />
Tabelle 3-6 und Tabelle 3-7 zeigen die Auswirkung von Präfixlängen,<br />
Abschlusszeichen und Feldlängen auf die Daten in der Datei. „P“ zeigt<br />
das Präfix in der gespeicherten Tabelle, „T“ das Abschlusszeichen und<br />
Bindestriche (--) zeigen angefügte Leerstellen an. Auslassungspunkte (...)<br />
zeigen an, dass sich das Muster bei jedem Feld wiederholt. Die Feldlänge<br />
ist bei jeder Spalte 8 Byte; „string“ stellt immer das 6-Zeichen-Feld dar.<br />
Tabelle 3-6: char-Daten von Adaptive Server<br />
Präfixlänge = 0 Präfixlänge–1, 2 oder 4<br />
Kein<br />
Zeichenfolge-- PZeichenfolge--<br />
Abschlusszeichen Zeichenfolge--... PZeichenfolge--...<br />
Abschlusszeichen Zeichenfolge-- PZeichenfolge--<br />
TZeichenfolge--T... TPZeichenfolge--T...<br />
<strong>Dienstprogramme</strong> 49
Formatdateien verwenden<br />
Formatdateien verwenden<br />
Tabelle 3-7: Andere Datentypen konvertiert in char-Speicher<br />
Präfixlänge = 0 Präfixlänge–1, 2 oder 4<br />
Kein<br />
Zeichenfolge--<br />
PZeichenfolgePZeichenfolge...<br />
Abschlusszeichen Zeichenfolge--...<br />
Abschlusszeichen ZeichenfolgeTZeichenfolgeT... PZeichenfolgeTPZeichenfolgeT...<br />
Nachdem Informationen über alle Felder in der Tabelle gesammelt wurden,<br />
fragt Sie bcp, ob Sie die Informationen in einer Formatdatei speichern wollen,<br />
und fordert Sie zur Eingabe eines Dateinamens auf.<br />
Wenn Sie eine Formatdatei verwenden, die für die mit dem bcp-<br />
Dienstprogramm zu kopierenden Daten erstellt wurde, können Sie die<br />
Daten ohne Interaktion importieren und exportieren, d.h. bcp wird Sie<br />
nicht zur Eingabe von Informationen auffordern. Die Formatdatei liefert die<br />
Informationen, die bcp benötigt. Verwenden Sie diese Formatdatei, um Daten<br />
in die Adaptive Server-Installation zurückzukopieren oder um Daten aus einer<br />
Tabelle zu einem beliebigen Zeitpunkt zu exportieren.<br />
Abbildung 3-3 zeigt das Format der bcp-Formatdateien. Sie zeigt die<br />
publishers-Tabelle aus der pubs2-Datenbank. Alle Spalten der Hostdatei<br />
werden im Zeichenformat ohne Präfix angezeigt und verwenden Standard-<br />
Datenlänge, Neue-Zeile-Abschlusszeichen am Ende der letzten Spalte einer<br />
Zeile sowie Tabulatoren als Abschlusszeichen für alle anderen Spalten.<br />
50 Adaptive Server Enterprise
Nummer<br />
von<br />
Spalten<br />
Hostdatei-<br />
Spaltenreihenfolge<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Abbildung 3-3: bcp-Formatdatei<br />
TDS-<br />
Ebene<br />
Elemente der bcp-Formatdatei<br />
10.0<br />
4<br />
1 SYBCHAR 0 4 "\t" 1 pub_id<br />
2 SYBCHAR 0 20 "\t" 2 pub_name<br />
3 SYBCHAR 0 20 "\t" 3 city<br />
4 SYBCHAR 0 2 "\n" 4 state<br />
Hostdatei-<br />
Datentyp<br />
Präfixlänge Abschlusszeichen<br />
Hostdatei-<br />
Datenlänge<br />
Server-<br />
Spaltenname<br />
Server-<br />
Spaltenreihenfolge<br />
Die folgende Liste führt die verschiedenen Elemente einer bcp-Formatdatei<br />
auf. Verwenden Sie Abbildung 3-3 auf Seite 51 als Beispiel für die<br />
Formatdatei.<br />
Die Tabular Data Stream-Version (TDS) ist immer die erste Zeile der<br />
Datei. Sie gibt die Version von TDS an, die Sie verwenden, und nicht die<br />
Adaptive Server-Version, und wird als eine literale Zeichenfolge ohne<br />
Anführungszeichen dargestellt. In Abbildung 3-3 ist die Version 10.0.<br />
Die zweite Zeile einer bcp-Formatdatei gibt die Anzahl der Spalten an,<br />
die sich auf die Anzahl von Datensätzen in der Formatdatei bezieht,<br />
ohne dabei die Zeilen 1 und 2 mitzuzählen. Alle Spalten in der Host-<br />
Tabelle verfügen über eine Zeile.<br />
Der ersten und zweiten Zeile folgt eine Zeile für jede Spalte in der<br />
Datenbanktabelle. Jede Zeile besteht aus Elementen, die üblicherweise<br />
durch Tabulatoren getrennt werden, ausgenommen der Hostdatei-<br />
Datentyp und die Präfixlänge, die gewöhnlich durch eine Leerstelle<br />
getrennt werden. Die Elemente sind folgende:<br />
Hostdatei-Spaltenreihenfolge<br />
Hostdatei-Datentyp<br />
<strong>Dienstprogramme</strong> 51
Formatdateien verwenden<br />
Hostdatei-<br />
Spaltenreihenfolge<br />
Präfixlänge<br />
Hostdatei-Datenlänge<br />
Abschlusszeichen<br />
Server-Spaltenreihenfolge<br />
Server-Spaltenname<br />
Spalten-Gesamtstellenzahl<br />
Spalten-Dezimalstellen<br />
Die folgenden Abschnitte beschreiben die Spaltenelemente in der Formatdatei.<br />
Die Hostdatei-Spaltenreihenfolge ist die sequenzielle Zahl des Felds in der<br />
Hostdatendatei, beginnend mit 1.<br />
Hostdatei-Datentyp Hostdatei-Datentyp bezieht sich auf das Speicherungsformat des Felds in der<br />
Hostdatendatei, und nicht auf den Datentyp der Datenbanktabellenspalte.<br />
Tabelle 3-8 listet die gültigen Speicherungsformate auf.<br />
Tabelle 3-8: Speicherungsformat von Hostdatei-Datentypen<br />
Speicherungsformat Adaptive Server-Datentyp<br />
SYBCHAR char, varchar (ASCII)<br />
SYBTEXT text<br />
SYBBINARY binary<br />
SYBIMAGE image<br />
SYBINT1 tinyint<br />
SYBINT2 smallint<br />
SYBINT4 int<br />
SYBFLT8 float<br />
SYBREAL real<br />
SYBBIT bit<br />
SYBNUMERIC numeric<br />
SYBDECIMAL decimal<br />
SYBMONEY money<br />
SYBMONEY4 smallmoney<br />
SYBDATETIME datetime<br />
SYBDATETIME4 smalldatetime<br />
52 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Daten, die in ihrem Betriebssystemformat in eine Host-Datei geschrieben<br />
werden, behalten ihre Gesamtstellenzahl. datetime und float-Werte behalten<br />
ihre Gesamtstellenzahl ebenfalls, auch wenn sie in das Zeichenformat<br />
konvertiert werden. Adaptive Server speichert money-Werte mit einer<br />
Gesamtstellenanzahl von einem Zehntausendstel einer Währungseinheit.<br />
Wenn money-Werte in das Zeichenformat konvertiert werden, werden ihre<br />
Zeichenformatwerte allerdings nur auf zwei Stellen genau aufgezeichnet.<br />
Beschreibungen und entsprechende Anwendungen von Datentypen in<br />
Adaptive Server finden Sie in Kapitel 1, „System and User-Defined<br />
Datatypes“, der Dokumentation Reference Manual.<br />
Präfixlänge Präfixlänge zeigt die Byteanzahl im Feldlängen-Präfix an. Die Präfixlänge ist<br />
ein ganzzahliger Wert ohne Vorzeichen von 0, 1, 2 oder 4 Byte, der in die Host-<br />
Datendatei eingebettet ist, die die tatsächliche Länge der im Feld enthaltenen<br />
Daten angibt. Es ist möglich, dass manche Felder Längenpräfixe haben, andere<br />
hingegen nicht.<br />
Tabelle 3-9 zeigt die zulässigen Präfixlängenwerte.<br />
Tabelle 3-9: Erlaubte Präfixlängenwerte<br />
Länge (in Byte) Bereich<br />
0 Kein Präfix<br />
1 2 8 -1; 0-255<br />
2 216-1; 0-65535<br />
4 2 32 -1; 0-4,294,967,295<br />
Hostdatei-Datenlänge Hostdatei-Datenlänge bezieht sich auf die maximale Anzahl von zu<br />
kopierenden Bytes im Feld. Um zu bestimmen, wie viele Daten zu importieren<br />
oder exportieren sind, verwendet bcp einen der folgenden Werte:<br />
Die maximale Feldlänge<br />
Die Präfixlänge (falls vorhanden)<br />
Die Feldabschlusszeichen-Zeichenfolge (falls vorhanden)<br />
Wenn mehr als eine Methode der Feldlängenspezifikation angegeben wird,<br />
wählt bcp diejenige aus, die die geringste Menge an Daten kopiert.<br />
Abschlusszeichen Das Abschlusszeichen kann bis zu 30 Byte Zeichen enthalten, die in<br />
Anführungszeichen („ “) eingeschlossen werden. Das Abschlusszeichen<br />
kennzeichnet das Ende der Daten für das Host-Datendateifeld.<br />
Server-<br />
Spaltenreihenfolge<br />
Die Server-Spaltenreihenfolge stellt die colid (Spaltenkennung) der<br />
syscolumns-Spalte dar, in die die Spalte der Hostdatendatei eingelesen<br />
werden soll. Zusammen mit der Hostdatei-Spaltenreihenfolge bildet dieses<br />
Element die Host-Datendatei-Felder der Datenbank-Tabellenspalten ab.<br />
<strong>Dienstprogramme</strong> 53
Beispiele: Daten interaktiv exportieren<br />
Server-Spaltenname Der Server-Spaltenname ist der Name der Datenbank-Tabellenspalte,<br />
in die das Feld eingelesen wird.<br />
Spalten-<br />
Gesamtstellenzahl<br />
Spalten-<br />
Dezimalstellen<br />
Die Spalten-Gesamtstellenzahl ist die Gesamtstellenzahl der Datenbank-<br />
Tabellenspalte, in die dieses Feld geladen wird. Dieses Element ist nur<br />
vorhanden, wenn als Speicherungsformat numeric oder decimal vorgegeben ist.<br />
Die Spalten-Dezimalstellen sind die Dezimalstellen der Datenbank-<br />
Tabellenspalte, in die dieses Feld geladen wird. Dieses Element ist nur<br />
vorhanden, wenn als Speicherungsformat numeric oder decimal vorgegeben ist.<br />
Beispiele: Daten interaktiv exportieren<br />
Indem Sie die Standardwerte der Eingabeaufforderungen für bcp ändern,<br />
können Sie Daten so aufbereiten, dass sie von anderer Software verarbeitet<br />
werden können.<br />
Um eine vom Benutzer lesbare Datei zu erstellen, beantworten Sie die bcp-<br />
Eingabeaufforderungen wie folgt:<br />
Dateispeichertyp – Geben Sie 0 ein.<br />
Präfixlänge – Geben Sie 0 ein.<br />
Feldlänge – Übernehmen Sie den Standardwert.<br />
Abschlusszeichen – Das einzugebende Feldabschlusszeichen hängt von<br />
der von Ihnen verwendeten Software ab.<br />
Wählen Sie zwischen begrenzten Feldern oder Feldern mit fester<br />
Länge. Verwenden Sie stets \n, das Neue-Zeile-Abschlusszeichen,<br />
um das letzte Feld abzuschließen.<br />
Bei Feldern mit fester Länge dürfen Sie kein Abschlusszeichen<br />
verwenden. Jedes Feld hat eine feste Länge, wobei Leerstellen die<br />
Felder auffüllen. Benachbarte Felder, in denen die Daten das erste<br />
Feld vollständig anfüllen, scheinen ineinander überzugehen, da es<br />
keine Feldseparatoren in jeder Zeile der Ausgabe gibt. Siehe<br />
untenstehendes Beispiel.<br />
Für eine Komma-begrenzte Ausgabe verwenden Sie ein Komma (,)<br />
als Abschlusszeichen für die einzelnen Felder. Um eine tabulare<br />
Ausgabe zu erzielen, verwenden Sie das Tabulatorzeichen (\t).<br />
54 Adaptive Server Enterprise
Daten mit Feldlängen exportieren<br />
bcp pubs2..sales out sal_out<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Das folgende Beispiel verwendet Felder mit fester Länge, um eine Ausgabe im<br />
Personal-Computer-Format namens SDF (System Data Format) zu erstellen.<br />
Dieses Format kann von anderer Software problemlos gelesen oder erzeugt<br />
werden.<br />
Hinweis Hinweise zu Formatdateien finden Sie unter „Formatdateien<br />
verwenden“ auf Seite 50.<br />
Die Ergebnisse werden folgendermaßen in der sal_out-Datei gespeichert:<br />
5023 AB-123-DEF-425-1Z3 Oct 31 1985 12:00AM<br />
5023 AB-872-DEF-732-2Z1 Nov 6 1985 12:00AM<br />
5023 AX-532-FED-452-2Z7 Dec 1 1990 12:00AM<br />
5023 BS-345-DSE-860-1F2 Dec 12 1986 12:00AM<br />
5023 GH-542-NAD-713-9F9 Mar 15 1987 12:00AM<br />
5023 NF-123-ADS-642-9G3 Jul 18 1987 12:00AM<br />
5023 XS-135-DER-432-8J2 Mar 21 1991 12:00AM<br />
5023 ZA-000-ASD-324-4D1 Jul 27 1988 12:00AM<br />
5023 ZD-123-DFG-752-9G8 Mar 21 1991 12:00AM<br />
5023 ZS-645-CAT-415-1B2 Mar 21 1991 12:00AM<br />
5023 ZZ-999-ZZZ-999-0A0 Mar 21 1991 12:00AM<br />
6380 234518 Sep 30 1987 12:00AM<br />
6380 342157 Dec 13 1985 12:00AM<br />
6380 356921 Feb 17 1991 12:00AM<br />
7066 BA27618 Oct 12 1985 12:00AM<br />
7066 BA52498 Oct 27 1987 12:00AM<br />
7066 BA71224 Aug 5 1988 12:00AM<br />
7067 NB-1.142 Jan 2 1987 12:00AM<br />
7067 NB-3.142 Jun 13 1990 12:00AM<br />
7131 Asoap132 Nov 16 1986 12:00AM<br />
7131 Asoap432 Dec 20 1990 12:00AM<br />
7131 Fsoap867 Sep 8 1987 12:00AM<br />
7896 124152 Aug 14 1986 12:00AM<br />
7896 234518 Feb 14 1991 12:00AM<br />
8042 12-F-9 Jul 13 1986 12:00AM<br />
8042 13-E-7 May 23 1989 12:00AM<br />
8042 13-J-9 Jan 13 1988 12:00AM<br />
8042 55-V-7 Mar 20 1991 12:00AM<br />
8042 91-A-7 Mar 20 1991 12:00AM<br />
8042 91-V-7 Mar 20 1991 12:00AM<br />
<strong>Dienstprogramme</strong> 55
Beispiele: Daten interaktiv exportieren<br />
Die Formatdatei sal_fmt sieht wie folgt aus:<br />
10.0<br />
3<br />
1 SYBCHAR 04 "" 1 stor_id<br />
2 SYBCHAR 020 "" 2 ord_num<br />
3 SYBCHAR 026 "" 3 date<br />
Daten mit Begrenzern exportieren<br />
Hinweise zu Formatdateien finden Sie unter „Formatdateien verwenden“ auf<br />
Seite 50.<br />
In diesem Beispiel kopiert bcp interaktiv Daten aus der publishers-Tabelle in<br />
eine Datei.<br />
Hinweis Hinweise zu Formatdateien finden Sie unter „Formatdateien<br />
verwenden“ auf Seite 50.<br />
Komma- und Neue-Zeile-begrenzte Ausgabe mit Formatdatei<br />
Das erste Beispiel erstellt eine Ausgabe mit Kommas zwischen allen Feldern<br />
in einer Zeile und einem Neue-Zeile-Abschlusszeichen am Ende jeder Zeile.<br />
Es erstellt eine Formatdatei (pub_fmt), die Sie später verwenden können,<br />
um dieselben oder ähnliche Daten in die Adaptive Server-Installation<br />
zurückzukopieren.<br />
bcp pubs2..publishers out pub_out<br />
Die Ergebnisse werden folgendermaßen in der pub_out-Datei gespeichert:<br />
0736,New Age Books,Boston,MA<br />
0877,Binnet & Hardley,Washington,DC<br />
1389,Algodata Infosystems,Berkeley,CA<br />
56 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Der Inhalt der pub_fmt-Formatdatei sieht wie folgt aus:<br />
10.0<br />
4<br />
1 SYBCHAR 0 4 "," 1 pub_id<br />
2 SYBCHAR 0 40 "," 2 pub_name<br />
3 SYBCHAR 0 20 "," 3 city<br />
4 SYBCHAR 0 2 "\n" 4 state<br />
Tabulator-begrenzte Ausgabe mit Formatdatei<br />
Entsprechend erstellt das folgende Beispiel eine tabulator-begrenzte Ausgabe<br />
von der Tabelle pubs2..publishers in der Datei pub_out.<br />
bcp pubs2..publishers out pub_out<br />
Die Ergebnisse werden in der pub_out-Datei folgendermaßen gespeichert:<br />
0736 New Age Books Boston MA<br />
0877 Binnet & Hardley Washington DC<br />
1389 Algodata Infosystems Berkeley CA<br />
Der Inhalt der pub_fmt-Formatdatei sieht wie folgt aus:<br />
10.0<br />
4<br />
1 SYBCHAR 04 "\t" 1 pub_id<br />
2 SYBCHAR 040 "\t" 2 pub_name<br />
3 SYBCHAR 020 "\t" 3 city<br />
4 SYBCHAR 02 "\n" 4 state<br />
Beispiele: Daten interaktiv importieren<br />
Um Daten einer Datei erfolgreich in eine Tabelle zu kopieren, müssen Sie<br />
wissen, welche Abschlusszeichen die Datei enthält, oder welche Werte die<br />
Feldlängen haben. Die entsprechenden Angaben sind einzugeben, wenn Sie<br />
bcp verwenden.<br />
Die folgenden Beispiele zeigen, wie man Daten entweder mit Feldern fester<br />
Länge oder mit Begrenzern importiert, wobei bcp mit oder ohne eine<br />
Formatdatei verwendet wird.<br />
<strong>Dienstprogramme</strong> 57
Beispiele: Daten interaktiv importieren<br />
Daten mit Feldlängen importieren<br />
In diesem Beispiel kopiert bcp Daten aus der Datei salesnew in die Tabelle<br />
pubs2..sales.<br />
In der salesnew-Datei gibt es drei Felder: das erste ist 4, das zweite 20<br />
und das dritte 26 Zeichen lang. Jede Zeile endet mit einem Neue-Zeile-<br />
Abschlusszeichen (\n), und zwar folgendermaßen:<br />
5023ZS-731-AAB-780-2B9 May 24 1993 12:00:00:000AM<br />
5023XC-362-CFB-387-3Z5 May 24 1993 12:00:00:000AM<br />
6380837206 May 24 1993 12:00:00:000AM<br />
6380838441 May 24 1993 12:00:00:000AM<br />
Mit dem folgenden Befehl werden die Daten interaktiv aus salesnew in die<br />
Tabelle kopiert:<br />
bcp pubs2..sales in salesnew<br />
Das System antwortet folgendermaßen auf den bcp-Befehl:<br />
Password:<br />
Enter the file storage type of field stor_id [char]:<br />
Enter prefix-length of field stor_id [0]:<br />
Enter length of field stor_id [4]:<br />
Enter field terminator [none]:<br />
Enter the file storage type of field ord_num [char]:<br />
Enter prefix-length of field ord_num [1]: 0<br />
Enter length of field ord_num [20]:<br />
Enter field terminator [none]:<br />
Enter the file storage type of field date [datetime]: char<br />
Enter prefix-length of field date [1]: 0<br />
Enter length of field date [26]:<br />
Enter field terminator [none]: \n<br />
Do you want to save this format information in a file? [Y/n] y<br />
Host filename [bcp.fmt]: salesin_fmt<br />
Starting copy...<br />
4 rows copied.<br />
Clock Time (ms.): total = 1 Avg = 0 (116000.00 rows per sec.)<br />
Wenn Sie sich bei Adaptive Server anmelden und auf sales zugreifen, können<br />
Sie die folgenden Daten aus salesnew sehen, die an die Tabelle angehängt sind:<br />
select * from sales<br />
stor_id ord_num date<br />
------- -------------------- -------------------------<br />
5023 AB-123-DEF-425-1Z3 Oct 31 1985 12:00AM<br />
5023 AB-872-DEF-732-2Z1 Nov 6 1985 12:00AM<br />
58 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
5023 AX-532-FED-452-2Z7 Dec 1 1990 12:00AM<br />
5023 BS-345-DSE-860-1F2 Dec 12 1986 12:00AM<br />
5023 GH-542-NAD-713-9F9 Mar 15 1987 12:00AM<br />
5023 NF-123-ADS-642-9G3 Jul 18 1987 12:00AM<br />
5023 XS-135-DER-432-8J2 Mar 21 1991 12:00AM<br />
5023 ZA-000-ASD-324-4D1 Jul 27 1988 12:00AM<br />
5023 ZD-123-DFG-752-9G8 Mar 21 1991 12:00AM<br />
5023 ZS-645-CAT-415-1B2 Mar 21 1991 12:00AM<br />
5023 ZZ-999-ZZZ-999-0A0 Mar 21 1991 12:00AM<br />
6380 234518 Sep 30 1987 12:00AM<br />
6380 342157 Dec 13 1985 12:00AM<br />
6380 356921 Feb 17 1991 12:00AM<br />
7066 BA27618 Oct 12 1985 12:00AM<br />
7066 BA52498 Oct 27 1987 12:00AM<br />
7066 BA71224 Aug 5 1988 12:00AM<br />
7067 NB-1.142 Jan 2 1987 12:00AM<br />
7067 NB-3.142 Jun 13 1990 12:00AM<br />
7131 Asoap132 Nov 16 1986 12:00AM<br />
7131 Asoap432 Dec 20 1990 12:00AM<br />
7131 Fsoap867 Sep 8 1987 12:00AM<br />
7896 124152 Aug 14 1986 12:00AM<br />
7896 234518 Feb 14 1991 12:00AM<br />
8042 12-F-9 Jul 13 1986 12:00AM<br />
8042 13-E-7 May 23 1989 12:00AM<br />
8042 13-J-9 Jan 13 1988 12:00AM<br />
8042 55-V-7 Mar 20 1991 12:00AM<br />
8042 91-A-7 Mar 20 1991 12:00AM<br />
8042 91-V-7 Mar 20 1991 12:00AM<br />
(34 rows affected)<br />
Da es einen eindeutigen Clustered-Index auf den Spalten stor_id- und ord_num<br />
von sales gibt, werden die neuen Zeilen sortiert.<br />
Ein Konflikt oder Regelverstoß kann sich auf den Kopierprozess<br />
folgendermaßen auswirken:<br />
Wenn es in den Daten, die aus der Datei kopiert wurden, eine Verletzung<br />
des eindeutigen Indizes auf den Spalten gegeben hätte, wäre von bcp die<br />
gesamte Anweisungsfolge verworfen worden, in der die problematische<br />
Zeile aufgetreten ist.<br />
Eine Anweisungsfolgengröße von 1 berechnet jede Zeile einzeln, lädt<br />
jedoch langsamer und erstellt eine separate Datenseite für jede Zeile<br />
während einer bcp-Sitzung.<br />
Wenn die kopierten Typen nicht mit den Datenbanktypen kompatibel sind,<br />
scheitert der gesamte Kopiervorgang.<br />
<strong>Dienstprogramme</strong> 59
Beispiele: Daten interaktiv importieren<br />
Daten mit Begrenzern importieren<br />
In diesem Beispiel kopiert bcp Daten aus der Datei newpubs in die Tabelle<br />
pubs2..publishers. In der newpubs-Datei endet jedes Feld in einer Zeile mit<br />
einem Tabulatorzeichen (\t), und jede Zeile mit einem Neue-Zeile-<br />
Abschlusszeichen (\n). Dies sieht so aus:<br />
1111 Stone Age Books Boston MA<br />
2222 Harley & Davidson Washington DC<br />
3333 Infodata Algosystems Berkeley CA<br />
Da newpubs nur Zeichendaten enthält, können Sie die Zeichen-<br />
Befehlszeilenmarkierung verwenden und die Abschlusszeichen mit<br />
den Befehlszeilenoptionen folgendermaßen angeben:<br />
Auf UNIX-Plattformen:<br />
Daten mit einer Formatdatei importieren<br />
bcp pubs2..publishers in newpubs -c -t\\t -r\\n<br />
Unter Windows NT:<br />
bcp pubs2..publishers in newpubs -c -t\t -r\n<br />
Um Daten unter Verwendung der gespeicherten Formatdatei pub_fmt<br />
zurück in die Adaptive Server-Installation zu kopieren, verwenden Sie<br />
den folgenden Befehl:<br />
bcp pubs2..publishers in pub_out -fpub_fmt<br />
Sie können die pub_fmt-Datei verwenden, um Daten mit demselben Format<br />
in die Adaptive Server-Installation zu kopieren. Wenn Sie eine ähnliche<br />
Datendatei mit anderen Begrenzern haben, können Sie die Begrenzer in der<br />
Formatdatei ändern.<br />
Auf gleiche Weise können Sie die Formatdatei bearbeiten, um etwaige<br />
Änderungen von Feldlängen zu berücksichtigen, solange alle Felder dieselbe<br />
Länge haben. Die Datei moresales enthält beispielsweise die folgenden Daten:<br />
804213-L-9 Jan 21 1993 12:00AM<br />
804255-N-8 Mar 12 1993 12:00AM<br />
804291-T-4 Mar 23 1993 12:00AM<br />
804291-W-9 Mar 23 1993 12:00AM<br />
60 Adaptive Server Enterprise
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Bearbeiten Sie die Formatdatei sal_fmt, damit sie folgendermaßen aussieht:<br />
10.0<br />
3<br />
1 SYBCHAR 0 4 "" 1 stor_id<br />
2 SYBCHAR 0 7 "" 2 stor_id<br />
3 SYBCHAR 0 21 "\n" 3 date<br />
Dann geben Sie folgenden Befehl ein:<br />
Auf UNIX-Plattformen:<br />
bcp pubs2..sales in moresales -fsal_fmt<br />
Unter Windows NT:<br />
bcp pubs2..sales in moresale -fsal_fmt<br />
Das System meldet sich wie folgt:<br />
Starting copy...<br />
4 rows copied.<br />
Clock Time (ms.): total = 1 Avg = 0 (116000.00 rows per sec.)<br />
bcp mit anderen Sprachen verwenden<br />
Adaptive Server speichert Daten mit dem Standard-Zeichensatz, der<br />
während der Installation konfiguriert wurde. Wenn Ihr Terminal diesen<br />
Standard-Zeichensatz nicht unterstützt, kann er irreführende Zeichen an bcp<br />
versenden, sobald Sie einer Eingabeaufforderung durch Eingabe von Zeichen<br />
nachkommen oder Hostdatei-Skripts verwenden.<br />
Wenn Sie keine Zeichensatz-Optionen auswählen, verwendet bcp den<br />
Zeichensatz, der als Standardwert für die Plattform angegeben wurde.<br />
Dieser Standardwert kann folgende Kommunikationsprobleme entwickeln:<br />
Der Standardwert ist nicht unbedingt der gleiche Zeichensatz, der für<br />
den Adaptive Server konfiguriert wurde.<br />
Der Standard ist nicht unbedingt der Zeichensatz, den der Client<br />
verwendet.<br />
Weitere Hinweise über Zeichensätze und zugeordnete Optionen finden Sie<br />
in Kapitel 8, „Konfiguration der Client/Server-Zeichensatzkonvertierung“,<br />
der Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
<strong>Dienstprogramme</strong> 61
cp und Zugriffsregeln auf Zeilenebene<br />
bcp und Zugriffsregeln auf Zeilenebene<br />
Wenn Adaptive Server für den Zugriff auf Zeilenebene aktiviert ist und<br />
Sie Daten aus einer Tabelle kopieren, kopiert bcp nur die Zeilen, auf die Sie<br />
Zugriff haben. Um die gesamte Tabelle zu kopieren, müssen Sie zuerst die<br />
Zugriffsregeln löschen und dann bcp out ausführen. Richten Sie im Anschluss<br />
die Zugriffsregeln wieder ein, falls zutreffend.<br />
Wenn Sie große Datenmengen mit bcp in eine Tabelle kopieren,<br />
für die Zugriffsregeln aktiv sind, gibt Adaptive Server möglicherweise<br />
Fehlermeldungen bezüglich einer „Verletzung der Eindeutigkeit“ aus. Wenn<br />
Sie z.B. Daten aus einer bcp-Datendatei einlesen, die erzeugt wurde, bevor<br />
die Zugriffsregeln für die Tabelle erstellt wurden, und die bcp-Datendatei<br />
Zeilen enthält, die davor in die Tabelle eingefügt wurden, können Sie diesen<br />
Fehlertyp erhalten.<br />
Ist dies der Fall, hat der Benutzer den Eindruck, dass die Zeilen, für die der bcp-<br />
Einfügevorgang aufgrund der Eindeutigkeitsverletzung fehlgeschlagen ist,<br />
in der Tabelle nicht enthalten sind. In Wahrheit hat der Benutzer aufgrund<br />
der Zugriffsregeln lediglich keinen Zugriff auf die „fehlenden“ Zeilen.<br />
Um die gesamte Tabelle zu kopieren, löschen Sie die Zugriffsregeln,<br />
lesen die Daten ein und setzen die Zugriffsregeln danach wieder ein.<br />
Importieren und Anweisungsfolgedateien<br />
Die Anweisungsfolgefunktion gilt nur, wenn Sie mit dem Massenexport/import<br />
Daten in eine Tabelle kopieren. Sie hat keine Wirkung, wenn Sie Daten<br />
aus einer Tabelle exportieren. Standardmäßig kopiert Adaptive Server alle<br />
Zeilen in Anweisungsfolgen von 1000 Ausgabezeilen. Um eine andere Größe<br />
der Anweisungsfolge festzulegen, verwenden Sie den Programm-<br />
Startparameter (-b).<br />
bcp kopiert alle Anweisungsfolgen in einer einzigen Transaktion. Wenn<br />
Adaptive Server eine beliebige Zeile in der Anweisungsfolge verwirft, wird die<br />
gesamte Transaktion zurückgesetzt. Standardmäßig kopiert bcp alle Zeilen in<br />
einer einzigen Anweisungsfolge. Verwenden Sie den -b -Parameter, um die<br />
Standard-Anweisungsfolgengröße zu ändern. Adaptive Server betrachtet<br />
jede Anweisungsfolge als einen einzelnen bcp-Vorgang, schreibt jede<br />
Anweisungsfolge auf eine separate Datenseite und fährt mit der nächsten<br />
Anweisungsfolge fort, unabhängig davon, ob die vorherige Transaktion<br />
erfolgreich war oder nicht.<br />
62 Adaptive Server Enterprise
Wiederherstellbarkeit erleichtern<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Die importierten Daten können entweder von Adaptive Server oder von bcp<br />
zurückgewiesen werden.<br />
Adaptive Server behandelt jede Anweisungsfolge als eine eigene<br />
Transaktion. Wenn der Server eine beliebige Zeile in der Anweisungsfolge<br />
verwirft, wird die gesamte Transaktion zurückgesetzt.<br />
Wenn bcp eine Anweisungsfolge zurückweist, wird mit der nächsten<br />
Anweisungsfolge fortgefahren. Nur schwerwiegende Fehler machen die<br />
Transaktion rückgängig.<br />
Adaptive Server erzeugt Fehlermeldungen pro Anweisungsfolge und<br />
nicht pro Zeile. Wenn ein Fehler gefunden wird, wird die gesamte<br />
Anweisungsfolge verworfen. Fehlermeldungen werden auf Ihrem<br />
Terminal und in der Fehlerdatei angezeigt.<br />
So sorgen Sie für eine verbesserte Wiederherstellbarkeit:<br />
Teilen Sie große Eingabedateien in kleinere Einheiten auf.<br />
Beispiel: Sie verwenden bcp mit einer Anweisungsfolgengröße von<br />
100.000 Zeilen, um 300.000 Zeilen zu importieren. Nach Zeile 200.000<br />
tritt ein schwerwiegender Fehler auf. bcp hat in diesem Fall die ersten zwei<br />
Anweisungsfolgen (200.000 Zeilen) erfolgreich in die Adaptive Server-<br />
Installation kopiert. Ohne Anweisungsfolgenfunktion hätte bcp keine<br />
Zeilen in Adaptive Server kopieren können.<br />
Stellen Sie trunc log on chkpt auf true (aktiviert) ein.<br />
Der Logeintrag für die Transaktion kann nach Abschluss der<br />
Anweisungsfolge gekürzt werden. Wenn Sie in eine Datenbank kopieren,<br />
für die die Datenbankoption trunc log on chkpt eingeschaltet ist (true),<br />
entfernt der nächste automatische Checkpoint die Logeinträge für<br />
abgeschlossene Anweisungsfolgen. Damit werden große bcp-Vorgänge<br />
zerlegt, was wiederum verhindert, dass das Log zu sehr wächst.<br />
Stellen Sie -b batch_size auf 10 ein.<br />
Die Einstellung des Anweisungsfolgengröße-Parameters auf 10<br />
bewirkt, dass bcp die Anweisungsfolge von 10 Zeilen, einschließlich der<br />
fehlerhaften Zeile, zurückweist. Anhand des Fehlerlogs können Sie bei<br />
dieser Einstellung präzise ermitteln, welche Zeile fehlerhaft ist.<br />
<strong>Dienstprogramme</strong> 63
Exportieren und Text- und Bilddaten<br />
bcp verarbeitet Anweisungsfolgen mit einer Mindestgröße von 1.<br />
Hinweis bcp erstellt 1 Datenseite pro Anweisungsfolge. Wenn Sie b<br />
batch_size auf 10 einstellen, werden 10 Zeilen auf jeder Seite erstellt.<br />
Wenn Sie -b batch_size auf 1 einstellen, werden Datenseiten mit 1 Zeile<br />
pro Seite erstellt. Diese Einstellung führt dazu, dass Daten langsam<br />
geladen werden und Speicherplatz beansprucht wird.<br />
Anweisungsfolgen und partitionierte Tabellen<br />
Wenn Sie beim Massenexport/-import von Daten in eine partitionierte Tabelle<br />
kopieren, ohne eine Partitionsnummer anzugeben, ordnet Adaptive Server jede<br />
Anweisungsfolge nach dem Zufallsprinzip (ungesteuert) einer verfügbaren<br />
Partition zu. Das Kopieren von Zeilen in einer einzigen Anweisungsfolge<br />
platziert alle kopierten Zeilen in eine einzige Partition, was ein<br />
Ungleichgewicht beim Laden der partitionierten Tabelle zur Folge<br />
haben könnte.<br />
Um zu erreichen, dass partitionierte Tabellen gleichmäßig geladen werden,<br />
sollten Sie beim Kopieren mit dem Massenexport/-import der Daten eine<br />
geringe Anweisungsfolgengröße verwenden oder während der bcp-Sitzung<br />
eine Partitionskennung angeben. Weitere Hinweise zu Tabellenpartitionen<br />
finden Sie in der Dokumentation Performance and Tuning Guide.<br />
Exportieren und Text- und Bilddaten<br />
Wenn Sie text oder image -Daten exportieren, kopiert Adaptive Server<br />
standardmäßig nur die ersten 32 KByte der Daten in ein text oder image-Feld.<br />
Mit dem Parameter -T text_or_image_size können Sie einen anderen Wert<br />
angeben. Beispiel: Wenn das Feld text, das aus der Tabelle kopiert werden soll,<br />
bis zu 40 KByte Daten enthält, kopieren Sie die gesamten 40 KByte mit dem<br />
folgenden Befehl:<br />
bcp pubs2..publishers out -T40960<br />
Hinweis Wenn ein text or image-Feld größer als der angegebene Wert oder der<br />
Standardwert ist, exportiert bcp die verbleibenden Daten nicht.<br />
64 Adaptive Server Enterprise
Netzwerkpaketgröße festlegen<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Um die Performance von umfangreichen Massenexport/-importen zu erhöhen,<br />
empfiehlt es sich, größere Netzwerkpaketgrößen als die Standardwerte zu<br />
verwenden. Die Option -A Größe gibt die Netzwerkpaketgröße an, die in einer<br />
bcp-Sitzung verwendet werden soll.<br />
Der Wert von Größe muss<br />
zwischen den für die Konfigurationsparameter default network packet size<br />
und max network packet size festgelegten Werten liegen und<br />
ein Vielfaches von 512 sein<br />
Hinweis Die neue Paketgröße gilt nur für die aktuelle bcp-Sitzung.<br />
Der folgende Befehl legt beispielsweise fest, dass Adaptive Server 40 KByte<br />
von text oder image-Daten mit einer Paketgröße von 2048 Byte für diese bcp-<br />
Sitzung verwendet.<br />
bcp pubs2..authors out -A 2048 -T40960<br />
Importieren und Fehlerdateien<br />
Wenn Sie die Option -e error_file beim Importieren angeben, speichert bcp die<br />
Zeilen, die nicht in die Adaptive Server-Installation kopiert werden konnten,<br />
in der angegebenen Fehlerdatei.<br />
Die Fehlerdatei speichert die folgenden Elemente:<br />
Eine Ausgabezeile, die angibt, welche Zeile fehlgeschlagen und<br />
welcher Fehler aufgetreten ist<br />
Eine Ausgabezeile, die eine exakte Kopie der Zeile in der Hostdatei<br />
darstellt<br />
Wenn der nach dem -e angegebene Dateiname bereits vorhanden ist,<br />
überschreibt bcp die vorhandene Datei.<br />
Wenn bcp auf keine Fehler stößt, wird die Datei nicht erstellt.<br />
<strong>Dienstprogramme</strong> 65
Importieren und Fehlerdateien<br />
bcp in erkennt zwei Typen von Fehlern:<br />
Datenkonvertierungsfehler<br />
Fehler beim Kompilieren der Zeile: Versuche, einen Nullwert in Spalten<br />
einzufügen, die keine Nullwerte akzeptieren, oder unzulässige<br />
Datenformate (wie eine 3-Byte-Ganzzahl)<br />
Der laufende Kopiervorgang zeigt Fehlermeldungen auf Ihrem Bildschirm an.<br />
Das folgende Beispiel lädt die Datei newpubs in die Datenbank publishers,<br />
wobei etwaige Fehlerzeilen in der Datei pub_err gespeichert werden:<br />
bcp pubs2..publishers in newpubs -epub_err<br />
Beachten Sie Folgendes, wenn Sie mit Fehlerdateien arbeiten, die beim<br />
Importieren erzeugt werden:<br />
bcp speichert Zeilen nur in einer Fehlerdatei, wenn das Programm bcp<br />
selbst den Fehler entdeckt.<br />
bcp kopiert weitere Zeilen, bis bcp auf die Höchstzahl von Fehlerzeilen<br />
stößt, woraufhin bcp den Kopiervorgang stoppt.<br />
bcp sendet Zeilen in Anweisungsfolgen an Adaptive Server, daher kann<br />
bcp keine Kopien von Zeilen speichern, die Adaptive Server zurückweist<br />
(z.B. bei einer doppelten Zeile für eine Tabelle, die einen eindeutigen<br />
Index hat).<br />
Adaptive Server erzeugt Fehlermeldungen pro Anweisungsfolge und nicht<br />
pro Zeile. Wenn ein Fehler gefunden wird, wird die gesamte<br />
Anweisungsfolge verworfen.<br />
Adaptive Server sieht es nicht als Fehler an, doppelte Zeilen zu verwerfen,<br />
wenn entweder allow_dup_row oder ignore_dup_key beim Erstellen<br />
eines Tabellenindex festgelegt wurden. Der Kopiervorgang wird normal<br />
weitergeführt, aber die doppelten Zeilen werden weder in der Tabelle noch<br />
in der bcp-Fehlerdatei gespeichert.<br />
66 Adaptive Server Enterprise
Exportieren und Fehlerdateien<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Wie beim Importieren überschreibt bcp während des Exportvorgangs<br />
eine Datei desselben Namens und erstellt die Fehlerdatei nur, wenn Fehler<br />
auftreten.<br />
Es gibt zwei Situationen, in denen Zeilen während des Kopierens von Daten<br />
aus einer Tabelle in der Fehlerdatei protokolliert werden:<br />
Ein Daten-Konvertierungsfehler in einer der Spalten der Zeile<br />
Ein I/O-Fehler beim Schreiben in die Hostdatei<br />
Beachten Sie Folgendes, wenn Sie mit Fehlerdateien arbeiten, die beim<br />
Exportieren erzeugt werden:<br />
bcp protokolliert Zeilen in der Fehlerdatei im Standard-Zeichenformat.<br />
Alle Daten werden als Zeichen mit Tabulatoren zwischen den Spalten und<br />
einem Neue-Zeile-Abschlusszeichen am Ende jeder Zeile angezeigt.<br />
Datenintegrität: Standardwerte, Regeln und Trigger<br />
Standardwerte und Datentypen<br />
Um Datenintegrität zu gewährleisten, verarbeitet bcp die zu kopierenden Daten<br />
abhängig von den dazugehörigen Elementen.<br />
Wenn Sie Daten in eine Tabelle kopieren, beachtet bcp die Standardwerte,<br />
die für Spalten und benutzerdefinierte Datentypen definiert sind. Das heißt,<br />
wenn es ein Nullfeld in den Daten in einer Datei gibt, lädt bcp während des<br />
Kopiervorgangs statt des Nullwerts den Standardwert.<br />
Beispiel: Die folgenden zwei Zeilen sollen in authors geladen werden:<br />
409-56-7008,Bennet,David,415 658-9932,622 Pine<br />
St.,Berkeley,CA,USA,94705213-46-8915,Green,Marjorie,,309 63rd St.<br />
#411,Oakland,CA,USA,94618<br />
<strong>Dienstprogramme</strong> 67
Wie unterscheidet sich bcp von anderen <strong>Dienstprogramme</strong>n?<br />
Kommas trennen die Felder und ein Neue-Zeile-Abschlusszeichen trennt die<br />
Zeilen. Es gibt keine Telefonnummer für Marjorie Green. Da die Spalte phone<br />
der Tabelle authors einen Standardwert von „unknown“ (unbekannt) hat,<br />
werden die Zeilen in der geladenen Tabelle folgendermaßen dargestellt:<br />
409-56-7008 Bennet David 415 658-9932 622 Pine St.<br />
Berkeley CA USA 94705<br />
213-46-8915 Green Marjorie unknown 309 63rd St. #411<br />
Oakland CA USA 94618<br />
Regeln und Trigger<br />
Um die maximale Geschwindigkeit beim Laden von Daten zu ermöglichen,<br />
aktiviert bcp weder Regeln noch Trigger.<br />
Um Zeilen zu ermitteln, die Regeln oder Trigger übertreten, kopieren Sie die<br />
Daten in die Tabelle und führen Abfragen oder gespeicherte Prozeduren aus,<br />
die die Regel- oder Trigger-Bedingungen testen.<br />
Wie unterscheidet sich bcp von anderen<br />
<strong>Dienstprogramme</strong>n?<br />
dump database,<br />
load database,<br />
dump transaction<br />
und load transaction<br />
Das bcp-Dienstprogramm kopiert komplette Tabellen oder Teile einer<br />
einzelnen Tabelle und unterscheidet sich von anderen <strong>Dienstprogramme</strong>n zum<br />
Verschieben von Daten.<br />
Die folgende Liste führt andere <strong>Dienstprogramme</strong> und ihre Befehle auf und<br />
beschreibt, wie Sie sie am besten zum Verschieben von Daten verwenden.<br />
Verwenden Sie die SQL-Befehle dump database, load database, dump<br />
transaction und load transaction nur für Sicherungszwecke. Im Gegensatz zu<br />
bcp erstellen die dump-Befehle ein physisches Abbild der gesamten<br />
Datenbank.<br />
Sie müssen load database oder load transaction verwenden, um mit dump<br />
database oder dump transaction gesicherte Daten zu laden.<br />
Weitere Hinweise zur Verwendung der SQL-Befehle dump und load finden Sie<br />
in den Dokumentationen Systemadministration für Adaptive Server Enterprise<br />
und Reference Manual.<br />
68 Adaptive Server Enterprise
insert, update<br />
und delete<br />
Kapitel 3 Daten mit bcp in und aus Adaptive Server übertragen<br />
Verwenden Sie die Datenänderungsbefehle insert, update und delete, um einer<br />
Tabelle oder Ansicht neue Zeilen hinzuzufügen, vorhandene Zeilen darin zu<br />
ändern oder Zeilen aus einer Tabelle oder Ansicht zu entfernen.<br />
Verwenden Sie den insert-Befehl mit einer select-Anweisung, um Daten<br />
zwischen Tabellen zu verschieben.<br />
Verwenden Sie die select-Anweisung mit einer into-Klausel, um eine neue<br />
Tabelle zu erstellen, basierend auf:<br />
den in der select-Anweisung angegebenen Spalten<br />
den in der from-Klausel angegebenen Tabellen und<br />
Daten der in der where-Klausel angegebenen Zeilen<br />
Hinweise zum Hinzufügen, Ändern oder Löschen von Daten finden Sie unter<br />
insert, update und delete in der Dokumentation Reference Manual.<br />
<strong>Dienstprogramme</strong> 69
Wie unterscheidet sich bcp von anderen <strong>Dienstprogramme</strong>n?<br />
70 Adaptive Server Enterprise
KAPITEL 4 dsedit verwenden<br />
Mit dsedit arbeiten<br />
dsedit starten<br />
Dieses Kapitel beschreibt, wie Sie das dsedit-Dienstprogramm<br />
verwenden, um die Adaptive Server-Interfaces-Datei zu bearbeiten.<br />
Thema Seite<br />
Mit dsedit arbeiten 71<br />
Servereinträge hinzufügen, anzeigen und bearbeiten 75<br />
dsedit-Fehlerbehandlung 83<br />
dsedit ist ein grafisches Dienstprogramm, mit dem Sie Servereinträge in<br />
der Interfaces-Datei (sql.ini in Windows 98 und Windows NT) anzeigen<br />
und bearbeiten können. Eine ausführliche Beschreibung der dsedit-Syntax<br />
finden Sie unter „dsedit“ auf Seite 218.<br />
Hinweis UNIX-Benutzer: Wenn Ihr System kein X-Windows enthält,<br />
verwenden Sie dscp, um Servereinträge in der Interfaces-Datei zu<br />
konfigurieren. Weitere Informationen finden Sie in Kapitel 5, „dscp<br />
verwenden“.<br />
Windows NT Sie können dsedit von der Befehlszeilen, vom Windows NT Explorer oder<br />
von der Programmgruppe „<strong>Sybase</strong>“ aus starten.<br />
❖ dsedit von der Befehlszeile aus starten<br />
Geben Sie ein:<br />
dsedit<br />
<strong>Dienstprogramme</strong> 71
Mit dsedit arbeiten<br />
Sie können eine der folgenden Befehlszeilenoptionen festlegen:<br />
-ddsName – Benennt den Verzeichnisdienst, mit dem eine<br />
Verbindung hergestellt werden soll. dsName ist der lokale Name des<br />
Verzeichnisdienstes, wie er in der libtcl.cfg-Datei aufgeführt ist.<br />
Wenn Sie das Argument -ddsName nicht angeben, zeigt dsedit im<br />
ersten Dialogfeld eine Liste mit Verzeichnisdienstoptionen an.<br />
-lPfad – Benennt den Pfad zur libtcl.cfg-Datei, wenn dieser nicht<br />
SYBASE_home\INI ist. Benutzen Sie dieses Argument nur, wenn<br />
Sie eine andere libtcl.cfg-Datei verwenden möchten als die in<br />
SYBASE_home\INI gespeicherte.<br />
❖ dsedit mit dem Windows NT Explorer starten<br />
1 Wechseln Sie ins Verzeichnis %SYBASE%\bin\.<br />
2 Doppelklicken Sie auf die DSEDIT.exe-Datei.<br />
❖ e dsedit mit der Windows-Programmgruppe starten<br />
1 Im Menü „Start“ wählen Sie „<strong>Sybase</strong>“.<br />
2 Wählen Sie dsedit im Menü „<strong>Sybase</strong>“. Das Dialogfeld „Select Directory<br />
Service“ (Verzeichnisdienst wählen) erscheint.<br />
UNIX-Plattformen Bevor Sie dsedit starten, vergewissern Sie sich, dass Sie eine Schreibberechtigung<br />
für die Interfaces-Datei haben.<br />
Wenn Sie dsedit von einem entfernten Rechner ausführen, stellen Sie sicher,<br />
dass die DISPLAY-Umgebungsvariable so eingestellt ist, dass die dsedit-<br />
Bildschirme auf Ihrem System und nicht auf dem entfernten Rechner angezeigt<br />
werden.<br />
❖ DISPLAY-Umgebungsvariable einstellen<br />
1 Melden Sie sich beim entfernten Rechner an.<br />
2 Geben Sie ein:<br />
❖ dsedit starten<br />
setenv DISPLAY Name_Ihres_Rechners:0.0<br />
Geben Sie ein:<br />
$SYBASE/bin/dsedit<br />
Das Dialogfeld „Select Directory Service“ (Verzeichnisdienst wählen)<br />
erscheint. Mit diesem Fenster können Sie Sitzungen zur Bearbeitung<br />
der Interfaces-Datei öffnen. Der vollständige Pfadname der Standard-<br />
Interfaces-Datei wird im Feld „Interfaces File to Edit“ angezeigt. Der<br />
vollständige Pfadname der Konfigurationsdatei ist darunter zu sehen.<br />
72 Adaptive Server Enterprise
Eine Bearbeitungssitzung öffnen<br />
Kapitel 4 dsedit verwenden<br />
Windows NT Das Dialogfeld „Select Directory Service“ ermöglicht es Ihnen, eine Sitzung<br />
mit einem Verzeichnisdienst zu öffnen. Sie können eine Sitzung<br />
folgendermaßen öffnen:<br />
Mit jedem Verzeichnisdienst, der einen Treiber in der libtcl.cfg-Datei<br />
angeführt hat.<br />
Mit der sql.ini-Datei.<br />
❖ Eine Sitzung in Windows NT öffnen<br />
1 Doppelklicken Sie auf den lokalen Namen des Directory Services, mit<br />
dem Sie sich verbinden wollen, wie im Feld „DS Name“ aufgelistet.<br />
2 Oder klicken Sie auf den lokalen Namen des Directory Services,<br />
mit dem Sie sich verbinden wollen, wie im Feld „DS Name“ aufgelistet,<br />
und klicken Sie auf die Schaltfläche „OK“.<br />
Hinweis dsedit verwendet die SYBASE-Umgebungsvariable, um die<br />
libtcl.cfg-Datei zu lokalisieren. Wenn die SYBASE-Umgebungsvariable<br />
nicht korrekt eingestellt ist, kann dsedit die libtcl.cfg-Datei nicht finden.<br />
Die Sitzungsnummer und der lokale Name des Verzeichnisdienstes<br />
erscheinen in der Titelleiste.<br />
❖ Zusätzliche Sitzungen öffnen<br />
Sie können mit dsedit mehrere Sitzungen gleichzeitig geöffnet haben.<br />
1 Wählen Sie „Open Directory Service“ aus dem Menü „File“ aus.<br />
Das Feld „Select Directory Service“ erscheint.<br />
2 Doppelklicken Sie auf den lokalen Namen des Directory Services,<br />
mit dem Sie sich verbinden wollen (oder klicken Sie auf den Directory<br />
Service-Namen und wählen „OK“).<br />
Wenn Sie mehrere Sitzungen öffnen, können Sie Einträge von einem<br />
Verzeichnisdienst in einen anderen kopieren. Weitere Informationen finden<br />
Sie unter „Servereinträge kopieren“ auf Seite 82.<br />
<strong>Dienstprogramme</strong> 73
Mit dsedit arbeiten<br />
UNIX-Plattformen<br />
❖ Zwischen Sitzungen wechseln<br />
Wenn Sie gleichzeitig mehrere Sitzungen geöffnet haben, müssen Sie eine<br />
Sitzung aktivieren, bevor Sie in ihr arbeiten können.<br />
Zum Aktivieren einer Sitzung stehen Ihnen zwei Möglichkeiten zur<br />
Verfügung:<br />
Klicken Sie auf das Sitzungsfenster.<br />
Wählen Sie die Sitzung aus dem Windows-Menü.<br />
Die dsedit-Titelleiste zeigt an, welche Sitzung aktiv ist.<br />
❖ Standard-Interfaces-Datei für die Bearbeitung öffnen<br />
1 Wählen Sie „<strong>Sybase</strong> Interfaces File“ aus.<br />
2 Klicken Sie auf OK.<br />
❖ Eine andere als die Standard-Interfaces-Datei öffnen<br />
1 Wählen Sie „<strong>Sybase</strong> Interfaces File“ aus.<br />
2 Bearbeiten Sie den angezeigten Dateinamen.<br />
3 Klicken Sie auf OK.<br />
Das Fenster „Directory Service Session“ wird angezeigt.<br />
Sie können mehrere Interfaces-Datei-Sitzungen mit verschiedenen Dateien<br />
öffnen.<br />
Der Bildschirm „Directory Service Session“ zeigt den vollständigen<br />
Pfadnamen der Interfaces-Datei an und listet die darin enthaltenen<br />
Servereinträge auf.<br />
Add new server entry – Zeigt das Fenster „Server Entry Editor“ an, in dem<br />
Sie Name und Netzwerkadresse für einen neuen Servereintrag festlegen.<br />
Modify server entry – Damit können Sie die Netzwerkadressen für einen<br />
ausgewählten Servereintrag anzeigen und ändern. Um einen Servereintrag<br />
anzuzeigen oder zu ändern, wählen Sie den Server in der Liste aus und<br />
klicken auf „Modify server entry“, um die Attribute des Servers im Fenster<br />
„Server Entry Editor“ anzuzeigen.<br />
Copy server entry – Damit können Sie einen oder mehrere Einträge in eine<br />
andere Interfaces-Datei kopieren.<br />
Close Session – Schließt das Sitzungsfenster und schreibt die Änderungen<br />
in die Interfaces-Datei.<br />
74 Adaptive Server Enterprise
Kapitel 4 dsedit verwenden<br />
Prozeduren zur Verwendung dieser Schaltflächen werden unter<br />
„Servereinträge in Windows NT ändern“ auf Seite 76 beschrieben.<br />
Ein Klicken auf die Schaltflächen „Add new server entry“ oder „Modify server<br />
entry“ zeigt das Fenster „Server Entry Editor“ an.<br />
Sie verwenden das Fenster „Server Entry Editor“, um Servereinträge in einer<br />
Interfaces-Datei anzuzeigen und zu bearbeiten.<br />
Server name – Wenn Sie einen Servereintrag hinzufügen, geben Sie den<br />
Namen des neuen Servers ein. Wenn Sie einen Servereintrag bearbeiten,<br />
können Sie das Namensfeld bearbeiten, um den Server umzubenennen.<br />
Der neue Name darf nicht bereits in der Interfaces-Datei vorhanden sein.<br />
Available network transports – Eine Liste von Netzwerkadressen, bei<br />
denen der Server Clientverbindungen akzeptiert.<br />
Um eine neue Adresse zu erstellen, klicken Sie auf „Add network<br />
transport“. Siehe „Servereinträge in Windows NT ändern“ auf<br />
Seite 76.<br />
Um eine vorhandene Adresse zu bearbeiten, klicken Sie auf „Modify<br />
network transport“. Siehe „Servereinträge in Windows NT ändern“<br />
auf Seite 76.<br />
Um eine ausgewählte Netzwerkadresse zu entfernen, klicken Sie auf<br />
„Delete network transport“.<br />
Um die Reihenfolge der Adressen in der Liste zu ändern, klicken<br />
Sie auf „Move network transport up“ oder „Move network<br />
transport down“.<br />
OK – Schreibt Ihre Änderungen fest und schließt das Fenster. Änderungen<br />
in der Interfaces-Datei werden erst angewandt, wenn Sie die Sitzung mit<br />
der Schaltfläche „Close Session“ des Fensters „Directory Service<br />
Session“ schließen.<br />
Cancel – Schließt das Fenster, ohne etwaige Änderungen anzuwenden.<br />
Servereinträge hinzufügen, anzeigen und bearbeiten<br />
Sobald Sie sich in einer geöffneten Sitzung befinden, können Sie<br />
Servereinträge, die dieser Sitzung zugeordnet sind, hinzufügen, ändern,<br />
umbenennen und löschen, wie auch Servereinträge innerhalb einer Sitzung<br />
kopieren oder von Sitzung zu Sitzung übertragen.<br />
<strong>Dienstprogramme</strong> 75
Servereinträge hinzufügen, anzeigen und bearbeiten<br />
Servereinträge in Windows NT ändern<br />
Die Servereinträge dieser Sitzung erscheinen im Feld „Server“. Klicken Sie auf<br />
einen Servereintrag, um ihn auszuwählen.<br />
Ein Servereintrag umfasst verschiedene Attribute. Die Attribute werden in<br />
Tabelle 4-1 beschrieben.<br />
Attributname Typ des<br />
Werts<br />
Tabelle 4-1: Serverattribute<br />
Beschreibung Standardwert<br />
Server Version Ganzzahl Versionsebene der Server-Objektdefinition. <strong>Sybase</strong> benutzt<br />
dieses Attribut, um künftige Änderungen der<br />
Objektdefinition zu identifizieren.<br />
110<br />
Server Name Zeichenfolge Servername k.A.<br />
Server Service Zeichenfolge Eine Beschreibung der vom Server gebotenen Dienste.<br />
Dieser Wert kann jede beliebige sinntragende<br />
Beschreibung sein.<br />
Server Status Ganzzahl Der Betriebsstatus des Servers. Gültige Werte sind:<br />
Active (Aktiv)<br />
Stopped (Gestoppt)<br />
Failed (Fehlgeschlagen)<br />
Unknown (Unbekannt)<br />
Security<br />
Mechanism<br />
Zeichenfolge Zeichenfolgen für Objektbezeichner (OID), die die vom<br />
Server unterstützten Sicherheitsmechanismen angeben.<br />
Diese Attribute sind fakultativ. Wenn sie ausgelassen<br />
werden, ermöglicht Open Server Clients, sich mit jedem<br />
Sicherheitsmechanismus zu verbinden, für den Open<br />
Server einen entsprechenden Sicherheitstreiber hat.<br />
Adaptive<br />
Server<br />
76 Adaptive Server Enterprise<br />
4<br />
k.A.
❖ Einen Servereintrag hinzufügen<br />
Kapitel 4 dsedit verwenden<br />
Attributname Typ des<br />
Werts<br />
Beschreibung Standardwert<br />
Server Address Zeichenfolge Eine oder mehrere Adressen für den Server<br />
Das Format der Adresse variiert je nach Protokoll und einige<br />
Protokolle lassen mehr als ein Format zu. Die Optionen sind:<br />
TCP/IP – zwei Formate:<br />
Computername,Portnummer<br />
IP-Adresse,Portnummer<br />
Named Pipe – pipe name: „\pipe“ ist das erforderliche<br />
Präfix für alle Pipe-Namen. Server-Pipes können nur lokal<br />
sein.<br />
Lokal – \pipe\sql\query<br />
Entfernt – \\computer_name\pipe\sql\query<br />
IPX/SPX – drei Formate:<br />
Servername<br />
Netz-Nummer,Knoten-Nummer, Socket-Nummer<br />
Servername,Socket-Nummer<br />
DECnet – vier Formate:<br />
Bereichsnummer.Knotennummer,Objektname<br />
Bereichsnummer.Knotennummer,Objektnummer<br />
Knotenname,Objektname<br />
Knotenname,Objektnummer<br />
k.A.<br />
1 Wählen Sie „Server Object | Add“.<br />
2 Geben Sie einen Servernamen in das Feld „Server Name“ ein.<br />
3 Klicken Sie auf OK.<br />
Der Servereintrag erscheint im Feld „Server“. Wenn Sie für den Server<br />
eine Adresse angeben möchten, müssen Sie den Eintrag ändern.<br />
❖ Ein Serverattribut ändern<br />
Sie können alle Attribute eines Servereintrags ändern.<br />
1 Klicken Sie auf einen Servereintrag im Feld „Server“.<br />
2 Wählen Sie „Server Object | Modify Attribute“.<br />
<strong>Dienstprogramme</strong> 77
Servereinträge hinzufügen, anzeigen und bearbeiten<br />
3 Klicken Sie auf das Attribut, das Sie ändern wollen, im Feld „Attributes“.<br />
Ein Dialogfeld wird angezeigt, das den Wert des aktuellen Attributs<br />
enthält.<br />
4 Geben Sie einen neuen Wert für das Attribut ein oder wählen Sie einen aus<br />
der Dropdown-Liste.<br />
In Tabelle 4-1 auf Seite 76 finden Sie eine Beschreibung aller Attribute.<br />
5 Klicken Sie auf OK.<br />
❖ Einen Servereintrag umbenennen<br />
1 Klicken Sie auf einen Servereintrag im Feld „Server“.<br />
2 Wählen Sie „Server Object | Rename“.<br />
3 Geben Sie einen neuen Namen für den Servereintrag im Feld „Server<br />
Name“ ein.<br />
4 Klicken Sie auf OK.<br />
❖ Einen Servereintrag löschen<br />
1 Klicken Sie auf einen Servereintrag im Feld „Server“.<br />
2 Wählen Sie „Server Object | Delete“.<br />
❖ Servereinträge innerhalb der aktuellen Sitzung kopieren<br />
1 Klicken Sie auf einen oder mehrere Servereinträge im Feld „Server“.<br />
Benutzen Sie die Umschalttaste, um mehrere Einträge zu markieren.<br />
2 Klicken Sie auf die Schaltfläche „Copy“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Copy“.<br />
3 Klicken Sie auf die Schaltfläche „Paste“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Paste“.<br />
dsedit fügt an die kopierten Servereinträge eine Versionsnummer _n an.<br />
Sie können die kopierten Servereinträge mit der Option „Server Object |<br />
Rename“ umbenennen. Weitere Informationen finden Sie unter „Einen<br />
Servereintrag umbenennen“ auf Seite 78.<br />
78 Adaptive Server Enterprise
❖ Servereinträge zwischen Sitzungen kopieren<br />
Kapitel 4 dsedit verwenden<br />
1 Öffnen Sie eine Sitzung mit dem Directory Service oder der sql.ini-Datei,<br />
in die Sie Einträge kopieren möchten.<br />
2 Um eine Sitzung zu öffnen, wählen Sie „File | Open Directory Service“.<br />
Weitere Informationen finden Sie unter „Zusätzliche Sitzungen öffnen“<br />
auf Seite 73.<br />
3 Klicken Sie auf einen oder mehrere Servereinträge im Feld „Server“ der<br />
Sitzung, aus der Sie Einträge kopieren möchten.<br />
Benutzen Sie die Umschalttaste, um mehrere Einträge zu markieren.<br />
4 Um die Servereinträge zu kopieren, klicken Sie auf die Schaltfläche<br />
„Copy“ (unterhalb der Menüleiste) oder wählen Sie „Edit | Copy“.<br />
Um die Servereinträge auszuschneiden, klicken Sie auf die Schaltfläche<br />
„Cut“ (unterhalb der Menüleiste) oder wählen Sie „Edit | Cut“.<br />
5 Aktivieren Sie die Sitzung, in der Sie die Servereinträge einfügen wollen.<br />
Weitere Anweisungen zum Aktivieren einer Sitzung finden Sie unter<br />
„Zwischen Sitzungen wechseln“ auf Seite 74.<br />
6 Klicken Sie auf die Schaltfläche „Paste“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Paste“.<br />
Sie können die kopierten Servereinträge mit „Server Object | Rename“<br />
umbenennen. Weitere Informationen finden Sie unter „Zwischen Sitzungen<br />
wechseln“ auf Seite 74.<br />
Servereinträge auf UNIX-Plattformen ändern<br />
Um die Prozeduren in diesem Abschnitt auszuführen, öffnen Sie das Fenster<br />
für die Interfaces-Datei-Sitzung, indem Sie die Anleitungen unter „Eine<br />
Bearbeitungssitzung öffnen“ auf Seite 73 verwenden.<br />
Hinweis Nachdem Sie die einzelnen Prozeduren in diesem Abschnitt<br />
ausgeführt haben, müssen Sie auf „Close Session“ klicken, um Ihre<br />
Bearbeitungen an der Interfaces-Datei anzuwenden. Ein Klicken auf diese<br />
Schaltfläche schließt auch das Fenster für die Interfaces-Datei-Sitzung.<br />
<strong>Dienstprogramme</strong> 79
Servereinträge hinzufügen, anzeigen und bearbeiten<br />
❖ Einen neuen Servereintrag hinzufügen<br />
1 Klicken Sie auf „Add new server entry“.<br />
2 Geben Sie Namen und Netzwerkadresse für einen neuen Servereintrag an.<br />
❖ Einen Servereintrag anzeigen oder ändern<br />
1 Klicken Sie auf „Modify server entry“.<br />
2 Führen Sie die Änderungen an den Attributen durch.<br />
❖ Einen Servereintrag in eine andere Interfaces-Datei kopieren<br />
1 Wählen Sie die zu kopierenden Einträge mit einer der folgenden Methoden<br />
aus:<br />
Um einen einzelnen Eintrag zu kopieren, klicken Sie einmal auf ihn.<br />
Um eine Reihe von aufeinanderfolgenden Einträgen zu kopieren,<br />
klicken Sie auf den ersten Eintrag der Reihe, dann drücken Sie die<br />
Umschalttaste und halten sie gedrückt, während Sie auf den letzten<br />
Eintrag der Reihe klicken. Sie können auch „verkehrtherum“<br />
auswählen, indem Sie auf den letzten Eintrag klicken, die<br />
Umschalttaste gedrückt halten und auf den ersten Eintrag klicken.<br />
Um mehrere, nicht zusammenhängende Einträge auszuwählen,<br />
drücken Sie die Strg-Taste und halten sie gedrückt, während Sie<br />
auf die einzelnen Einträge klicken.<br />
2 Klicken Sie auf „Copy server entry“.<br />
3 Wählen Sie die <strong>Sybase</strong>-Interfaces-Datei in der Liste aus.<br />
4 Bearbeiten Sie den angezeigten Dateinamen.<br />
5 Klicken Sie auf OK.<br />
Netzwerktransportadressen hinzufügen oder bearbeiten<br />
Mit dem Fenster „Network Transport Editor“ können Sie die Transportadressen<br />
anzeigen, bearbeiten oder erstellen, bei denen ein Server<br />
Clientverbindungen akzeptiert. Dieses Fenster zeigt den Namen des Servereintrags<br />
für die Adresse an und erlaubt es Ihnen, die folgenden Elemente zu<br />
konfigurieren:<br />
Transport type – Legt das Protokoll und die Schnittstelle für die Adresse<br />
fest. Außer bei Digital UNIX gelten für alle Plattformen die Werte tcp, tli<br />
tcp, tli spx und spx. Bei Digital UNIX lauten die Werte decnet, tcp und tli tcp.<br />
80 Adaptive Server Enterprise
Kapitel 4 dsedit verwenden<br />
Address information – Abhängig vom Transporttyp sind unterschiedliche<br />
Adressenkomponenten erforderlich. Die folgenden Abschnitte<br />
beschreiben die Adressenformate genauer.<br />
TCP/IP-Adressen Die Adressenangaben für einen TCP/IP-Eintrag bestehen aus einem<br />
Hostnamen (oder IP-Adresse) und einer Portnummer (als Dezimalwert<br />
angegeben). Bei tli tcp-formatierten Interface-Einträgen werden IP-Adresse<br />
und Portnummer des Hosts in die hexadezimale 16-Byte-Darstellung<br />
konvertiert, die für tli tcp-formatierte Interfaces-Einträge erforderlich ist.<br />
Verwenden Sie tli tcp für Interface-Einträge in folgenden Fällen:<br />
Bei allen Clients vor der Version 10.0 auf Plattformen, die tli-formatierte<br />
Interface-Einträge verwenden.<br />
Bei Adaptive Server oder Replication Server Version 11.0.x oder früher<br />
auf Plattformen, die tli-formatierte Interface-Einträge verwenden.<br />
Verwenden Sie tcp bei anderen Clients und Servern.<br />
Um eine TCP/IP-Adresse anzugeben, wählen Sie tcp oder tli tcp im Menü<br />
„Transport Type“ aus.<br />
SPX/IPX-Adressen<br />
SPX/IPX-Adressen ermöglichen es Adaptive Server, nach Verbindungen von<br />
Clientanwendungen zu suchen, die auf einem Novell-Netzwerk ausführen.<br />
SPX/IPX-Adressen bestehen aus folgenden Elementen:<br />
Host address – Ein hexadezimaler Wert aus acht Ziffern, der die IP-<br />
Adresse des Rechners darstellt, auf dem der Server ausgeführt wird. Jede<br />
Komponente des durch Punkte unterteilten dezimalen IP-Adressenformats<br />
wird durch ein Byte im hexadezimalen Adressenformat abgebildet. Wenn<br />
zum Beispiel die IP-Adresse des Hosts 128.15.15.14 lautet, geben Sie<br />
„800F0F0E“ als den Wert für die SPX/IPX-Hostadresse ein.<br />
Port number – die Portnummer, dargestellt als hexadezimale Nummer aus<br />
vier Ziffern.<br />
Endpoint – der Pfad für die Devicedatei, der auf den SPX-Devicetreiber<br />
zeigt. Verweist standardmäßig auf /dev/mspx bei Solaris und auf /dev/nspx<br />
bei jeder anderen Plattform. Falls erforderlich korrigieren Sie den Pfad,<br />
damit er dem Rechner entspricht, auf dem der Server läuft. Der<br />
Standardpfad basiert auf der Plattform, auf der Sie dsedit ausführen.<br />
Um eine SPX/IPX-Adresse anzugeben, wählen Sie tli spx oder spx im Menü<br />
„Transport Type“ aus.<br />
<strong>Dienstprogramme</strong> 81
Servereinträge hinzufügen, anzeigen und bearbeiten<br />
Servereinträge kopieren<br />
Windows NT<br />
dsedit ermöglicht es Ihnen, Servereinträge innerhalb einer Sitzung und<br />
zwischen Sitzungen zu kopieren. Außerdem können Sie auch Einträge<br />
aus einer sql.ini-Datei in einen Verzeichnisdienst kopieren.<br />
❖ Servereinträge innerhalb der aktuellen Sitzung kopieren<br />
1 Klicken Sie auf einen oder mehrere Servereinträge im Feld „Server“.<br />
Benutzen Sie die Umschalttaste, um mehrere Einträge zu markieren.<br />
2 Klicken Sie auf die Schaltfläche „Copy“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Copy“.<br />
3 Klicken Sie auf die Schaltfläche „Paste“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Paste“.<br />
dsedit fügt an die kopierten Servereinträge eine Versionsnummer _n an.<br />
Sie können die kopierten Servereinträge mit „Server Object | Rename“<br />
umbenennen. Weitere Informationen finden Sie unter „Einen<br />
Servereintrag umbenennen“ auf Seite 78.<br />
❖ Servereinträge zwischen Sitzungen kopieren<br />
1 Öffnen Sie eine Sitzung mit dem Directory Service oder der sql.ini-Datei,<br />
in die Sie Einträge kopieren möchten.<br />
2 Um eine Sitzung zu öffnen, wählen Sie „File | Open Directory Service“.<br />
Weitere Informationen finden Sie unter „Zusätzliche Sitzungen öffnen“<br />
auf Seite 73.<br />
3 Klicken Sie auf einen oder mehrere Servereinträge im Feld „Server“ der<br />
Sitzung, aus der Sie Einträge kopieren möchten.<br />
Benutzen Sie die Umschalttaste, um mehrere Einträge zu markieren.<br />
4 Um die Servereinträge zu kopieren, klicken Sie auf die Schaltfläche<br />
„Copy“ (unterhalb der Menüleiste) oder wählen Sie „Edit | Copy“.<br />
Um die Servereinträge auszuschneiden, klicken Sie auf die Schaltfläche<br />
„Cut“ (unterhalb der Menüleiste) oder wählen Sie „Edit | Cut“.<br />
5 Aktivieren Sie die Sitzung, in der Sie die Servereinträge einfügen wollen.<br />
Weitere Anweisungen zum Aktivieren einer Sitzung finden Sie unter<br />
„So wechseln Sie zu einer anderen geöffneten Sitzung“ auf Seite 86.<br />
82 Adaptive Server Enterprise
UNIX-Plattformen<br />
Kapitel 4 dsedit verwenden<br />
6 Klicken Sie auf die Schaltfläche „Paste“ (unterhalb der Menüleiste),<br />
oder wählen Sie „Edit | Paste“.<br />
Sie können die kopierten Servereinträge mit dem Befehl „Rename“ im Menü<br />
„Server Object“ umbenennen. Weitere Informationen finden Sie unter „Einen<br />
Servereintrag umbenennen“ auf Seite 78.<br />
❖ Einen Servereintrag in eine andere Interfaces-Datei kopieren<br />
dsedit-Fehlerbehandlung<br />
1 Wählen Sie die zu kopierenden Einträge mit einer der folgenden<br />
Methoden aus:<br />
Um einen einzelnen Eintrag zu kopieren, klicken Sie einmal auf ihn.<br />
Um eine Reihe von aufeinanderfolgenden Einträgen zu kopieren,<br />
klicken Sie auf den ersten Eintrag der Reihe, dann drücken Sie die<br />
Umschalttaste und halten sie gedrückt, während Sie auf den letzten<br />
Eintrag der Reihe klicken. Sie können auch „verkehrtherum“<br />
auswählen, indem Sie auf den letzten Eintrag klicken, die<br />
Umschalttaste gedrückt halten und auf den ersten Eintrag klicken.<br />
Um mehrere, nicht zusammenhängende Einträge auszuwählen,<br />
drücken Sie die Strg-Taste und halten sie gedrückt, während Sie<br />
auf die einzelnen Einträge klicken.<br />
2 Klicken Sie auf „Copy server entry“.<br />
3 Wählen Sie die <strong>Sybase</strong>-Interfaces-Datei in der Liste aus.<br />
4 Bearbeiten Sie den angezeigten Dateinamen.<br />
5 Klicken Sie auf OK.<br />
Dieser Abschnitt listet einige übliche dsedit-Probleme auf und beschreibt,<br />
wie sie zu beheben sind.<br />
Das dsedit-Dienstprogramm startet nicht<br />
Überprüfen Sie Folgendes:<br />
<strong>Dienstprogramme</strong> 83
dsedit-Fehlerbehandlung<br />
Die SYBASE-Umgebungsvariable ist nicht eingestellt oder verweist auf<br />
das falsche Verzeichnis.<br />
UNIX-Plattformen X-Windows ist nicht korrekt konfiguriert. Wenn<br />
Sie dsedit auf einem entfernten Host ausführen, stellen Sie sicher, dass<br />
X-Windows-Clients auf dem entfernten Host sich mit dem X-Windows-<br />
Server auf Ihrem Rechner verbinden können. In Ihrer X-Windows-<br />
Dokumentation finden Sie weitere Hinweise über die Fehlerbehandlung.<br />
Wenn X-Windows nicht verfügbar ist, verwenden Sie dscp anstelle<br />
von dsedit.<br />
Fehlermeldung: „Öffnen der X-Anzeige nicht möglich“<br />
UNIX-Plattformen dsedit funktioniert möglicherweise nicht, weil der<br />
Anzeige-Rechner so eingestellt ist, dass er X-Windows-Verbindungen von<br />
entfernten Hosts zurückweist. Wenn das das Problem ist, wird eine Meldung<br />
angezeigt, die der folgenden ähnlich ist:<br />
Unable to open X display. Check the value of your<br />
$DISPLAY variable. If it is set correctly, use the<br />
'xhost +' command on the display machine to authorize<br />
use of the X display. If no X display is available,<br />
run dscp instead of dsedit.<br />
Dieser Fehler kann aus einer der folgenden Situationen entstehen:<br />
Der Wert der DISPLAY-Umgebungsvariable ist nicht korrekt eingegeben<br />
oder nicht eingestellt.<br />
Lösung: Geben Sie die DISPLAY-Umgebungsvariable korrekt ein.<br />
Sie sind nicht berechtigt, Fenster auf dem Rechner zu öffnen, auf den sich<br />
DISPLAY bezieht.<br />
Lösung: Führen Sie den Befehl ‘xhost +’ auf dem Anzeige-Rechner aus.<br />
Hinzufügen, Ändern oder Löschen von Servereinträgen nicht<br />
möglich<br />
Überprüfen Sie die Berechtigungen für die Interfaces-Datei. Um Interface-<br />
Einträge bearbeiten zu können, müssen Sie eine Schreibberechtigung sowohl<br />
für die Interfaces-Datei als auch für das <strong>Sybase</strong>-Installationsverzeichnis haben.<br />
84 Adaptive Server Enterprise
KAPITEL 5 dscp verwenden<br />
Mit dscp arbeiten<br />
dscp ist ein UNIX-Dienstprogramm, mit dem Sie Servereinträge in der<br />
Interface-Datei anzeigen und bearbeiten können.<br />
Hinweis dscp ist nicht für Windows NT verfügbar.<br />
Thema Seite<br />
Mit dscp arbeiten 85<br />
Mit Servereinträgen arbeiten 87<br />
dscp beenden 93<br />
Übersicht über die dscp-Dienstprogrammbefehle 93<br />
Eine ausführliche Beschreibung der dscp-Syntax finden Sie unter dscp auf<br />
Seite 217.<br />
❖ So starten Sie dscp<br />
Geben Sie ein:<br />
$SYBASE/bin/dscp<br />
Die dscp-Eingabeaufforderung >> wird angezeigt.<br />
❖ So rufen Sie die dscp-Hilfe auf<br />
Um den dscp-Hilfebildschirm anzuzeigen, geben Sie einen der<br />
folgenden Befehle ein:<br />
help<br />
h<br />
?<br />
<strong>Dienstprogramme</strong> 85
Mit dscp arbeiten<br />
Eine dscp-Sitzung verwenden<br />
Bevor Sie Servereinträge anzeigen, hinzufügen oder ändern können, müssen<br />
Sie eine Sitzung öffnen, damit Sie mit der Interface-Datei arbeiten können.<br />
Sie können mehrere Sitzungen gleichzeitig geöffnet haben.<br />
❖ So öffnen Sie eine Sitzung mit der Interface-Datei:<br />
Geben Sie ein:<br />
open InterfacesDriver<br />
Wenn Sie eine Sitzung öffnen, gibt dscp die Nummer der Sitzung an.<br />
Wenn Sie zum Beispiel eine Sitzung mit dem Befehl open InterfacesDriver<br />
öffnen, zeigt dscp die folgende Meldung an:<br />
ok<br />
Session 1 InterfacesDriver>><br />
❖ So listen Sie alle geöffneten Sitzungen auf<br />
Geben Sie ein:<br />
sess<br />
❖ So wechseln Sie zu einer anderen geöffneten Sitzung<br />
Geben Sie Folgendes ein, wobei Sitzungsnummer die tatsächliche<br />
Sitzungsnummer ist:<br />
switch Sitzungsnummer<br />
Um zum Beispiel zu Sitzung 3 zu wechseln, geben Sie Folgendes ein:<br />
switch 3<br />
Das Schlüsselwort switch ist fakultativ. Wenn Sie zum Beispiel nur „3“<br />
eingeben, wechseln Sie ebenfalls zur Sitzung 3.<br />
❖ So schließen Sie eine Sitzung<br />
Geben Sie Folgendes ein, wobei Sitzungsnummer die tatsächliche<br />
Sitzungsnummer ist:<br />
close Sitzungsnummer<br />
Sitzung 3 zum Beispiel wird geschlossen, wenn Sie Folgendes eingeben:<br />
close 3<br />
Wenn Sie keine Sitzungsnummer angeben, schließt dscp die aktuelle<br />
Sitzung.<br />
86 Adaptive Server Enterprise
Mit Servereinträgen arbeiten<br />
Mit dscp können Sie Servereinträge hinzufügen und ändern.<br />
Servereinträge hinzufügen und ändern<br />
Kapitel 5 dscp verwenden<br />
Nachdem Sie eine Sitzung geöffnet haben, können Sie in dieser Sitzung<br />
Servereinträge hinzufügen oder ändern.<br />
Hinweis Wenn Sie einen Servereintrag hinzufügen oder ändern, erstellt<br />
oder ändert dscp automatisch sowohl die Master-Ausgabezeilen als auch die<br />
Abfragen-Ausgabezeilen. Die Master- und die Abfragen-Ausgabezeilen einer<br />
Interface-Datei enthalten identische Informationen.<br />
Ein Servereintrag umfasst verschiedene Attribute. Wenn Sie einen<br />
Servereintrag hinzufügen oder ändern, fordert Sie dscp zur Eingabe von<br />
Informationen über jedes Attribut auf. Tabelle 5-2 beschreibt die einzelnen<br />
Attribute.<br />
Tabelle 5-1: Serverattribute<br />
Standardwert und<br />
Bearbeitung bei Hinzufügen<br />
oder Ändern eines<br />
Attribute Typ des Werts gültige Werte<br />
Servereintrags möglich<br />
Server Object Ganzzahl 110 Hinzufügen: Nein<br />
Version<br />
Ändern: Nein<br />
Server Name Zeichenfolge k.A. Hinzufügen: k.A.<br />
Ändern: Nein<br />
Server Service Zeichenfolge SQL SERVER Hinzufügen: Ja<br />
Ändern: Nein<br />
Server Status Ganzzahl 4<br />
Hinzufügen: Nein<br />
Gültige Werte sind:<br />
1 Active (Aktiv)<br />
2 Stopped (Gestoppt)<br />
3 Failed (Fehlgeschlagen)<br />
4 Unknown (Unbekannt)<br />
Ändern: Nein<br />
Transport Type Zeichenfolge tcp. Gültige Werte sind:<br />
decnet, spx, tcp, tli, spx,<br />
tli tcp<br />
Hinzufügen: Ja<br />
Ändern: Ja<br />
<strong>Dienstprogramme</strong> 87
Mit Servereinträgen arbeiten<br />
Attribute Typ des Werts<br />
Transport<br />
Address<br />
Security<br />
Mechanism<br />
Zeichenfolge Keiner. Gültige Werte sind<br />
Zeichenfolgen, die vom<br />
angegebenen Transporttyp<br />
erkannt werden.<br />
Zeichenfolge<br />
Hinweis Sie können bis<br />
zu 20 Sicherheitsmechanismen-<br />
Zeichenfolgen für<br />
jeden Servereintrag<br />
hinzufügen.<br />
❖ So fügen Sie einen Servereintrag hinzu<br />
1 Geben Sie ein:<br />
Standardwert und<br />
gültige Werte<br />
Keiner. Gültige Werte sind<br />
Zeichenfolgen,<br />
die Objektbezeichnern<br />
zugeordnet sind, die in der<br />
Datei objectid.dat<br />
des Benutzers festgelegt<br />
sind.<br />
add Servername<br />
Sie sind nun im Hinzufügungsmodus. Sie können weitere Servereinträge<br />
hinzufügen, allerdings können Sie keine anderen dscp-Befehle ausführen,<br />
bevor Sie nicht diesen Modus verlassen haben. Während Sie im<br />
Hinzufügungsmodus sind, fordert Sie dscp zur Eingabe von<br />
Informationen über Servername auf.<br />
2 Führen Sie eine der folgenden Maßnahmen durch:<br />
Geben Sie einen Wert für jedes Attribut ein, oder<br />
Drücken Sie die Eingabetaste, um den Standardwert zu akzeptieren,<br />
der in Klammern [ ] angezeigt wird.<br />
Beispiel: dscp fordert Sie zur Eingabe der nachstehenden Informationen<br />
auf, wenn Sie Folgendes eingeben:<br />
add myserver<br />
Hinzufügen: Ja<br />
Ändern: Ja<br />
Hinzufügen: Ja<br />
Ändern: Ja<br />
Service: [SQL Server]<br />
Transport Type: [tcp] tcp<br />
Transport Address: victory 8001<br />
Security Mechanism []:<br />
Bearbeitung bei Hinzufügen<br />
oder Ändern eines<br />
Servereintrags möglich<br />
Ein Servereintrag kann bis zu 20 zugeordnete Transporttyp/Adressen-<br />
Kombinationen enthalten.<br />
88 Adaptive Server Enterprise
Kapitel 5 dscp verwenden<br />
Eine Beschreibung der Serverattribute finden Sie in Tabelle 5-1 auf<br />
Seite 87.<br />
3 Um den Hinzufügungsmodus zu beenden, geben Sie Folgendes ein:<br />
#done<br />
❖ So ändern Sie einen Servereintrag<br />
Sie können mit dscp nicht die Versions-, Service- und Statuseinträge in der<br />
Interface-Datei ändern.<br />
1 Geben Sie ein:<br />
mod Servername<br />
Sie sind nun im Änderungsmodus. Sie können weitere Servereinträge<br />
ändern, allerdings können Sie keine anderen dscp-Befehle ausführen,<br />
bevor Sie nicht diesen Modus verlassen haben. Während Sie im<br />
Änderungsmodus sind, fordert Sie dscp zur Eingabe von Informationen<br />
über Servername auf.<br />
2 Führen Sie eine der folgenden Maßnahmen durch:<br />
Geben Sie einen Wert für jedes Attribut ein, oder<br />
Drücken Sie die Eingabetaste, um den Standardwert zu akzeptieren,<br />
der in Klammern [ ] angezeigt wird.<br />
Beispiel: dscp fordert Sie zur Eingabe der nachstehenden Informationen<br />
auf, wenn Sie Folgendes eingeben:<br />
mod myserver<br />
Version: [1]<br />
Service: [SQL Server] Open Server<br />
Status: [4]<br />
Address:<br />
Transport Type: [tcp]<br />
Transport Address: [victory 1824] victory 1826<br />
Transport Type: [tcp]<br />
Transport Address: [victory 1828]<br />
Transport Type: []<br />
Security Mechanism []:<br />
Eine Beschreibung der Serverattribute finden Sie in Tabelle 5-1 auf<br />
Seite 87.<br />
<strong>Dienstprogramme</strong> 89
Mit Servereinträgen arbeiten<br />
Servereinträge kopieren<br />
3 Um eine Adresse zu löschen, geben Sie Folgendes ein:<br />
#del<br />
4 Um den Änderungsmodus zu beenden, geben Sie Folgendes ein:<br />
#done<br />
dscp ermöglicht es Ihnen, Servereinträge innerhalb einer Sitzung und zwischen<br />
zwei Sitzungen zu kopieren. Es gibt vier Optionen, wenn Sie einen<br />
Servereintrag kopieren.<br />
Sie können Folgendes kopieren:<br />
Einen Servereintrag in einen neuen Namen in der aktuellen Sitzung<br />
Einen Servereintrag in eine andere Sitzung<br />
Einen Servereintrag in einen neuen Namen in einer anderen Sitzung<br />
Alle Einträge in der aktuellen Sitzung in eine andere Sitzung<br />
❖ So erstellen Sie einen neuen Servereintrag durch Kopieren<br />
Geben Sie ein:<br />
copy Name1 to Name2<br />
Nehmen wir als Beispiel folgende Eingabe:<br />
copy myserver to my_server<br />
dscp erstellt einen neuen Eintrag, „my_server“, der mit „myserver“<br />
identisch ist. Sie können den neuen Eintrag bearbeiten, ohne das Original<br />
zu ändern.<br />
❖ So kopieren Sie einen Servereintrag, ohne den Namen zu ändern:<br />
Geben Sie ein:<br />
copy Name1 to Sitzungsnr<br />
Zum Beispiel überträgt dscp den Eintrag „myserver“ der aktuellen Sitzung<br />
in die Sitzung 2, wenn Sie Folgendes eingeben:<br />
copy myserver to 2<br />
90 Adaptive Server Enterprise
❖ So kopieren Sie einen Servereintrag und benennen ihn um<br />
Geben Sie ein:<br />
copy Name1 to Sitzungsnr Name2<br />
Kapitel 5 dscp verwenden<br />
Zum Beispiel kopiert dscp den Eintrag „myserver“ der aktuellen Sitzung<br />
in die Sitzung 2 und benennt ihn in „my_server“ um, wenn Sie Folgendes<br />
eingeben:<br />
copy myserver to 2 my_server<br />
❖ So kopieren Sie alle Einträge in der aktuellen Sitzung in eine andere<br />
Sitzung<br />
Geben Sie ein:<br />
copyall Sitzungsnr<br />
Zum Beispiel kopiert dscp alle Einträge der aktuellen Sitzung in die<br />
Sitzung 2, wenn Sie Folgendes eingeben:<br />
copyall 2<br />
Inhalte von Servereinträgen auflisten und anzeigen<br />
Sie können die Namen und Attribute auflisten, die einer Sitzung<br />
zugeordnet sind.<br />
❖ So listen Sie die Namen von Servereinträgen auf<br />
Geben Sie ein:<br />
list<br />
❖ So listen Sie die Attribute von Servereinträgen auf<br />
Geben Sie ein:<br />
list all<br />
Eine Beschreibung der Serverattribute finden Sie in Tabelle 5-1 auf<br />
Seite 87.<br />
❖ So zeigen Sie den Inhalt eines Servereintrags an<br />
Geben Sie ein:<br />
read Servername<br />
<strong>Dienstprogramme</strong> 91
Mit Servereinträgen arbeiten<br />
Servereinträge löschen<br />
Die folgenden Informationen werden zum Beispiel angezeigt,<br />
wenn Sie Folgendes eingeben:<br />
read myserver<br />
DIT base for object: interfaces<br />
Distinguish name: myserver<br />
Server Version: 1<br />
Server Name: myserver<br />
Server Service: SQL Server<br />
Server Status: 4 (Unknown)<br />
Server Address:<br />
Transport Type: tcp<br />
Transport Addr: victory 1824<br />
Transport Type: tcp<br />
Transport Addr: victory 1828<br />
Eine Beschreibung der Serverattribute finden Sie in Tabelle 5-1 auf<br />
Seite 87.<br />
Sie können einen Eintrag oder alle Einträge löschen, die einer Sitzung<br />
zugeordnet sind.<br />
❖ So löschen Sie Einträge, die einer Sitzung zugeordnet sind<br />
Geben Sie ein:<br />
del Servername<br />
Zum Beispiel löscht dscp den Eintrag für „myserver“, wenn Sie Folgendes<br />
eingeben:<br />
del myserver<br />
❖ So löschen Sie alle Einträge, die einer Sitzung zugeordnet sind<br />
Geben Sie ein:<br />
delete-all<br />
92 Adaptive Server Enterprise
dscp beenden<br />
Kapitel 5 dscp verwenden<br />
Um dscp zu beenden, geben Sie einen der folgenden Befehle ein:<br />
exit<br />
quit<br />
Übersicht über die dscp-Dienstprogrammbefehle<br />
In dscp führen Sie Funktionen aus, indem Sie Befehle an der dscp-<br />
Eingabeaufforderung eingeben. Tabelle 5-2 bietet eine Übersicht über<br />
diese Befehle.<br />
Tabelle 5-2: dscp-Befehle<br />
Befehl Beschreibung<br />
add Servername Fügt den Servereintrag Servername in der aktuellen Sitzung ein. dscp fordert Sie zur<br />
Eingabe von Informationen über Servername auf. Drücken Sie die Eingabetaste, um den<br />
Standardwert zu akzeptieren, der in eckigen Klammern [ ] angezeigt wird. Geben Sie<br />
„#done“ ein, um den Hinzufügungsmodus zu beenden.<br />
addattr Servername Fügt dem Servereintrag Servername in der aktuellen Sitzung ein Attribut hinzu.<br />
close [Sitzungsnr] Schließt die Sitzung, die durch Sitzungsnr angegeben wird. Wenn Sie keine Sitzungsnr<br />
eingeben, wird die aktuelle Sitzung geschlossen.<br />
config Zeigt Konfigurationsinformationen an, die sich auf Ihre <strong>Sybase</strong>-Umgebung beziehen.<br />
copy Name1 to Kopiert den Servereintrag Name1 in der aktuellen Sitzung in:<br />
{Name2 | Sitzungsnr | den Servereintrag Name2 in der aktuellen Sitzung<br />
Sitzungsnr_Name2}<br />
die Sitzung Sitzungsnr oder<br />
den Servereintrag Name2 in Sitzung Sitzungsnr.<br />
copyall to Sitzungsnr Kopiert alle Servereinträge in der aktuellen Sitzung in die Sitzung Sitzungsnr.<br />
del Servername Löscht den Servereintrag Servername in der aktuellen Sitzung.<br />
delete-all Löscht alle Servereinträge in der aktuellen Sitzung.<br />
exit Beendet dscp.<br />
help, ?, h Zeigt die Online-Hilfe an.<br />
list [all] Listet die Servereinträge für die aktuelle Sitzung auf. Um die Namen der Einträge<br />
aufzulisten, verwenden Sie den Befehl list. Um die Attribute der einzelnen Einträge<br />
aufzulisten, verwenden Sie den Befehl list all.<br />
mod Servername Ändert den Servereintrag Servername in der aktuellen Sitzung. dscp fordert Sie zur<br />
Eingabe von Informationen über Servername auf. Drücken Sie die Eingabetaste, um den<br />
Standardwert zu akzeptieren, der in eckigen Klammern [] angezeigt wird. Geben Sie<br />
„#done“ ein, um den Änderungsmodus zu beenden.<br />
<strong>Dienstprogramme</strong> 93
Übersicht über die dscp-Dienstprogrammbefehle<br />
Befehl Beschreibung<br />
open [DS_Name] Öffnet eine Sitzung für den angegebenen Verzeichnisdienst (Directory Service), wobei<br />
DS_Name der Verzeichnisdienstname ist. Wenn Sie keinen Namen für DS_Name angeben,<br />
wird durch diesen Befehl eine Sitzung für den Standard-Verzeichnisdienst geöffnet.<br />
Um eine Sitzung zu öffnen, geben Sie den Wert „InterfacesDriver“ für DS_Name an.<br />
quit Beendet dscp.<br />
read Servername Zeigt den Inhalt des Servereintrags Servername an.<br />
sess Listet alle geöffneten Sitzungen auf.<br />
[switch] Sitzungsnr Macht die Sitzungsnummer Sitzungsnr zur aktuellen Sitzung.<br />
94 Adaptive Server Enterprise
KAPITEL 6 Migrations-Dienstprogramm<br />
Überblick<br />
In diesem Kapitel wird das Dienstprogramm sybmigrate erläutert.<br />
Thema Seite<br />
Überblick 95<br />
Vorbereitungen 100<br />
Migrationsprozess 103<br />
Aufgaben nach der Migration 130<br />
Daten aus Replication Server in Adaptive Server 12.5 migrieren 130<br />
Einschränkungen 138<br />
Problembehebung und Fehlermeldungen 140<br />
Hinweis sybmigrate kann nur auf Adaptive Server 12.5.0.1 und höher<br />
ausgeführt werden.<br />
Mit Adaptive Server 12.5 und höher können Sie die Seitengröße Ihres<br />
Servers mit 2 KByte, 4 KByte, 8 KByte oder 16 KByte konfigurieren.<br />
Bei den herkömmlichen Upgrade-Methoden von Adaptive Server können<br />
Sie die Seitengröße jedoch nicht ändern. Um die aktuelle Seitengröße<br />
Ihres Adaptive Server zu ändern, müssen Sie deshalb zunächst einen<br />
zweiten Adaptive Server mit der gewünschten Seitengröße installieren,<br />
und dann mit dem Dienstprogramm sybmigrate sowohl Schema als auch<br />
Daten aus dem alten Adaptive Server (Quelle) auf den neuen Adaptive<br />
Server (Ziel) kopieren.<br />
sybmigrate ermöglicht Ihnen auch die plattformübergreifende Migration.<br />
<strong>Dienstprogramme</strong> 95
Überblick<br />
Bestehende Lösungen<br />
Vorteile von sybmigrate<br />
Das Merkmal der variablen Seitengröße erhöht die Funktionalität und<br />
Nutzbarkeit von Adaptive Server, bietet jedoch für bestehende Kunden<br />
keine Upgrade-Möglichkeit. Benutzer, die die Seitengröße eines vorhandenen<br />
Adaptive Server ändern müssen, müssen einen neuen Server mit der<br />
gewünschten Seitengröße einrichten und die Daten vom alten in den neuen<br />
Adaptive Server migrieren. Da die Sicherungs- und Lademechanismen nicht<br />
für mehrere Seitengrößen unterstützt wird, besteht die einzige Möglichkeit<br />
darin, mit ddlgen oder einer ähnlichen Methode ein Schema zu generieren und<br />
die Daten anschließend mit bcp aus dem alten Adaptive Server zu extrahieren<br />
und in den neuen Adaptive Server zu laden. Dieses Verfahren ist recht<br />
schwierig und komplex.<br />
sybmigrate:<br />
Was sybmigrate durchführt<br />
Unterstützt Benutzer bei der Änderung der Seitengröße ihrer<br />
Datenbankanwendungen.<br />
Ermöglicht einen sanften und durchführbaren Migrationsvorgang.<br />
Ermöglicht die Nutzung der Funktion der variablen Seitengröße für<br />
bestehende Datenbanken mit Benutzerdaten, d.h. des gesamten Potenzials<br />
von Adaptive Server 12.5 und höher.<br />
Während der Setup-Phase des Migrationsprozesses werden die folgenden<br />
Serverdaten in den neuen Adaptive Server migriert:<br />
Fremdserver<br />
Logins<br />
Login-Attribute<br />
Serverrollen<br />
Login-Rollen<br />
Rollenattribute<br />
Benutzer<br />
96 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Alternative Benutzer<br />
Rollen<br />
Berechtigungen<br />
Entfernte Logins<br />
Externe Login-Attribute<br />
Timer<br />
Ressourcengrenzen<br />
Replikationsattribute<br />
Attribute der Anzeigeebene<br />
Benutzernachrichten in der master-Datenbank<br />
Java-Klassen in der master-Datenbank<br />
JAR-Dateien in der master-Datenbank<br />
Während der Migrationsphase des Migrationsprozesses werden die folgenden<br />
datenbankspezifischen Daten in die Zieldatenbank migriert:<br />
Standardwerte<br />
Benutzerdefinierte Datentypen<br />
Regeln<br />
Benutzertabellen<br />
Benutzertabellendaten<br />
Ansichten<br />
Trigger<br />
Indizes<br />
Gespeicherte Prozeduren<br />
Erweiterte gespeicherte Prozeduren<br />
Benutzer<br />
Logins<br />
Rollen<br />
Fremdserver<br />
<strong>Dienstprogramme</strong> 97
Überblick<br />
Was sybmigrate nicht tut<br />
Datenbankdaten<br />
Benutzer<br />
Alternative Benutzer<br />
Rollen<br />
Rollenattribute<br />
Berechtigungen<br />
Benutzernachrichten<br />
Java-Klassen<br />
JAR-Dateien<br />
Standardwerte<br />
Regeln<br />
Benutzerdefinierte Typen<br />
Tabellen<br />
Indizes<br />
Referenzielle Integritätsregeln<br />
Ansichten<br />
Gespeicherte Prozeduren<br />
Trigger<br />
Die folgenden Daten müssen manuell migriert werden:<br />
Benutzerdefinierte Schwellenwerte<br />
Abstrakte, in sysqueryplans gepflegte Plandefinitionen<br />
Alle Systemdatenbanken außer der model-Datenbank<br />
Alle erforderlichen Datenbankoptionen wie Cachebindung, Wiederherstellungsreihenfolge<br />
und zugehörige Log-I/O-Größen wie von<br />
sp_logiosize vorgegeben<br />
98 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Proxy-Datenbanken<br />
Engine-Gruppen<br />
Engine-Bindungen<br />
Ausführungsklassen<br />
Cachekonfigurationen<br />
Audit-Tabellen und Auditing-Konfiguration<br />
Einstellungen für serverweite Zeilensperrenerweiterung<br />
Zugriffsregeln<br />
Hinweis Löschen Sie die Zugriffsregeln, bevor Sie mit<br />
der Datenmigration beginnen. Diese könnten sonst dem<br />
Datenbankeigentümer den Zugriff auf alle Zeilen in der Tabelle<br />
verwehren, was eine vollständige Datenmigration verhindern würde.<br />
Kompilierte Objekte mit verborgenem SQL-Text<br />
Benutzerdefinierte Segmente<br />
Integritätsregeln werden zwar migriert, wenn sie jedoch nach Name an<br />
benutzerdefinierte Nachrichtennummern gebunden sind, müssen diese<br />
Bindungen manuell neu erstellt werden<br />
Einstellungen für Objekte wie ascinserts, maxwritedes, indextrips,<br />
oamtrips, datatrips und sortbufsize, die mit dbcc tune erstellt wurden<br />
Devicedefinitionen<br />
SQLJ-Funktionen<br />
Proxy-Tabellen für externe Dateien<br />
Audit-Optionen und -Ereignisse<br />
Serverkonfiguration<br />
<strong>Dienstprogramme</strong> 99
Vorbereitungen<br />
Vorbereitungen<br />
Erforderliche Komponenten für sybmigrate<br />
Voraussetzungen<br />
Installation<br />
Upgrade<br />
sybmigrate erfordert JRE 1.3, jConnect für JDBC 5.5, ddlgen-<br />
Komponenten und die Component Integration Services im alten Adaptive<br />
Server.<br />
Da sybmigrate mit einer Server-zu-Server-Verbindung arbeitet, müssen zwei<br />
Adaptive Server ausgeführt werden. Stellen Sie sicher, dass Sie über die<br />
erforderlichen Lizenzen verfügen.<br />
Bevor Sie mit dem Migrationsprozess beginnen, erstellen Sie auf dem neuen<br />
Adaptive Server Datenbanken, Devices und Segmente. Auch die Server- und<br />
Cachekonfigurationen müssen bereits auf diesem Server installiert sein.<br />
Extrahieren Sie mit ddlgen die entsprechenden Skripte aus dem alten Adaptive<br />
Server und ändern Sie diese nach Bedarf, bevor Sie sie auf dem neuen<br />
Adaptive Server anwenden. Weitere Hinweise dazu finden Sie unter ddlgen auf<br />
Seite 195.<br />
sybmigrate wird im Rahmen der Software Adaptive Server 12.5.0.1 installiert.<br />
Hinweise zur Installation von Adaptive Server finden Sie im Installationshandbuch<br />
für Ihre Plattform.<br />
Bevor Sie sybmigrate ausführen, aktualisieren Sie den alten Adaptive Server<br />
mindestens auf Version 12.5.0.1, und installieren Sie den neuen Adaptive<br />
Server ebenso als Version 12.5.0.1 oder höher. Führen Sie alle für Upgrades<br />
relevante Überprüfungen durch, bevor Sie mit der Datenmigration beginnen.<br />
100 Adaptive Server Enterprise
Berechtigungen<br />
Kapitel 6 Migrations-Dienstprogramm<br />
Sie müssen den neuen Adaptive Server mit der neuen Seitengröße installieren.<br />
Verwenden Sie entweder srvbuild oder sysconfig.exe, um den neuen Adaptive<br />
Server einzurichten.<br />
Die Hauptversion des alten und des neuen Adaptive Server muss identisch<br />
sein. Das heißt, wenn Sie sybmigrate auf Adaptive Server 12.5.0.1 ausführen,<br />
sollte die 12.5 identisch, der letzte Teil 0.1 kann jedoch höher sein.<br />
Für die Setup-Phase des Migrationsprozesses wird das Systemadministrator-<br />
Login benötigt. Für den restlichen Prozess muss das Login die Berechtigungen<br />
„sa_role“ und „sso_role“ umfassen, um sybmigrate ausführen zu können.<br />
Neue Login-Konten ändern<br />
Wenn Sie eine plattformübergreifende Migration durchgeführt haben, sind die<br />
Login-Kennwörter nicht kompatibel. Sie können jedoch während der Setup-<br />
Phase des Migrationsprozesses mit sybmigrate das Kennwort für die Login-<br />
Konten auf dem neuen Adaptive Server ändern.<br />
Um das Kennwort für das neue Login-Konto zu ändern, muss sich der<br />
Systemadministrator am neuen Adaptive Server anmelden und sp_password<br />
für alle Login-Konten ausführen.<br />
Hinweis Wenn Sie die Kennwörter für die Login-Konten des neuen Adaptive<br />
Server nicht während der Setup-Phase des Migrationsprozesses ändern, muss<br />
der Systemadministrator sie nach Beendigung des Migrationsprozesses auf<br />
dem neuen Adaptive Server manuell ändern.<br />
Neben der Änderung der Kennwörter ermöglicht sybmigrate auch das Sperren<br />
und Entsperren der Konten auf Ihrem neuen Adaptive Server. Mithilfe dieser<br />
Funktion kann der Systemadministrator einen Benutzer daran hindern, sich<br />
während des Migrationsprozesses am neuen Adaptive Server anzumelden.<br />
<strong>Dienstprogramme</strong> 101
Vorbereitungen<br />
Plattformen<br />
Umgebungsvariablen<br />
sybmigrate lässt sich auf UNIX- und Windows NT-Plattformen ausführen.<br />
Bei UNIX-Systemen befindet sich die ausführbare Datei im Verzeichnis<br />
$SYBASE/$SYBASE_ASE/bin/sybmigrate.<br />
Bei NT-Systemen befindet sich die ausführbare Datei im Verzeichnis<br />
%SYBASE%\%SYBASE_ASE%\bin\sybmigrate.bat.<br />
Die folgenden Umgebungsvariablen müssen korrekt eingerichtet sein.<br />
Mit Ausnahme von SYBMIGRATE_MEMORY werden diese Umgebungsvariablen<br />
in den Dateien SYBASE.csh oder SYBASE.sh definiert, die während<br />
der Installation von Studio Installer angelegt werden.<br />
SYBASE – Diese Variable definiert den Pfad des <strong>Sybase</strong>-<br />
Versionsverzeichnisses.<br />
SYBASE_ASE – Diese Umgebungsvariable definiert den Pfad des<br />
Verzeichnisses, in das die Komponenten von Adaptive Server installiert<br />
werden.<br />
SYBASE_JRE – Diese Umgebungsvariable definiert den Pfad der Java-<br />
Laufzeitumgebung. Dieser lautet im Versionsbereich von Adaptive Server<br />
in der Regel $SYBASE/shared-1_0/jre1.2.2. Diese Umgebungsvariable<br />
überschreibt JAVA_HOME.<br />
SYBASE_JRE lautet standardmäßig $SYBASE/shared-1_0/jre1.2.2.<br />
JAVA_HOME – Diese Umgebungsvariable definiert den Pfad der Java-<br />
Laufzeitumgebung, falls SYBASE_JRE nicht eingerichtet ist.<br />
Hinweis Damit sybmigrate richtig ausgeführt werden kann, ist entweder<br />
SYBASE_JRE oder JAVA_HOME erforderlich.<br />
SYBMIGRATE_MEMORY – Diese Umgebungsvariable gibt<br />
die Speichermenge an, die beim Aufruf der Java Virtual Machine<br />
(JVM) belegt wird. Die Umgebungsvariable sollte mit einer Zahl<br />
eingerichtet werden, die die Speichermenge in Megabyte angibt.<br />
Wenn SYBMIGRATE_MEMORY nicht eingerichtet ist, verwendet<br />
JVM die Standardspeichereinstellung von 512 MByte.<br />
102 Adaptive Server Enterprise
Migrationsprozess<br />
Kapitel 6 Migrations-Dienstprogramm<br />
Wenn sybmigrate viele Threads verwendet, oder gleichzeitig auf viele<br />
Tabellen oder Indizes ausgeführt wird, sollten Sie die Speichermenge<br />
für die JVM auf Clientseite erhöhen.<br />
Mit sybmigrate steht ein Tool zur Verfügung, alle Objekte und Benutzerdaten,<br />
die auf dem alten Adaptive Server existieren, zu migrieren. Es gibt jedoch auch<br />
einige serverweite Daten, die migriert werden müssen, bevor Benutzerdaten<br />
oder -objekte in die einzelnen Datenbanken migriert werden können.<br />
Die Hierarchie der Objekte gibt die Reihenfolge vor, in der die Objekte neu<br />
erstellt werden. In der Regel werden zuerst die serverweiten Objekte von der<br />
master-Datenbank erstellt. Unabhängige Objekte wie Standardsprachen und -<br />
zeichen werden zunächst in die Datenbanken migriert.<br />
Überblick über den Migrationsprozess<br />
Der Migrationsprozess umfasst die Konfiguration des alten Adaptive Server<br />
und des neuen Adaptive Server, die Einrichtung der Migrationspfade und<br />
Migrationsobjekte sowie die Validierung der migrierten Objekte.<br />
Während der Setup-Sitzung werden die Migrationspfade von der<br />
Quelldatenbank zu der Zieldatenbank definiert. Es werden ferner die<br />
Repository-Datenbank und die Arbeitsdatenbanken eingerichtet, und es wird<br />
festgelegt, ob die Serverdaten migriert werden sollen. Die Setup-Sitzung kann<br />
nur von einem Benutzer mit dem Login „sa“ durchgeführt werden.<br />
Während der Migrationssitzung werden die Objekte und Daten von der<br />
Quelldatenbank in die Zieldatenbank migriert.<br />
Bei der Validierungssitzung werden die migrierten Objekte überprüft.<br />
Die Validierung stellt die Integrität der Daten und Objekte sicher,<br />
die von der Quelldatenbank in die Zieldatenbank migriert wurden.<br />
<strong>Dienstprogramme</strong> 103
Migrationsprozess<br />
Vorbereitung der Migration<br />
Sie müssen den alten Adaptive Server und den neuen Adaptive Server<br />
gleichzeitig ausführen, wenn Sie Daten von einem zum anderen Server<br />
migrieren möchten.<br />
sybmigrate geht davon aus, dass der neue Adaptive Server vor der<br />
Datenmigration installiert und konfiguriert wurde. Verwenden Sie srvbuild<br />
oder syconfig, um einen neuen Adaptive Server mit der erforderlichen<br />
logischen Seitengröße zu erstellen.<br />
Berücksichtigen Sie vor der Migration folgende Punkte, wenn Sie den neuen<br />
Adaptive Server erstellen und den ursprünglichen Adaptive Server<br />
konfigurieren:<br />
Wenn Sie den neuen Adaptive Server, in den Sie die Daten migrieren<br />
wollen, mit einer anderen logischen Seitengröße erstellen, müssen Sie<br />
die Größe der Datenbank auf dem neuen Server so einstellen, dass die<br />
importierten Daten auch untergebracht werden können. Dies ist besonders<br />
dann wichtig, wenn Sie Daten in einen Adaptive Server mit einer größeren<br />
logischen Seitengröße migrieren.<br />
Verwenden Sie den Bericht zur Speicherschätzung space_est, um<br />
den auf Ihrer Zieldatenbank verfügbaren Speicherplatz zu ermitteln.<br />
Weitere Hinweise zu space_est finden Sie unter „sybmigrate ausführen“<br />
auf Seite 110.<br />
Um den Migrationsprozess zu beschleunigen, können Sie mehrere<br />
Sitzungen von sybmigrate auf dem gleichen Server ausführen. Es ist<br />
jedoch nicht erlaubt, mehr als eine sybmigrate-Sitzung auf dem gleichen<br />
Quell- und Zieldatenbankpfad auszuführen.<br />
Sie müssen in der Zieldatenbank manuell Segmente erstellen, bevor Sie<br />
Tabellen und Indizes migrieren.<br />
Die Datenübertragungsrate für sybmigrate wird mit CIS bulk insert array<br />
size konfiguriert. Die Standardeinstellung von CIS bulk insert array size<br />
lautet 50 Zeilen. Das bedeutet, dass bis zu 50 Zeilen Daten von CIS in den<br />
Puffer gestellt werden, bevor sie an den neuen Adaptive Server übertragen<br />
werden.<br />
Um den Datendurchsatz zu erhöhen, stellen Sie CIS bulk insert array size<br />
auf einen höheren Wert ein.<br />
104 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Beachten Sie jedoch, dass bei Erhöhung von CIS bulk insert array size<br />
der alte Adaptive Server für lokale Puffer Speicherressourcen aus<br />
dem Betriebssystem nutzt. Dies kann zu einer übermäßig hohen<br />
Beanspruchung des Betriebssystemspeichers führen.<br />
<strong>Sybase</strong> empfiehlt, dass Sie den Standardwert von CIS bulk insert array size<br />
nur moderat heraufsetzen sollten. Weitere Informationen finden Sie in der<br />
CIS-Dokumentation.<br />
CIS bulk insert array size hat keine Auswirkungen auf den Datendurchsatz,<br />
wenn die zu übertragende Tabelle eine Spalte text, image oder Java ADT<br />
enthält. Enthält eine Tabelle eine Spalte text, image oder Java ADT, werden<br />
während der Migration dieser Tabelle alle Daten Zeile für Zeile migriert.<br />
Es findet auch keine Array-Pufferung statt.<br />
Wenn die Datenmigration mithilfe von CIS bulk transfer erfolgt, kann sich<br />
der Wert des Konfigurationsparameters CIS packet size auf dem alten<br />
Adaptive Server auf die Schnelligkeit der Datenübertragung auswirken.<br />
Der empfohlene Wert für CIS packet size auf dem alten Adaptive Server<br />
ist die logische Seitengröße (2 KByte, 4 KByte, 8 KByte oder 16 KByte)<br />
des neuen Adaptive Server.<br />
max packet size allowed auf dem neuen Adaptive Server sollte mit dem<br />
Wert von CIS packet size auf dem alten Adaptive Server übereinstimmen.<br />
Weitere Hinweise zu max packet size allowed finden Sie in der<br />
Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
Um die Performance von sybmigrate zu maximieren, setzen Sie den<br />
Konfigurationsparameter additional network memory auf dem neuen<br />
Adaptive Server auf einen höheren Wert.<br />
Weitere Hinweise zu additional network memory finden Sie in der<br />
Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
Alle zuvor genannten Punkte betreffen den Konfigurationsparameter<br />
max memory. Bevor Sie Ihre Daten migrieren, stellen Sie sicher,<br />
dass max memory auf einen ausreichend hohen Wert gesetzt ist.<br />
Es gibt drei Arten von Daten, die migriert werden: Serverdaten,<br />
Datenbankdaten und Benutzerobjekte. Um die Metadaten (Server- und<br />
Datenbankdaten) zu migrieren, muss der neue Adaptive Server frisch<br />
installiert sein, damit die migrierten Metadaten nicht mit möglichen<br />
Restdaten aus vorheriger Nutzung in Konflikt treten.<br />
<strong>Dienstprogramme</strong> 105
Migrationsprozess<br />
Wenn Sie nur Benutzerobjekte migrieren, können Sie auch einen zuvor<br />
bereits genutzten Adaptive Server verwenden. Bei Benutzerdaten ist<br />
jedoch zu beachten, dass die Zieltabellen leer sein müssen.<br />
Bevor Sie Daten migrieren, erstellen Sie die Datenbanken, in die<br />
Sie die Daten auf dem neuen Adaptive Server migrieren möchten.<br />
Die Datenbanken sollten jeweils den gleichen Namen wie auf dem<br />
alten Adaptive Server haben.<br />
Um eine Umwandlung der Zeichensätze zu ermöglichen, die über keine<br />
interne Adaptive Server-Konvertierungsroutine verfügen, konfigurieren<br />
Sie den neuen Adaptive Server mit enable unicode conversions gleich 1.<br />
Ermitteln Sie die Größe der benannten Caches und Pufferpools auf dem<br />
neuen Adaptive Server. sybmigrate migriert keine Cachekonfigurationen.<br />
Sie können die von ddlgen erzeugten Informationen auf den neuen<br />
Adaptive Server anwenden. Oder Sie konfigurieren aufgrund der größeren<br />
Seitengröße mehr Speicherplatz.<br />
sybmigrate migriert jedoch Cachebindungen, weshalb im Migrationslog<br />
Warnmeldungen ausgegeben werden, wenn der erforderliche Cache im<br />
neuen Adaptive Server nicht existiert.<br />
Bevor Sie sybmigrate ausführen, müssen Sie die gewünschten Sprachen<br />
auf dem neuen Adaptive Server installieren. Die Standardsprache des alten<br />
und des neuen Adaptive Server muss identisch sein.<br />
Wenn Benutzernachrichten auf dem alten Adaptive Server vorhanden<br />
sind, die nicht auf dem neuen Adaptive Server installiert sind, bricht<br />
sybmigrate die Migration der Nachrichten ab und gibt einen Fehler aus.<br />
Wenn Sie Java-Spalten migrieren, müssen Sie Java vor der Migration auf<br />
dem alten und dem neuen Adaptive Server aktivieren. Geben Sie folgende<br />
Zeichenfolge ein:<br />
sp_configure 'enable java', 1<br />
Nachdem Sie Ihren alten Adaptive Server auf Version 12.5.0.1 oder höher<br />
aktualisiert haben, starten Sie ihn neu, bevor Sie mit der Migration<br />
beginnen.<br />
Für die Migration müssen der alte und neue Adaptive Server<br />
unterschiedliche lokale Servernamen haben. Richten Sie den lokalen<br />
Servernamen ein, und starten Sie die Server neu, damit die Änderung<br />
wirksam wird.<br />
106 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Wenn aus mehreren Bytes bestehende Zeichensätze auf dem neuen<br />
Adaptive Server konfiguriert sind, nachdem der Migrationsprozess<br />
gestartet wurde, müssen Sie manuell dbcc fix_text auf den<br />
Systemkatalogen sysattributes und sysxtypes ausführen, damit die<br />
text-Spalten in diesen Katalogen mit den Mehrbyte-Zeichensätzen<br />
konsistent sind.<br />
<strong>Sybase</strong> empfiehlt, zunächst den Zeichensatz des neuen Servers zu<br />
konfigurieren und dann den Migrationsprozess zu starten.<br />
Konfiguration und Optimierung für eine bessere Performance<br />
Je nach Serverressourcen können Sie sybmigrate und Adaptive Server<br />
so konfigurieren, dass für eine optimale Performance gesorgt wird.<br />
Hinweise zur Konfiguration von sybmigrate<br />
Zur Migration von Tabellen und erneuten Erstellung von Indizes werden „copy<br />
threads“ und „create index threads“ verwendet. Wenn Sie sybmigrate im Setup-<br />
Modus konfigurieren, können die Werte von COPY_THREADS und<br />
INDEX_THREADS den Kopier- und Migriervorgang von sybmigrate<br />
beschleunigen.<br />
Die Anzahl der Copy Threads steuert die Anzahl der Tabellen, für die<br />
gleichzeitig eine Datenmigration durchgeführt wird. Jeder Tabelle wird<br />
ein Copy Thread zugeordnet. Wenn der Thread eine Aufgabe erfolgreich<br />
abgeschlossen hat, fährt er mit der nächsten fort. Je nach Größe Ihrer<br />
Datenbank und den Ihrem Adaptive Server zur Verfügung stehenden<br />
Ressourcen können Sie die Anzahl der Copy Threads erhöhen, die im<br />
Migrationsprozess verwendet werden, um die Performance zu verbessern.<br />
Hinweis Wenn Sie viele Objekte gleichzeitig migrieren, prüfen Sie anhand des<br />
Werts von SYBMIGRATE_MEMORY, ob sybmigrate genügend Speicher<br />
zugewiesen wurde.<br />
<strong>Dienstprogramme</strong> 107
Migrationsprozess<br />
Index Threads steuern die Anzahl von Threads, die für die Neuerstellung von<br />
Indizes für die Tabellen des neuen Adaptive Server verwendet werden. Zur<br />
Neuerstellung von Indizes wird ein Thread pro Tabelle verwendet. Wenn die<br />
Indizes für eine Tabelle neu erstellt wurden, fährt der Thread mit der nächsten<br />
migrierten Tabelle fort. Alle Threads ohne Aufgabe werden beendet.<br />
Die Anzahl der Create Index Threads sollte deutlich geringer sein als<br />
die Anzahl der Copy Threads.<br />
Wenn Sie INDEX_THREADS auf eine hohe Zahl einstellen, sollten Sie darauf<br />
achten, dass auch der neue Adaptive Server mit einer hohen Anzahl von<br />
Sortierpuffern ausgestattet ist. Da die Nutzung von Index Threads in der<br />
Zieldatenbank Speicherplatz verbraucht, sollten Sie sicherstellen, dass für<br />
die Zieldatenbank ausreichend Speicherplatz für die angegebene Anzahl von<br />
Index Threads eingerichtet ist. Sie müssen außerdem die Zieldatenbank mit<br />
zusätzlichem Speicherplatz konfigurieren, wenn Sie Clustered-Indizes neu<br />
erstellen werden.<br />
Hinweise zur Konfiguration von Adaptive Server<br />
Es gibt mehrere Konfigurationsparameter sowohl auf dem alten als auch auf<br />
dem neuen Adaptive Server, die die Performance des Migrationsprozesses<br />
beeinflussen.<br />
Auf dem alten Adaptive Server:<br />
cis packet size – sollte identisch sein mit dem Wert von max page size auf<br />
dem neuen Adaptive Server.<br />
number of user connections – sollte hoch genug sein, um die gleichzeitige<br />
Migration mehrerer Tabellen entsprechend den Werten von<br />
COPY_THREADS und INDEX_THREADS zu ermöglichen.<br />
max parallel degree – sollte auf einen Wert gesetzt werden, der<br />
höher als die höchste Anzahl von Partitionen in einer Tabelle ist.<br />
Die Datenmigration erfolgt parallel. Wenn der Wert von max parallel<br />
degree nicht hoch genug eingestellt ist, um die partitionierten Tabellen<br />
aufzunehmen, werden die Tabellen nicht migriert.<br />
number of worker processes – Die Datenmigration für partitionierte<br />
Tabellen erfordert einen Worker-Thread pro Partition. Wenn also t<br />
partitionierte Tabellen mit p Partitionen gleichzeitig migriert werden,<br />
müssen Sie insgesamt t x p Worker-Threads auf dem alten Adaptive<br />
Server einrichten.<br />
108 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
cis bulk insert batch size – legt die Anzahl der Zeilen fest, nach denen<br />
die Datenübertragung festgeschrieben wird. Standardwert ist 0. Die<br />
Verwendung des Standardwertes ist zwar die sicherste Methode, bei<br />
der Datenmigration die Integrität der Daten zu gewährleisten, dies kann<br />
jedoch zu einer großen Anzahl von Seiten- und Zeilensperren auf dem<br />
alten Adaptive Server führen. Um die Anzahl der Sperren zu reduzieren,<br />
erhöhen Sie also diesen Wert.<br />
Wenn Sie den Wert von cis bulk insert batch size erhöhen, wird nur ein Teil<br />
der Daten migriert, wenn es beim Prozess zu einem Fehler kommen sollte.<br />
Kürzen Sie in diesem Fall die Zieltabelle manuell, und führen Sie<br />
sybmigrate erneut aus.<br />
cis bulk insert array size – legt die Anzahl der Zeilen fest, die gleichzeitig<br />
zusammen übertragen werden. Der Standardwert ist 50 Zeilen pro Batch.<br />
Erhöhen Sie den Wert, um die Datenmigration zu beschleunigen.<br />
Wenn die Tabelle text- oder image-Spalten enthält, werden die Daten Zeile<br />
für Zeile übertragen, und zwar unabhängig von dem für cis bulk insert array<br />
size eingestellten Wert.<br />
Die folgenden Konfigurationsparameter auf dem neuen Adaptive Server<br />
beeinflussen die Performance von sybmigrate:<br />
max network packet size – sollte auf einen Wert gesetzt werden,<br />
der mindestens genauso hoch ist wie der von max page size.<br />
number of user connections – sollte hoch genug sein, um die gleichzeitige<br />
Migration mehrerer Tabellen und partitionierter Tabellen zu ermöglichen.<br />
Für die parallele Migration partitionierter Tabellen sind auf dem alten<br />
Adaptive Server Worker-Prozesse und auf dem neuen Adaptive Server<br />
Benutzerverbindungen erforderlich. Wenn Sie partitionierte Tabelle<br />
migrieren, setzen Sie number of user connections auf dem neuen Adaptive<br />
Server auf die gleichen Werte wie number of worker processes auf dem<br />
alten Adaptive Server.<br />
number of sort buffers – der Standardwert von 500 ist für die Migration<br />
ausreichend. Sie können diesen Wert erhöhen, wenn sybmigrate die<br />
Indizes neu aufbaut, insbesondere dann, wenn Sie Indizes partitionierter<br />
Tabellen migrieren.<br />
<strong>Dienstprogramme</strong> 109
Migrationsprozess<br />
Fehlervermeidung<br />
Vor dem Starten der Datenmigration prüft sybmigrate, ob die folgenden<br />
Fehlerbedingungen zutreffen. Trifft eine dieser Fehlerbedingungen zu,<br />
wird der Migrationsvorgang abgebrochen.<br />
Eine Zieltabelle mit vorhandenen Daten: Jeglicher Versuch, Daten in eine<br />
Tabelle zu migrieren, die bereits Daten enthält, führt zu einem Abbruch<br />
von sybmigrate.<br />
Eine Zieltabelle mit Indizes: Sollten in einer Zieltabelle Indizes vorhanden<br />
sein, wird sybmigrate in einem langsamen bcp (Bulk Copy Utility;<br />
Massenexport/-import der Daten) ausgeführt. Löschen Sie vor der<br />
Datenmigration alle Indizes manuell.<br />
Nicht übereinstimmende Partitionszahlen in den Quell- und Zieltabellen:<br />
Falls die Anzahl der Partitionen in der Quell- und Zieltabelle nicht<br />
übereinstimmt, schlägt die Datenmigration fehl. sybmigrate dient lediglich<br />
der Datenmigration, nicht jedoch der Neuverteilung der Daten auf<br />
Partitionen.<br />
Automatische Auswahl abhängiger Objekte für die Migration<br />
sybmigrate ausführen<br />
Wenn Sie die Funktion zur automatischen Auswahl abhängiger Objekte<br />
nutzen, wählt sybmigrate selbst abhängige Objekte für die Migration aus.<br />
Diese Funktion der automatischen Auswahl überprüft, ob es abhängige<br />
Objekte gibt, und migriert diese dann automatisch in den neuen Adaptive<br />
Server. <strong>Sybase</strong> empfiehlt, diese Funktion zu nutzen, damit die Migration<br />
erfolgreich abgeschlossen werden kann.<br />
Achtung! sybmigrate geht davon aus, dass auf beiden Servern (alter und neuer<br />
Adaptive Server) während der Migration keine Aktivitäten stattfinden. Werden<br />
während des Migrationsprozesses (Setup, Migration, Validierung) Objekte<br />
erstellt, geändert oder gelöscht, kann <strong>Sybase</strong> nicht für die Integrität der<br />
Migration garantieren.<br />
110 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Unabhängig davon, ob Sie den GUI- oder Ressourcedatei-Modus von<br />
sybmigrate ausführen, starten Sie diesen Befehl mit den folgenden<br />
Befehlszeilenargumenten:<br />
Wobei:<br />
sybmigrate [-v ] [-h ] [-f ]<br />
[-D 1 | 2 | 3 | 4 ]<br />
[-I Interfaces-Datei ]<br />
[-r Eingabe_Ressourcedatei]<br />
[-m setup | migrate | validate | report ]<br />
[-rn status | space_est | repl | diff | password ]<br />
[-l Logdatei ]<br />
[-t Ausgabevorlage_Ressourcedatei ]<br />
[-J Client_Zeichensatz ]<br />
[-z Sprache ]<br />
[-T Trace_Flags ]<br />
[-Tase Trace-Flags ]<br />
[-f ]<br />
-v gibt die Versionszeichenfolge aus und wird dann beendet.<br />
-h gibt die Hilfeinformationen und Syntaxverwendung aus und wird dann<br />
beendet.<br />
-f überschreibt die Sperrsitzung.<br />
Wenn sybmigrate eine Sitzung unaufgefordert beendet hat, überschreiben<br />
Sie mit -f die erstellte Datenbankbindung auf dem alten und neuen Server,<br />
sodass nur eine Sitzung von sybmigrate auf einem Quell- und<br />
Zieldatenbankpfad ausgeführt werden kann.<br />
-D – legt das Debug-Level für sybmigrate fest. Der Standardwert des<br />
Debug-Level lautet 2.<br />
-I gibt eine interfaces-Datei an, die nach Servernamen durchsucht werden<br />
soll. Wenn kein Ort für die interfaces-Datei angegeben wurde, wird unter<br />
Windows $SYBASE/interfaces und unter UNIX %SYBASE%\ini\sql.ini<br />
verwendet.<br />
Hinweis Sie können sybmigrate überschreiben und die interfaces-Datei<br />
verwenden, indem Sie das Argument -I übergeben, falls der LDAP-<br />
Eintrag in $SYBASE/$SYBASE_OCS/config/libtcl.cfg (Unix) oder in<br />
%SYBASE%\%SYBASE_OCS%\ini\libtcl.cfg (NT) definiert ist.<br />
<strong>Dienstprogramme</strong> 111
Migrationsprozess<br />
-r gibt an, dass der Ressourcedatei-Modus beim Migrationsprozess<br />
verwendet werden soll. Wenn die Eingabe-Ressourcedatei über den<br />
Parameter -r nicht angegeben wird, wird sybmigrate im GUI-Modus<br />
ausgeführt.<br />
Wenn Sie den Parameter -r verwenden, müssen Sie auch das Argument -m<br />
übergeben, um die Art der auszuführenden Aktion anzugeben: setup,<br />
migrate, validate oder report. Sie können den ganzen Migrationsprozess im<br />
Ressourcedatei-Modus durchführen, Sie können aber auch nur Teile des<br />
Vorgangs in diesem Modus ausführen.<br />
-m gibt die Arten der Aktionen an, die ausgeführt werden sollen:<br />
setup: Einrichtung der Repository- und Arbeitsdatenbank und<br />
Migration der serverweiten Daten.<br />
migrate: Durchführung der Migration der Daten und Objekte.<br />
validate: Validierung der migrierten Objekte.<br />
report: Ausführung eines der fünf Berichte. Die Berichte können<br />
im GUI- oder Ressourcedatei-Modus ausgeführt werden.<br />
Die verfügbaren Berichte sind:<br />
status – Der Bericht über den Migrationsstatus der Objekte<br />
enthält Informationen zu den Objekten, die bereits migriert<br />
wurden. Um diesen Bericht auszuführen, geben Sie folgenden<br />
Befehl ein:<br />
sybmigrate -r Ressource-Datei -m report -rn<br />
status<br />
space_est – Mit dem Bericht zur Schätzung des Speicherplatzes<br />
auf der Zieldatenbank können Sie überprüfen, ob der<br />
Zieldatenbank ausreichend Ressourcen zugewiesen wurden.<br />
Um den Bericht space_est auszuführen, geben Sie im<br />
Ressourcedatei-Modus den folgenden Befehl ein:<br />
sybmigrate -r Ressource-Datei -m report -rn<br />
space_est<br />
repl – Mit dem Replikationsbericht können Sie alle explizit<br />
replizierten Objekte anzeigen, die migriert wurden, die Art des<br />
Replikationssystems bestimmen und SQL-Befehle erzeugen,<br />
die von den Benutzern auf dem neuen Adaptive Server und dem<br />
Replication Server ausgeführt werden können. Um den Bericht<br />
repl auszuführen, geben Sie folgende Befehlszeile ein:<br />
sybmigrate -r Ressource-Datei -m report -rn<br />
repl<br />
112 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
diff – Dieser Bericht überprüft die Objekte zwischen Quell- und<br />
Zieldatenbank. Die Benutzer können diesen Bericht auf einzelne<br />
Objekte oder die ganze Datenbank ausführen, ausgenommen<br />
Server- und Datenbankinformationen bzw. Metadaten.<br />
Sie können den Bericht diff zu jeder Zeit ausführen. Sie müssen<br />
keine Setup-Sitzung starten, um den Bericht diff auszuführen.<br />
Der Name der Quell- und Zieldatenbank muss nicht identisch<br />
sein, wenn Sie diff ausführen.<br />
Der Bericht diff liefert folgende Informationen zu den folgenden<br />
Objekttypen:<br />
Serverinformationen – Vergleich der Systemkatalog-<br />
Zeilenzahl der Master-Datenbank zwischen altem und<br />
neuem Adaptive Server. Diese Aufgabe ähnelt der<br />
Validierungssitzung.<br />
Datenbankinformationen – Vergleich der Systemkatalog-<br />
Zeilenzahl der Benutzerdatenbank zwischen altem und<br />
neuem Adaptive Server. Diese Aufgabe ähnelt der<br />
Validierungssitzung.<br />
DDL-Objekte – Der Bericht gibt an, ob die Objekte auf<br />
dem alten oder neuen Adaptive Server existieren. Wenn<br />
die Objekte in beiden Datenbanken existieren, wird das<br />
betreffende Objekt im Bericht nicht aufgeführt.<br />
Benutzertabellendaten – Vergleich der Zeilenzahl der<br />
Benutzertabellen zwischen altem und neuem Adaptive<br />
Server. Wenn die Tabelle nur in den Quell- oder<br />
Zieldatenbanken existiert, wird table im Bericht nicht<br />
aufgeführt.<br />
password – Dieser Befehl erstellt eine Datei für geänderte<br />
Kennwörter. Dieser Bericht kann nur von einem Systemadministrator<br />
ausgeführt werden.<br />
-rn gibt an, welche Art von Bericht erzeugt werden soll. Wenn für -rn nichts<br />
angegeben wurde, werden alle fünf Berichte generiert.<br />
-l gibt eine benutzerdefinierte Logdatei an, in der die Ausgabe des Migrationsprozesses<br />
gespeichert wird. Wenn für -l keine Angaben gemacht<br />
wurden, werden die Logs unter $SYBASE/$SYBASE_ASE/init/logs oder<br />
im Arbeitsverzeichnis abgelegt.<br />
<strong>Dienstprogramme</strong> 113
Migrationsprozess<br />
GUI-Modus<br />
Setup<br />
-t weist sybmigrate an, eine Ausgabevorlage der Ressourcedatei zu<br />
generieren, die für folgende Migrationen im Ressourcedatei-Modus<br />
genutzt werden kann.<br />
-t erfordert das Ausführen von sybmigrate mit dem Argument -r unter<br />
Angabe der Login-Daten. Dieses Argument setzt ferner voraus, dass mit -<br />
m die Art der zu generierenden Ressourcedatei angegeben wird.<br />
Hinweis Sie können -t nur im Ressourcedatei-Modus verwenden.<br />
-J gibt den Zeichensatz an, der für die Adaptive Server-Verbindung<br />
genutzt werden soll.<br />
-z gibt die Sprache an, die für die Adaptive Server-Verbindung verwendet<br />
werden soll.<br />
-T setzt die Trace-Flags für die Befehlszeile.<br />
-Tase wird verwendet, um Adaptive Server-Trace-Flags (Aktivierung mit<br />
dbcc traceon) für alle Adaptive Server-Verbindungen auszuführen, die<br />
von sybmigrate geöffnet wurden. Die Trace-Flags sollten in einer durch<br />
Komma getrennte Liste angegeben werden.<br />
Sie können entweder den GUI- oder Ressourcedatei-Modus für den<br />
Migrationsprozess nutzen. Sie haben auch die Möglichkeit, Teile des<br />
Migrationsprozesses im GUI-Modus und andere Teile im Ressourcedatei-<br />
Modus auszuführen.<br />
Wenn Sie sybmigrate im GUI-Modus ausführen, müssen Sie sich bei der<br />
Migration an die folgenden drei Phasen halten: Setup, Migration und<br />
Validierung.<br />
Bevor Sie Daten migrieren, geben Sie den alten und den neuen Adaptive<br />
Server an, und registrieren Sie die Pfade zwischen den enthaltenen Quell- und<br />
Zieldatenbanken. Starten Sie hierzu sybmigrate mit der Befehlszeilenoption -m<br />
setup oder durch Auswahl von „Setup source databases for migration“,<br />
wenn Sie dazu eine Aufforderung im Fenster „Session Type“ erhalten.<br />
114 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
❖ Angabe des alten und neuen Adaptive Servers und Registrierung der<br />
Pfade zwischen den Quell- und Zieldatenbanken<br />
1 Im Fenster „Connect to ASE“ können Sie den alten und neuen Adaptive<br />
Server für Ihren Migrationsprozess angeben.<br />
Sie können die Server aus dem Dropdown-Menü in den jeweiligen<br />
Feldern „Server“ auswählen. In diesen Dropdown-Menüs sind<br />
die Adaptive Server enthalten, die sich in der standardmäßig<br />
eingerichteten interfaces-Datei befinden ($SYBASE/interfaces unter<br />
UNIX oder %SYBASE%\ini\sql.ini unter NT) oder in der interfaces-<br />
Datei, die Sie mit dem Befehlszeilenargument -I angegeben haben.<br />
Wenn Sie nicht mit der interfaces-Datei arbeiten, können Sie das<br />
Befehlszeilenargument -I nicht verwenden, sondern müssen den<br />
alten und neuen Adaptive Server im Format host:port angeben.<br />
Während der Setup-Phase müssen Sie bei beiden Servern als<br />
Systemadministrator angemeldet sein. Tragen Sie „sa“ in das<br />
Loginfeld ein, geben Sie Ihr Kennwort ein, und wählen Sie<br />
„Connect“.<br />
Hinweis Sie können nur eine Sitzung von sybmigrate zurzeit ausführen.<br />
Falls also ein anderer Benutzer sybmigrate auf dem gleichen Quell- und<br />
Zielserver ausführt, erscheint die Fehlermeldung „Setup session lock:<br />
Either previous setup exit abnormal or there is another setup session<br />
running. Do you want to override?“. Sie können die Sitzungssperre<br />
überschreiben, da es sein kann, dass die vorherige Sitzung abgestürzt<br />
ist oder vorzeitig abgebrochen wurde.<br />
Bevor Sie mit dem Setup- und Migrationsprozess fortfahren, stellen Sie<br />
also sicher, dass keine anderen Benutzer sybmigrate ausführen. Wenn mehr<br />
als ein Benutzer sybmigrate gleichzeitig ausführt, kann Sybare keine<br />
Datenintegrität gewährleisten.<br />
2 Im Fenster „Session Type“ müssen Sie die Art der Aktion angeben,<br />
die Sie durchführen möchten. Sie haben folgende Optionen:<br />
Setup source databases for migration<br />
Migrate database objects and data<br />
<strong>Dienstprogramme</strong> 115
Migrationsprozess<br />
Validate the migrated objects and data<br />
Reports: Wenn Sie „Reports“ wählen, wird ein Fenster mit den<br />
Berichtsarten angezeigt. Es stehen folgende Berichte zur Auswahl:<br />
status, space_est, repl, diff oder password. Wenn Sie den Bericht zur<br />
Speicherermittlung oder den Replikationsbericht auswählen, werden<br />
Sie im Fenster „Report Paths“ aufgefordert, die Datenbankpfade<br />
anzugeben, auf denen die Berichte ausgeführt werden sollen.<br />
Die Berichte zu Kennwort, Status und Replikationen sind deaktiviert,<br />
wenn die Setup-Sitzung für den alten und neuen Adaptive Server<br />
noch nicht vollständig abgeschlossen wurde.<br />
Wenn Sie sybmigrate mit der Option -m unter Angabe von setup, migrate,<br />
validate oder reports gestartet haben, wird dieses Fenster nicht angezeigt.<br />
3 Im Fenster „Setup Paths“ wählen Sie nun die Quell- und Zieldatenbanken<br />
auf Ihrem alten und neuen Adaptive Server aus, damit sybmigrate weiß,<br />
wo es die Daten aus dem Quellserver im Zielserver ablegen soll.<br />
Hinweis Die Namen der Quell- und Zieldatenbanken müssen<br />
identisch sein.<br />
In der Dropdown-Liste „Source Database“ sind die Datenbanken Ihres<br />
alten Adaptive Server aufgeführt.<br />
In der Dropdown-Liste „Target Database“ sind die Datenbanken des neuen<br />
Adaptive Server aufgelistet. Sie müssen die Datenbanken auf dem neuen<br />
Adaptive Server vor dem Migrationsprozess eingerichtet haben, um<br />
sybmigrate ausführen zu können.<br />
Mit sybmigrate können Sie die Werte von Copy Thread, Create Index<br />
Thread und Work Thread während der Setup-, Migrations- oder<br />
Validierungssitzung einstellen. Der Wert, den Sie diesen Eigenschaften<br />
beim Setup zuweisen, wird zum Standardwert. Sie können diesen Wert<br />
in der Migrations- bzw. Validierungssitzung jedoch vorübergehend<br />
überschreiben.<br />
Das Feld „Copy Thread“ gibt sybmigrate vor, wie viele Threads bei der<br />
Datenmigration verwendet werden sollen. Bei der Anzahl der Threads gibt<br />
es keine Obergrenze, das heißt, je nach Datenmenge, die migriert werden<br />
soll, und je nach verfügbaren Serverressourcen können Sie die Anzahl der<br />
Copy Threads erhöhen, um die Performance zu maximieren.<br />
116 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Das Feld „Create Copy Thread“ gibt sybmigrate vor, wie viele Index<br />
Threads bei der Datenmigration verwendet werden sollen. Bei der Anzahl<br />
der Create Index Threads gibt es ebenfalls keine Obergrenze; Sie können<br />
also auch diese Zahl erhöhen, um die Performance zu maximieren.<br />
Hinweis Die Werte von Copy Thread und Create Index Thread sind<br />
nur auf die verfügbaren Ressourcen von Adaptive Server begrenzt.<br />
Geben Sie die Anzahl der Copy Threads und Create Index Threads für<br />
jeden Datenbankpfad an, den Sie erstellen. Wenn auf dem gleichen Server<br />
große und kleine Datenbanken vorhanden sind, können Sie die Anzahl der<br />
Threads entsprechend reduzieren oder erhöhen.<br />
Nachdem Sie eine Quell- und Zieldatenbank ausgewählt und die Anzahl<br />
der Copy Threads und Create Index Threads angegeben haben, klicken Sie<br />
auf „Add Path“. Ihre Angaben werden unter „Migrate Paths“ angezeigt.<br />
Sie können beliebig viele Pfade erstellen. Wenn Sie später zusätzliche<br />
Pfade benötigen, können Sie neue Pfade durch erneutes Ausführen von<br />
sybmigrate im Setup-Modus hinzufügen. Wenn Sie sybmigrate mehr als<br />
einmal im Setup-Modus ausführen, werden noch Ihre ursprünglichen<br />
Angaben angezeigt, und alle Änderungen werden diesen Angaben<br />
hinzugefügt.<br />
Um die Anzahl der Copy Threads oder Create Index Threads zu ändern,<br />
nachdem Sie den Pfad zu sybmigrate hinzugefügt haben, wählen Sie die<br />
Spalte aus, die Sie ändern möchten, und geben Sie den neuen Wert ein.<br />
Um die Quell- oder Zieldatenbank zu ändern, wählen Sie die ganze Zeile<br />
aus, und löschen Sie diese. Wenn Sie auf die Schaltfläche „Reset“ unten<br />
im Fenster klicken, werden alle von Ihnen eingegebenen Daten gelöscht,<br />
und Sie kehren zur ursprünglichen Version des Fensters „Setup Paths“<br />
zurück.<br />
Wenn Sie mit der Erstellung der Pfade fertig sind, klicken Sie auf die<br />
Schaltfläche „Next...“.<br />
<strong>Dienstprogramme</strong> 117
Migrationsprozess<br />
Hinweis Der Benutzer steuert die Anzahl der Threads, die für die parallele<br />
Übertragung von Tabellen genutzt werden. Jede Tabelle, die gleichzeitig<br />
übertragen wird, erfordert eine Server-zu-Server-CIS-Verbindung.<br />
Berücksichtigen Sie alle Aspekte dieser Anforderung, wenn Sie die<br />
Kapazität Ihres Systems bestimmen.<br />
In einem einfachen Szenario sind die Tabellen, die Sie migrieren, nicht<br />
partitioniert. Wenn Sie nicht partitionierte Tabellen migrieren, wird eine<br />
einzige Server-zu-Server-Verbindung hergestellt. Diese Verbindung<br />
belegt eine user connection auf dem alten Adaptive Server und eine user<br />
connection auf dem neuen Adaptive Server.<br />
Wenn die Datenmigration für n-Weg-Partitionstabellen durchgeführt wird,<br />
erfolgt die Datenübertragung mit einem Parallelitätsgrad von n-Weg. Dies<br />
erfordert n worker processes auf dem alten Adaptive Server und zwei nuser<br />
connections auf dem neuen Adaptive Server.<br />
Wenn Sie beispielsweise 10 n-Weg-Partitionstabellen haben und vier<br />
Threads in sybmigrate verwenden möchten, konfigurieren Sie den alten<br />
Adaptive Server mit mindestens vier worker processes und acht user<br />
connections. Konfigurieren Sie den neuen Adaptive Server mit mindestens<br />
acht user connections.<br />
4 Im Fenster „Setup Devices“ müssen Sie die Größe der Repository-<br />
Datenbank und das Device angeben, auf dem Sie sybmigrate ausführen<br />
möchten.<br />
Im Feld „Create Database Size“ wird ein Standardwert in Megabyte<br />
vorgeschlagen. Dieser Standardwert basiert auf der Anzahl der Copy<br />
Threads und Create Index Threads, die Sie im vorhergehenden Fenster<br />
angegeben haben. Der Standardwert entspricht dem erforderlichen<br />
Mindestwert. Wenn Sie diesen Wert ändern möchten, können Sie<br />
ihn also nur erhöhen.<br />
Im Feld „Use Device“ können Sie das Device angeben, auf dem Sie<br />
die Arbeitsdatenbank erstellen möchten. Sie können das standardmäßig<br />
eingerichtete Device übernehmen oder ein anderes Device angeben.<br />
118 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Im Feld „Repository Database Size“ können Sie zusätzlichen<br />
Speicherplatz für die Repository-Datenbank angeben. Wenn Sie<br />
sybmigrate zum ersten Mal im Setup-Modus ausführen, wird die<br />
Größe der Repository-Datenbank abhängig von den bereits eingegebenen<br />
Informationen und dem Inhalt der Quelldatenbank in Megabyte<br />
angegeben. Wenn Sie sybmigrate erneut im Setup-Modus ausführen, gibt<br />
die Zahl, die Sie im Feld „Repository Database Size“ eingeben, die Zahl<br />
in Megabyte an, um die Sie die Repository-Datenbank erhöhen möchten.<br />
Wählen Sie das logische Device aus der Dropdown-Liste „Logical<br />
Device“. Das logische Device wird verwendet, um die Repository-<br />
Datenbank zu erstellen und zu ändern. Wählen Sie ein Device mit viel<br />
Speicher für die geschätzte Größe Ihrer Repository-Datenbank.<br />
Geben Sie im Feld „Migrate Server Data“ an, ob Sie Serverdaten<br />
migrieren möchten oder nicht. Sie können „Yes“, „No“ oder „Undecided“<br />
wählen.<br />
Wenn Sie „Yes“ wählen, werden die Serverdaten am Ende der Setup-<br />
Phase migriert. Wenn Sie später sybmigrate in der Setup-Phase ausführen,<br />
können Sie die Serverdaten nicht mehr migrieren, da sie bereits migriert<br />
wurden.<br />
Wenn Sie „Yes“ wählen, um die Serverdaten zu migrieren, wird die<br />
Schaltfläche „Option...“ aktiviert. Wenn Sie auf diese Schaltfläche<br />
klicken, wird das Dialogfeld „Login Account“ angezeigt.<br />
Im Dialogfeld „Login Account Options“ sperren oder entsperren Sie<br />
Konten oder ändern das Kennwort des neuen Adaptive Server.<br />
Wenn Sie „No“ wählen, werden die Serverdaten nicht migriert. Sie können<br />
aber jederzeit hierher zurückkehren und die Migration der Serverdaten<br />
starten, vorausgesetzt, die Migration der Datenbank hat noch nicht<br />
begonnen.<br />
Wenn Sie „Undecided“ wählen, können Sie jederzeit zu diesem<br />
Fenster zurückkehren und „Yes“ oder „No“ wählen. Wenn Sie jedoch<br />
„Undecided“ wählen, können Sie nicht mit der Migrationsphase beginnen.<br />
„Undecided“ ist eine sehr nützliche Option, wenn Sie zwar alle<br />
Daten für den Migrationsprozess einrichten möchten, die eigentliche<br />
Datenmigration jedoch erst zu einem späteren Zeitpunkt geplant ist.<br />
Wenn Sie mit der Einrichtung der Devices fertig sind, klicken Sie auf<br />
„Setup“.<br />
<strong>Dienstprogramme</strong> 119
Migrationsprozess<br />
Migration<br />
5 Im Fenster „Setup Progress“ wird der Fortschritt der Setup-Phase<br />
angezeigt.<br />
Zu diesem Zeitpunkt erstellt sybmigrate die Repository-Datenbank,<br />
installiert das Datenbankschema, erstellt eine Arbeitsdatenbank für jeden<br />
angegebenen Pfad und migriert die Serverdaten (je nach ausgewählter<br />
Option). Diese Vorgänge erfolgen in genau dieser Reihenfolge. Wenn Sie<br />
sybmigrate ein weiteres Mal im Setup-Modus ausführen, werden für die<br />
Datenmigration neue Pfade erstellt. Wenn Sie keine neuen Pfade erstellen<br />
möchten, müssen Sie sybmigrate nicht mehr als einmal im Setup-Modus<br />
ausführen.<br />
Um den Fortschritt im Log anzuzeigen, klicken Sie auf „Show Log“. Der<br />
Setup-Vorgang ist abgeschlossen, wenn im Fenster „Current Task“ DONE<br />
und im Log SETUP_COMPLETE angezeigt wird. Klicken Sie auf<br />
„Close“, um das Log und das Fenster „Setup Progress“ zu schließen.<br />
6 Sie kehren zum Fenster „Connect to ASE“ zurück. Wählen Sie<br />
„Quit“, um sybmigrate zu beenden. Um die Migrationsphase des<br />
Datenmigrationsprozesses zu starten, beenden Sie sybmigrate,<br />
und starten Sie sybmigrate im Migrationsmodus.<br />
Nachdem Sie die Setup-Phase abgeschlossen haben, können Sie mit der<br />
Migration beginnen. Starten Sie sybmigrate mit der Befehlszeilenoption-m<br />
migrate erneut, oder wählen Sie die zu migrierenden Datenbankobjekte und<br />
Datenoptionen im GUI-Fenster aus.<br />
1 Wählen Sie im Fenster „Connect to ASE“ den alten und neuen Adaptive<br />
Server aus, zu dem Sie die Verbindung herstellen möchten.<br />
2 Wenn Sie sybmigrate nicht mit dem Befehlszeilenargument -m migrate<br />
gestartet haben, wählen Sie die Art der Sitzung im Fenster „Session Type“.<br />
3 Im Fenster „Object Selection“ können Sie angeben, welche Arten von<br />
Datenbankdaten Sie migrieren möchten.<br />
Im Fenster „Object Selection“ können Sie die Parameter für den Copy<br />
Thread, Create Index Thread und Work Thread von der Menüleiste<br />
„Setting“ einstellen.<br />
Im Fenster „Object Selection“ können Sie außerdem veranlassen, dass<br />
sybmigrate abhängige Objekte automatisch auswählt, indem Sie mit der<br />
rechten Maustaste auf den entsprechenden Knoten im Objektbaum<br />
klicken.<br />
120 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Wenn Sie den Ordner mit den Datenbankdaten erweitern, sehen Sie eine<br />
Datei für jeden Pfad, den Sie beim Setup erstellt haben. Anhand jeder<br />
Datei können Sie die Daten auswählen, die Sie für diese Datenbank<br />
migrieren möchten. Sie können folgende Optionen auswählen:<br />
Datenbankdaten<br />
Hinweis Wenn Sie Datenbankdaten migrieren möchten, müssen Sie<br />
alle Datenbankdaten migrieren. Wenn Sie Teile der Datenbankdaten<br />
von der Selektion ausnehmen, werden Sie in einer Fehlermeldung<br />
gefragt, ob Sie Datenbankdaten migrieren möchten oder nicht.<br />
Wenn Sie beim Setup keine Serverdaten migriert haben, ist die Option<br />
„Database Data“ deaktiviert.<br />
Standardwerte<br />
Regeln<br />
Benutzerdefinierte Datentypen<br />
Tabellen<br />
Indizes<br />
Referenzielle Integritätsregeln<br />
Ansichten<br />
Gespeicherte Prozeduren<br />
Trigger<br />
Das Feld „Status“ für diese Objekte gibt an, ob die Daten erfolgreich<br />
migriert wurden oder nicht. „Success“ bedeutet, dass die Daten bereits<br />
migriert wurden. „Initial“ bedeutet, dass die Migration noch nicht gestartet<br />
wurde. Wenn Sie bei den migrierten Daten auf einen Fehler stoßen,<br />
können Sie das Feld „Status“ auf den Wert „Initial“ zurücksetzen, sodass<br />
die Daten erneut migriert werden. Der Validierungsvorgang wird nur<br />
für die Objekte durchgeführt, die mit Erfolg migriert wurden. Um den<br />
Validierungsvorgang also ohne die Daten, die erfolgreich migriert wurden,<br />
durchzuführen, setzen Sie das Feld „Status“ auf den Wert „Success“<br />
zurück. „Work in Progress“ bedeutet, dass das Objekt für die Migration<br />
ausgewählt wurde, diese jedoch nicht durchgeführt wurde, da sybmigrate<br />
aufgrund eines Fehlers vorzeitig abgebrochen wurde.<br />
<strong>Dienstprogramme</strong> 121
Migrationsprozess<br />
Validierung<br />
Ressourcedatei-Modus<br />
Sie können sehen, ob die Serverdaten für die Migration ausgewählt<br />
wurden. Diese Anzeige dient jedoch lediglich Informationszwecken,<br />
da die Serverdaten in diesem Stadium des Migrationsprozesses bereits<br />
migriert wurden.<br />
Wenn Sie die Daten ausgewählt haben, die Sie migrieren möchten,<br />
klicken Sie auf „Migrate“.<br />
Die Validierungsphase gleicht der Migrationsphase. In den Fenstern werden<br />
Sie aufgefordert, die gleichen Informationen einzugeben, diesmal wählen Sie<br />
jedoch keine Daten für die Migration, sondern für die Validierung aus.<br />
Sie können nur die Objekte validieren, die erfolgreich migriert wurden.<br />
Sie müssen im Ressourcedatei-Modus die folgenden Änderungen vornehmen:<br />
Die Attribute data_copy_thread, create_index_thread und work_thread<br />
werden in den Setup-, Migrations- und Validierungssitzungen von<br />
sybmigrate erkannt. In der Setup-Sitzung werden diese Werte in der<br />
Repository-Datenbank gespeichert und in der Migrations- und<br />
Validierungssitzung als Standardwerte verwendet. In den Migrations- und<br />
Validierungssitzungen können Sie die Standardwerte durch Angabe eines<br />
neuen Wertes überschreiben.<br />
lock_account ist eine neue Funktion für die Verwaltung der Login-Konten.<br />
lock_account weist sybmigrate an, alle Konten auf dem neuen Adaptive<br />
Server zu sperren oder zu entsperren, nachdem die Login-Daten kopiert<br />
wurden. Die gültigen Werte sind „Yes“ und „Nein“. Wenn Sie „Yes“<br />
wählen, sperrt sybmigrate die Konten auf dem neuen Adaptive Server.<br />
Um lock_account zu aktivieren, müssen Sie migrate_server_data in der<br />
Setup-Sitzung auf „Yes“ stellen.<br />
Wenn das Attribut lock_account nicht gesetzt ist, werden die Login-Konten<br />
auf dem Zielserver nicht gesperrt.<br />
122 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
login_password_file wurde hinzugefügt, um die Kennwortänderung auf<br />
dem neuen Adaptive Server zu unterstützen. In der Setup-Sitzung zieht<br />
login_password_file die eingegebene Kennwortdatei oder den Wert<br />
„“ heran. „“ ist ein spezieller Schlüssel, der<br />
sybmigrate anweist, die Kennwörter zu generieren, anstatt sie aus der<br />
Kennwortdatei zu lesen. Wenn dieses Attribut in der Setup-Sitzung nicht<br />
in der Ressourcedatei gesetzt wird, werden die Login-Kennwörter auf<br />
dem neuen Adaptive Server nicht geändert. Um login_password_file zu<br />
aktivieren, müssen Sie migrate_server_data in der Setup-Sitzung auf „Yes“<br />
stellen.<br />
Die Kennwortdatei muss eine reine Textdatei sein. Diese Datei enthält<br />
zwei Spalten: die Spalte mit den Login-Namen und die Spalte mit den<br />
Kennwörtern. Die Spalten sind durch Tabs oder Leerzeichen getrennt.<br />
Alle Zeilen, die mit „#“ beginnen, sind Kommentare.<br />
auto_select_dependent_objects ist ein neuer Wert, der in der Migrationsund<br />
Validierungssitzung zur Verfügung steht. Dieses Attribut weist<br />
sybmigrate an, die abhängigen Objekte automatisch für die Migration<br />
und Validierung auszuwählen. Die gültigen Werte für dieses Attribut<br />
sind entweder „Yes“ oder „No“. „No“ ist der Standardwert.<br />
Wenn die Attribute source_ase, source_ase_login, source_ase_password,<br />
target_ase, target_ase_login und target_ase_password nicht in der<br />
Ressourcedatei vorhanden sind, fordert sybmigrate den Benutzer auf,<br />
diese Attribute anzugeben.<br />
Im Datenbankabschnitt der Ressourcedatei werden alle Objekte und<br />
Objekttypen ausgewählt, wenn Sie keine Objekte und kein SQL angeben.<br />
Beispiel: In der folgenden Ressourcedatei werden alle Objekttypen<br />
(Standard, Regel, Tabelle usw.) von den Datenbanken pubs2 und pubs3<br />
migriert:<br />
[server}<br />
source_ase=tho:5002<br />
source_ase_login=sa<br />
source_ase_password=<br />
target_ase=tho:6002<br />
target_ase_login=sa<br />
target_ase_password=<br />
[database]<br />
source_database_name=pubs2<br />
target_database_name=pubs2<br />
<strong>Dienstprogramme</strong> 123
Migrationsprozess<br />
[database]<br />
source_database_name=pubs3<br />
target_database_name=pubs3<br />
Der Ressourcedatei-Modus ist nicht interaktiv. Die Ressourcedatei enthält<br />
alle Informationen, die für die Migration benötigt werden. Sie können den<br />
Ressourcedatei-Modus nutzen, wenn der GUI-Modus nicht unterstützt wird<br />
oder Sie Batch-Dateien ausführen müssen.<br />
Wenn Sie in der Ressourcedatei keine Attribute zu den zu migrierenden<br />
Objekttypen angeben, wird die ganze Datenbank von sybmigrate migriert.<br />
Wenn Sie in der Ressourcedatei kein Login oder Kennwort für den alten bzw.<br />
neuen Adaptive Server angeben, wird der Benutzer von sybmigrate<br />
aufgefordert, diese Informationen bereitzustellen.<br />
Im Folgenden sehen Sie das Format der Ressourcedatei, wie sybmigrate<br />
im nicht interaktiven Modus ausgeführt wird. Um eine Ressourcedatei zu<br />
erstellen, geben Sie alle Werte in eine Datei ein:<br />
#<br />
# This is a sample Migration Tool resource file.<br />
# This resource file will migrate objects in pubs2,<br />
# pubs3, and foo databases.<br />
#<br />
######################################################<br />
# Server wide information<br />
######################################################<br />
[server]<br />
# ":" or just server name.<br />
source_ase=tho:5002<br />
source_ase_login=sa<br />
source_ase_password=<br />
# ":" or just server name.<br />
target_ase=tho:6002<br />
target_ase_login=sa<br />
target_ase_password=<br />
# Repository database setup attributes. This is<br />
required with "setup" mode.<br />
# Repository database size in MB.<br />
repository_database_size=7<br />
# Device used to create the "sybmigrate" database.<br />
repository_device=master<br />
124 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
# Migrate server wide data - logins, roles, remote servers, etc...<br />
# valid only with "setup" mode, default is yes<br />
migrate_server_data=yes<br />
# Tell sybmigrate to lock or unlock all login accounts on the<br />
# target Adaptive Server. Valid values are "yes" and "no":<br />
# "yes" to lock and "no" to unlock. This is only valid if<br />
# "migrate_server_data" is set to "yes" and run in "setup" mode.<br />
# If this attribute is not specified, target Adaptive Server login<br />
# accounts are not change.<br />
lock_account=no<br />
# Change target Adaptive Server login passwords. This is only valid<br />
# if "migrate_server_data" is set to "yes" and run in "setup" mode.<br />
# If this attribute is not specified, target Adaptive Server login<br />
# accounts are not change.<br />
# The valid values are "" and password file.<br />
# "" instructs sybmigrate to use random passwords.<br />
# Password file instructs sybmigrate to use the passwords from<br />
# this file.<br />
# The content of the password file consists of two columns:<br />
# the login name column and the password string column.<br />
# The separator between the columns are tabs and or spaces.<br />
login_password_file=<br />
######################################################<br />
# Database information<br />
######################################################<br />
#<br />
# Migrate the "pubs2" database objects<br />
#<br />
[database]<br />
# Specify the source target database to migrate.<br />
source_database_name=pubs2<br />
target_database_name=pubs2<br />
# Migrate database data, valid only if "migrate_server_data"<br />
# was set to "yes" in "setup" mode. This is default to yes.<br />
migrate_database_data=yes<br />
# Work database setup attributes. This is required with "setup" mode.<br />
# Work database size in MB.<br />
work_database_size=5<br />
# Device used to create the work database.<br />
work_database_device=master<br />
<strong>Dienstprogramme</strong> 125
Migrationsprozess<br />
# Number of threads use to do user table data copy<br />
data_copy_thread=5<br />
# Number of thread use to create indexes.<br />
create_index_thread=1<br />
# Number of thread use to do ddl migration/validation<br />
work_thread=10<br />
# Automatically select the depedent objects for migration and<br />
# validation. Valid values are "yes" or "no".<br />
auto_select_dependent_objects=yes<br />
#<br />
## Migrate objects<br />
#<br />
# These attributes specify the list of DDL object to<br />
# migrate or validate. User can directly specify the<br />
# list of DDL object or ask Migration tool to query the<br />
# list. Directly specifying the list has the higher<br />
# precedence. The SQL command will ignore if the list<br />
# is given.<br />
#<br />
# Note:<br />
# * The SQL command for the "*_list_from_sql" attributes<br />
# must return column or columns and <br />
# * Index type must also specify the table name. For<br />
# example, "." for<br />
# "index_create_list" attribute or columns ,<br />
# for "index_create_list_from_sql"<br />
# attribute.<br />
# * Value "" can be used on any of the<br />
# attributes to specify all objects for the type.<br />
# * If none of these attributes are given, all objects<br />
# and data are migrated.<br />
#<br />
user_defined_type_create_list=<br />
id<br />
dbo.tid<br />
default_create_list_from_sql=<br />
select user_name(uid), name from sysobjects<br />
where type = 'D'<br />
rule_create_list=<br />
126 Adaptive Server Enterprise
pub_idrule, title_idrule<br />
table_create_list=<br />
publishers<br />
titles<br />
dbo.authors<br />
dbo.titleauthor<br />
dbo.roysched<br />
stores<br />
dbo.sales<br />
dbo.salesdetail<br />
dbo.discounts<br />
dbo.au_pix<br />
blurbs<br />
table_migrate_list=<br />
dbo.publishers titles dbo.authors dbo.titleauthor<br />
dbo.roysched<br />
stores dbo.sales dbo.salesdetail dbo.discounts au_pix<br />
dbo.blurbs<br />
index_create_list=<br />
dbo.authors.auidind<br />
dbo.authors.aunmind<br />
publishers.pubind<br />
roysched.titleidind<br />
sales.salesind<br />
salesdetail.titleidind<br />
salesdetail.salesdetailind<br />
titleauthor.taind<br />
titleauthor.auidind<br />
titleauthor.titleidind<br />
titles.titleidind<br />
titles.titleind<br />
trigger_create_list=<br />
deltitle<br />
totalsales_trig<br />
store_procedure_create_list_from_sql=<br />
select name from sysobjects where type = 'P'<br />
view_create_list_from_sql=<br />
referential_constraint_create_list_from_sql=<br />
Kapitel 6 Migrations-Dienstprogramm<br />
<strong>Dienstprogramme</strong> 127
Migrationsprozess<br />
#####################################################<br />
#<br />
# Migrate the "pubs3" database objects<br />
#<br />
[database]<br />
source_database_name=pubs3<br />
target_database_name=pubs3<br />
# Migrate database data - user, etc.<br />
migrate_database_data=yes<br />
# These two attributes valid only with "setup" mode<br />
work_database_size=5<br />
work_database_device=master<br />
# Number of threads use to do user table data copy<br />
data_copy_thread=5<br />
# Number of thread use to create indexes.<br />
create_index_thread=1<br />
# Number of thread use to do ddl migration/validation<br />
work_thread=10<br />
# Migrate objects<br />
user_defined_type_create_list=<br />
default_create_list=<br />
rule_create_list=<br />
table_create_list=<br />
dbo.authors<br />
publishers<br />
dbo.titles<br />
dbo.roysched<br />
stores<br />
dbo.sales<br />
dbo.store_employees<br />
salesdetail<br />
dbo.titleauthor<br />
dbo.discounts<br />
blurbs<br />
128 Adaptive Server Enterprise
table_migrate_list_from_sql=<br />
index_create_list=<br />
trigger_create_list=<br />
store_procedure_create_list=<br />
view_create_list=<br />
referential_constraint_create_list_from_sql=<br />
#####################################################<br />
Kapitel 6 Migrations-Dienstprogramm<br />
#<br />
# Migrate all the "foo" database objects with default settings.<br />
#<br />
[database]<br />
source_database_name=foo<br />
target_database_name=foo<br />
# Migrate database data - user, etc.<br />
migrate_database_data=yes<br />
# These two attributes valid only with "setup" mode<br />
work_database_size=5<br />
work_database_device=master<br />
# Number of threads use to do user table data copy<br />
data_copy_thread=5<br />
# Number of thread use to create indexes.<br />
create_index_thread=1<br />
# Number of thread use to do ddl migration/validation<br />
work_thread=10<br />
<strong>Dienstprogramme</strong> 129
Aufgaben nach der Migration<br />
Aufgaben nach der Migration<br />
sybmigrate unterstützt nur die Migration von den in diesem Dokument<br />
genannten Objekten. Migrieren Sie andere Schemenobjekte und<br />
Konfigurationsinformationen manuell, um sicherzustellen, dass Adaptive<br />
Server uneingeschränkt betriebsfähig ist.<br />
Die Index-Statistiken werden beim Neuaufbau der Indizes automatisch<br />
neu erstellt. sybmigrate erstellt jedoch keine neuen Statistiken von<br />
Spalten, die keine Indizes sind. Benutzerdefinierte Stufenwerte für Index-<br />
Statistiken werden bei der Migration nicht beibehalten. Um Statistiken des<br />
neuen Servers zu erhalten, die denen des alten Servers ähneln, verwenden<br />
Sie optdiag, um die Tabellen mit Nicht-Index-Spalten zu ermitteln, die<br />
Statistiken enthalten. Nachdem Sie ermittelt haben, welche Nicht-Index-<br />
Spalten Statistiken enthalten, aktualisieren Sie die Statistiken manuell.<br />
Allen Meldungen, die der Aufmerksamkeit des Benutzers bedürfen,<br />
ist das Wort „Attention“ vorangestellt. Sie werden im Migrationslog<br />
protokolliert.<br />
Führen Sie den Bericht über den Migrationsstatus der Objekte aus, um zu<br />
überprüfen, ob alle Objekte migriert wurden.<br />
Daten aus Replication Server in Adaptive Server 12.5<br />
migrieren<br />
Adaptive Server Version 12.5 kann unabhängig von der Seitengröße von<br />
Adaptive Server breitere Daten generieren als Replication Server Version 12.1.<br />
So kann ein Adaptive Server mit einer 2-KByte-Seite beispielsweise mehr als<br />
250 Spalten umfassen, die breiter sind als 255 Bytes.<br />
Replication Server 12.1 und frühere Versionen können breite Daten nicht<br />
verarbeiten. Wenn breite Daten vom RepAgent an den Replication Server<br />
übergeben werden, kann es sein, dass verschiedene Replication Server-Threads<br />
beendet werden.<br />
Wenn sich RepAgent mit dem Replication Server verbindet, gibt er eine LTL-<br />
Version zurück. Diese Version sowie die Einstellung data limits filter mode legen<br />
fest, wie RepAgent breite Daten behandelt. Die Versionen von Replication<br />
Server und LTL sind wie folgt kompatibel:<br />
130 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Tabelle 6-1: Versionen von Replication Server und LTL<br />
Replication Server-Version LTL-Version<br />
12.1 und niedriger < 400<br />
höher als 12.1 >= 400<br />
Die Kompatibilität bezüglich der Einschränkungen je nach LTL-Version lautet<br />
wie folgt:<br />
Tabelle 6-2: Replication Server: eingeschränkte Anzahl/Breite Spalten<br />
Eigenschaft 12.1 und niedriger<br />
Replication Server<br />
Zeilenanzahl 250 65535<br />
Zeilenbreite 255 65535<br />
Höher als 12.1<br />
Replication Server<br />
Bei Adaptive Server 12.5 in Verbindung mit Replication Server 12.1 und<br />
früheren Versionen lautet die Standardeinstellung für data limits filter mode<br />
„stop“. Der RepAgent wird beendet, wenn er auf Daten stößt, die breiter als<br />
die Verarbeitungskapazitäten von Replication Server sind. Wenn data limits<br />
filter mode auf „skip“ eingestellt ist, überspringt RepAgent die breiten Daten,<br />
die die Verarbeitungskapazitäten von Replication Server überschreiten, und<br />
protokolliert eine Info-Meldung.<br />
Wenn data limits filter mode auf „truncate“ eingestellt ist, kürzt RepAgent die<br />
breiten Daten, damit diese von Replication Server verarbeitet werden können.<br />
In Replication Servern der Version 12.1 und früher werden nur die ersten<br />
250 Spalten oder Parameter übermittelt, wenn die Tabelle oder gespeicherte<br />
Prozedur mehr als 250 Spalten oder Parameter umfasst. Ist die Spalte oder<br />
der Parameter breiter als 255, werden nur die ersten 255 Byte gesendet.<br />
Hinweis Wenn data limits filter mode auf „off“ eingestellt ist, werden die breiten<br />
Daten an Replication Server gesendet, was aber zu Fehlern im Replication<br />
Server führen kann.<br />
Replication Server erkennt alle Verbindungen nach Servername.Datenbank.<br />
Das bedeutet, dass Sie nach der Migration den Namen des Zielservers in den<br />
Namen des Quellservers ändern müssen.<br />
<strong>Dienstprogramme</strong> 131
Daten aus Replication Server in Adaptive Server 12.5 migrieren<br />
Vorbereitung der Datenbanken mit Replikationsdaten für<br />
die Migration<br />
Sie müssen sicherstellen, dass die Replikation von bzw. in jede Datenbank<br />
vollständig ist. Für eine Primärdatenbank müssen also alle Änderungen auf<br />
alle replizierten Datenbanken vollständig ausgeführt worden sein, die für<br />
Daten aus dieser Datenbank gelten; und für eine Replikatdatenbank müssen<br />
alle Änderungen, die für diese Datenbank gelten, vollständig auf diese<br />
Datenbank ausgeführt worden sein. Das bedeutet auch, dass es keinen<br />
unabgeschlossenen Replication DDL geben sollte, einschließlich Routen,<br />
Verbindungen und Subskriptionen. In der Dokumentation zu Replication<br />
Server finden Sie Anleitungen zur Überprüfung, ob Replication DDL noch<br />
nicht abgeschlossen ist.<br />
Zu „vollständig angewandt“ zählen Transaktionen in den ein- und<br />
ausgehenden Warteschlangen von Replication Server. Nach der Migration<br />
können die Daten in den Warteschlangen von Replication Server nicht mehr<br />
wiederhergestellt werden, deshalb müssen Sie absolut sichergehen, dass die<br />
Replikationsdaten vollständig angewandt wurden.<br />
❖ Primäre Replikatdatenbank verwenden<br />
1 Melden Sie sich am Replication Server an, und unterbinden Sie den<br />
Log-Transfer mit folgendem Befehl:<br />
suspend log transfer from Server.Datenbank<br />
2 Fahren Sie RepAgent in der Datenbank herunter, indem Sie sich am<br />
Adaptive Server anmelden und folgenden Befehl eingeben:<br />
use Datenbank<br />
sp_stop_rep_agent Datenbank<br />
❖ Replikatdatenbank verwenden<br />
Trennen Sie sämtliche DSI-Verbindungen mit dieser Datenbank, indem<br />
Sie sich am Replication Server anmelden und folgenden Befehl eingeben:<br />
suspend connection to Server.Datenbank<br />
❖ RSSD-Datenbank verwenden<br />
1 Wenn es sich bei der RSSD-Datenbank auch um eine primäre Datenbank<br />
oder eine Replikatdatenbank handelt, müssen Sie die oben genannten<br />
Aktionen je nach Bedarf durchführen.<br />
2 Versetzen Sie die RSSD-Datenbank in den Hibernation-Modus, indem Sie<br />
folgende Zeichenfolge eingeben:<br />
sysadmin hibernate_on, Replication Server<br />
132 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Bevor Sie mit der Migration beginnen, zeichnet sybmigrate die<br />
Replikationsinformationen in seinem Log auf. Aus diesem Log können<br />
die Informationen abgerufen werden, die zur Wiederherstellung der<br />
Replikationsinformationen bei den der Migration folgenden Aufgaben<br />
notwendig sind. Weitere Hinweise finden Sie unter „Aufgaben für replizierte<br />
Datenbanken nach der Migration“ auf Seite 133.<br />
Aufgaben für replizierte Datenbanken nach der Migration<br />
Stellen Sie nach der Migration die Replikationsinformationen in der<br />
Datenbank wieder her. Die dafür notwendigen Schritte können mit dem<br />
Bericht repl generiert werden.<br />
❖ Primärdatenbanken wiederherstellen<br />
1 Wenn für die originale Primärdatenbank „Warm Standby“ aktiviert ist,<br />
geben Sie Folgendes ein:<br />
sp_reptostandby Datenbankname, Standby-Status<br />
Der Standby-Status der Quelldatenbank wird von sybmigrate im<br />
Migrationslog gespeichert. Befolgen Sie die o. g. Schritte, um den<br />
Standby-Status wiederherzustellen:<br />
2 Setzen Sie die Generationsnummer durch Eingabe folgenden Befehls<br />
zurück:<br />
dbcc settrunc ("ltm", "gen_id", Gen_Nr)<br />
Die Generationsnummer der Quelldatenbank wird von sybmigrate im<br />
Migrationslog gespeichert. Verwenden Sie den o. g. Befehl, um die<br />
Generationsnummer wiederherzustellen:<br />
3 Sekundär-Logtrennstelle zurücksetzen<br />
dbcc settrunc ("ltm", "valid")<br />
4 Setzen Sie den Ort von Replication Server für diese Datenbank in der<br />
RSSD des Replication Server auf Null, zu dem diese Datenbank gehört.<br />
Geben Sie dazu folgende Zeichenfolge ein:<br />
rs_zeroltm Server, Datenbankname<br />
<strong>Dienstprogramme</strong> 133
Daten aus Replication Server in Adaptive Server 12.5 migrieren<br />
Replikatdatenbanken wiederherstellen<br />
5 Wenn diese Datenbank eine aktive Verbindung einer Warm Standby-<br />
Konfiguration ist, materialisieren Sie die Standby-Datenbank durch<br />
Sichern der Primärdatenbank und Laden der Sicherungen in den Standby<br />
neu. Anleitungen hierzu finden Sie in der Dokumentation zu Replication<br />
Server.<br />
6 Starten Sie RepAgent auf der Primärdatenbank wie folgt:<br />
sp_start_rep_agent Datenbankname<br />
7 Melden Sie sich am Replication Server an, und starten Sie den Log-<br />
Transfer neu:<br />
resume log transfer from Server.Datenbank<br />
Wenn es sich bei der Datenbank um eine Replikatdatenbank handelt, geben<br />
Sie die folgenden Befehle ein, um rs_lastcommit und rs_threads zu ändern,<br />
da sie von der logischen Seitengröße abhängen.<br />
Mit diesem Befehl ändern Sie rs_lastcommit:<br />
declare @pad8_size integer<br />
declare @alter_cmd varchar(200)<br />
select @pad8_size = (@@maxpagesize / 2)<br />
- (select sum(A.length) from<br />
syscolumns A, sysobjects B<br />
where A.id = B.id<br />
and B.name = 'rs_lastcommit')<br />
+ (select A.length from<br />
syscolumns A, sysobjects B<br />
where A.id = B.id<br />
and B.name = 'rs_lastcommit'<br />
and A.name = 'pad8')<br />
select @alter_cmd = "alter table rs_lastcommit "<br />
+ "modify pad8 char("<br />
+ convert(varchar(100), @pad8_size)<br />
+ ")"<br />
execute (@alter_cmd)<br />
go<br />
134 Adaptive Server Enterprise
Mit diesem Befehl ändern Sie rs_threads:<br />
declare @pad4_size integer<br />
declare @alter_cmd varchar(200)<br />
Kapitel 6 Migrations-Dienstprogramm<br />
select @pad4_size = (@@maxpagesize / 2)<br />
- (select sum(A.length) from<br />
syscolumns A, sysobjects B<br />
where A.id = B.id<br />
and B.name = 'rs_threads')<br />
+ (select A.length from<br />
syscolumns A, sysobjects B<br />
where A.id = B.id<br />
and B.name = 'rs_threads'<br />
and A.name = 'pad4')<br />
select @alter_cmd = "alter table rs_threads "<br />
+ "modify pad4 char("<br />
+ convert(varchar(100), @pad4_size)<br />
+ ")"<br />
execute (@alter_cmd)<br />
go<br />
RSSD-Datenbanken wiederherstellen<br />
Setzen Sie die RSSD fort, indem Sie sich am Replication Server anmelden und<br />
folgenden Befehl eingeben. Dabei steht Replication Server für den Namen des<br />
Replication Server, der angegeben wurde, als die RSSD-Datenbank vor der<br />
Migration in den Hibernations-Modus geschaltet wurde:<br />
Logs<br />
sysadmin hibernat_off Replication Server<br />
Ändern Sie die Tabellen rs_lastcommit und rs_threads wie unter<br />
„Replikatdatenbanken wiederherstellen“ auf Seite 134 beschrieben.<br />
Hinweis Starten Sie Ihr Replikationssystem erst dann neu, wenn Sie alle<br />
Replikationsinformationen der Datenbank wiederhergestellt haben.<br />
Im Log des Migrationstools stehen vor den Informationen zu den replizierten<br />
Objekten folgende Überschriften:<br />
=== Replication Information for Database 'pdb1' ===<br />
<strong>Dienstprogramme</strong> 135
Daten aus Replication Server in Adaptive Server 12.5 migrieren<br />
Im Folgenden sehen Sie eine Beispiellogdatei einer Primärdatenbank mit der<br />
Bezeichnung pdb1:<br />
sp_repostandby 'pdb1' is NONE.<br />
Wenn der Standby-Status der Datenbank auf NONE eingestellt ist, verwenden<br />
Sie den Standby-Status wie in den oben beschriebenen, der Migration<br />
folgenden Aufgaben.<br />
sp_config_rep_agent 'pdb1'<br />
Für sp_config_rep_agent brauchen Sie die aktuelle Konfiguration von<br />
RepAgent. Das Migrationstool stellt die Konfiguration von RepAgent<br />
automatisch wieder her. In diesem Log können Sie die Konfiguration<br />
von RepAgent anzeigen.<br />
Parameter name Default Config Value Run value<br />
priority 5 5 5<br />
fade timeout 30 30 30<br />
scan timeout 15 15 15<br />
retry timeout 60 60 60<br />
rs username n/a rs1_user rs1_user<br />
trace flags 0 8194 8194<br />
batch ltl true true true<br />
rs servername n/a rs1 rs1<br />
send buffer size 2k 2k 2k<br />
trace log file n/a n/a n/a<br />
connect database n/a pdb1 pdb1<br />
connect dataserver n/a pds1 pds1<br />
can batch size 1000 1000 1000<br />
security mechanism n/a n/a n/a<br />
msg integrity false false false<br />
unified login false false falses<br />
kip ltl errors false false false<br />
msg origin check false false false<br />
short ltl keywords false false false<br />
msg confidentiality false false false<br />
data limits filter mode stop stop stop<br />
msg replay detection false false false<br />
mutual authentication false false false<br />
send structured oqids false false false<br />
send warm standby xacts false false false<br />
msg out-of-sequence check false false false<br />
skip unsupported features false false false<br />
send maint xacts to replicate false false false<br />
(28 rows affected)<br />
136 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Dies ist eine Liste der explizit replizierten Tabellen. sybmigrate stellt den<br />
Replikationsstatus für explizit replizierte Tabellen automatisch wieder her.<br />
Sie können den Replikationsstatus der explizit replizierten Tabellen in diesem<br />
Teil des Logs anzeigen.<br />
sp_setreptable<br />
Name Repdef Mode<br />
------------------------------ ---------t1<br />
owner_off<br />
t2 owner_on<br />
(2 rows affected)<br />
Dies ist eine Liste der explizit replizierten gespeicherten Prozeduren.<br />
Das Migrationstool stellt den Replikationsstatus für explizit replizierte<br />
gespeicherte Prozeduren automatisch wieder her. Sie können den<br />
Replikationsstatus der explizit replizierten gespeicherten Prozeduren in<br />
diesem Teil des Logs anzeigen.<br />
sp_setrepproc<br />
Name Type Log Mode<br />
----------------------- ------------- ----------p1<br />
function log_sproc<br />
p2 function log_current<br />
p3 table log_sproc<br />
p4 table log_current<br />
(4 rows affected)<br />
Dies sind Informationen zur Sekundär-Logtrennseite. Bei den nach der<br />
Migration zu erledigenden Aufgaben brauchen Sie die Spalte generation_id.<br />
dbcc gettrunc<br />
secondary_trunc_page secondary_trunc_state dbrepstat generation_id<br />
database_id database_name ltl_version<br />
----------------------------------------------------------<br />
621 1 167 0<br />
6 pdb1 400<br />
(1 row affected)<br />
This appears to be a replicated primary database.<br />
Make sure the post processing steps for a replicated primary<br />
database are performed. Please consult the manuals for<br />
the steps that need to be performed.<br />
<strong>Dienstprogramme</strong> 137
Einschränkungen<br />
Es folgt ein Beispiellogeintrag für eine Replikatdatenbank.<br />
This appears to be a replicate database.<br />
If the pagesize is greater than 2K, make sure the<br />
post processing steps for a replicate database<br />
are performed. Please consult the manuals for the<br />
steps that need to be performed.<br />
Es folgt ein Beispiellogeintrag für eine RSSD-Datenbank.<br />
This appears to be a replication system database<br />
Make sure the post processing steps for a replication system<br />
database are performed. Please consult the manuals for<br />
the steps that need to be performed<br />
Einschränkungen<br />
Hohe Verfügbarkeit<br />
(High Availability)<br />
Es ist möglich, dass alle drei Logs für eine Datenbank existieren,<br />
da eine Datenbank die drei Kategorien auflisten kann.<br />
Hinweis Bei der Migration der Serverdaten setzt sybmigrate voraus,<br />
dass der Katalog des neuen Adaptive Server nur Standarddaten enthält.<br />
Die Standarddaten auf Windows-Rechnern unterscheiden sich von denen auf<br />
UNIX-Rechnern. Deshalb kommt es bei der Migration von UNIX- auf NT-<br />
Rechner zu Problemen. Um eine erfolgreiche Migration von einem UNIX- auf<br />
einen NT-Rechner durchzuführen, löschen Sie den Namen des XP Servers und<br />
das Login mon_user des NT-Rechners, auf den die Daten migriert werden.<br />
Die Datenmigration ist nicht möglich, wenn Sie die hohe Verfügbarkeit (High<br />
Availability) eingestellt haben. Sie müssen diese Einstellung zurücknehmen,<br />
bevor Sie mit der Datenbankmigration beginnen.<br />
❖ Hohe Verfügbarkeit vor Beginn der Datenbankmigration ausschalten<br />
1 Entkoppeln Sie den primären und sekundären Adaptive Server.<br />
2 Migrieren Sie die Daten des primären alten Adaptive Server<br />
und des sekundären alten Adaptive Server separat in den primären<br />
neuen Adaptive Server und den sekundären neuen Adaptive Server.<br />
138 Adaptive Server Enterprise
Weitere<br />
Einschränkungen<br />
Kapitel 6 Migrations-Dienstprogramm<br />
3 Stellen Sie auf dem neuen Adaptive Server die hohe Verfügbarkeit ein.<br />
Achtung! Damit die hohe Verfügbarkeit ausgeführt werden kann, müssen<br />
der primäre und sekundäre Adaptive Server mit der gleichen logischen<br />
Seitengröße konfiguriert sein.<br />
sybmigrate unterstützt keine Migration zwischen Servern mit<br />
unterschiedlichen Hauptversionsnummern. Das heißt, sowohl auf dem<br />
Quell- als auch auf dem Zielserver muss Adaptive Server 12.5.0.1 oder<br />
höher installiert sein.<br />
Um nachzusehen, ob Adaptive Server 12.5.0.1 oder höher installiert ist,<br />
führen Sie auf dem Server den Befehl @@version aus.<br />
sybmigrate bietet keine spezielle Verarbeitung für eine DTM/XA-<br />
Umgebung. Der Status der offenen Transaktionen und ausstehender<br />
vorbereiteter Transaktionen sollte berücksichtigt werden. Ist eine spezielle<br />
Verarbeitung erforderlich, muss diese manuell erfolgen.<br />
sybmigrate bietet keine zuverlässige Methode zur Ermittlung der<br />
Abhängigkeit verschiedener Objekte. sybmigrate legt anhand der<br />
Abhängigkeiten von Objekten zu anderen Objekten keine Reihenfolge<br />
fest, in der die Objekte migriert werden. Die Neuerstellung von Tabellen<br />
kann fehlschlagen, wenn Fremdschlüssel oder gemeinsame Schlüssel mit<br />
sp_foreignkey oder sp_commonkey definiert werden. Ansichten können<br />
von anderen Ansichten abhängig sein. Sie werden nicht neu erstellt,<br />
wenn die Ansicht, von der sie abhängen, noch nicht migriert wurde.<br />
Die Migration gespeicherter Prozeduren und Trigger kann fehlschlagen,<br />
wenn die Daten, von denen sie abhängen, noch nicht migriert wurden.<br />
Datenbankübergreifende Abhängigkeiten bedeuten, dass Sie die<br />
Migration zugehöriger Objekte koordinieren müssen. Existieren<br />
Abhängigkeiten innerhalb des ausgewählten Satzes, werden diese von<br />
sybmigrate berücksichtigt. Wenn die Abhängigkeiten jedoch außerhalb des<br />
ausgewählten Satzes bestehen, müssen Sie sybmigrate unter Umständen<br />
mehr als einmal bei der Migration ausführen. Deshalb müssen Sie<br />
möglicherweise einige Anlaufversuche unternehmen, um die<br />
Datenmigration zu einem erfolgreichen Abschluss zu bringen.<br />
Der Name der Quell- und Zieldatenbanken muss identisch sein.<br />
Das von ddlgen generierte SQL-Schema kann Objekte umfassen,<br />
die mit dem Namen des alten Adaptive Server qualifiziert werden<br />
müssen.<br />
<strong>Dienstprogramme</strong> 139
Problembehebung und Fehlermeldungen<br />
sybmigrate unterstützt kein Auditing der Migrationsaktivitäten.<br />
Wenn Sie kompilierte Objekte (Prozeduren, Ansichten, Regeln,<br />
Standardwerte) umbenennen, wird der Name des Objekts in syscomments<br />
nicht aktualisiert.<br />
Während der Migration fragt DDLGen das Objekt von syscomments mit<br />
dem alten Namen im Text ab. Dieser alte Name im Text macht sybmigrate<br />
bei der DDL-Migration Probleme.<br />
Problembehebung und Fehlermeldungen<br />
Objekte werden nicht migriert<br />
Beginn der Datenbankmigration<br />
In diesem Abschnitt werden allgemeine Fehler und deren Behebung sowie<br />
die verschiedenen Fehlermeldungen und deren Bedeutungen beschrieben.<br />
Beim ersten Versuch werden Objekte oft nicht migriert. sybmigrate wiederholt<br />
alle fehlgeschlagenen Migrationsversuche automatisch. Wenn Sie jedoch<br />
versuchen, ein Objekt zu migrieren, das von einem anderen nicht migrierten<br />
Objekt abhängt, wird die Migration auf jeden Fall fehlschlagen.<br />
Um zu verhindern, dass Objekte nicht migriert werden, überprüfen Sie die<br />
Abhängigkeiten der Objekte, die Sie für die Migration vorsehen. So können Sie<br />
z. B. keinen Trigger migrieren, wenn die Tabelle, für die der Trigger definiert<br />
ist, nicht auch migriert wird. Analog dazu können auch Ansichten nicht<br />
migriert werden, die auf anderen Ansichten oder Tabellen erstellt wurden,<br />
wenn diese nicht auch migriert werden.<br />
Wenn Sie sich in der Setup-Phase des Migrationsprozesses befinden, müssen<br />
Sie entscheiden, ob Sie Serverdaten migrieren möchten oder nicht. Sie können<br />
die Option „Yes“, „No“ oder „Undecided“ wählen.<br />
140 Adaptive Server Enterprise
Kapitel 6 Migrations-Dienstprogramm<br />
Wenn Sie „Undecided“ wählen, können Sie den Migrationsprozess einrichten<br />
und zu einem späteren Zeitpunkt zurückkehren, an dem Sie die Migration<br />
wirklich durchführen möchten. Wenn Sie „Undecided“ wählen, können<br />
Sie die Datenbankmigration erst starten, wenn Sie angegeben haben,<br />
ob die Serverdaten migriert werden sollen.<br />
Wenn Sie in der Setup-Phase angeben, dass die Serverdaten nicht migriert<br />
werden sollen, können Sie nicht mit der Datenbankmigration beginnen.<br />
„Connection refused“ und „Unable to obtain connection to the<br />
server“<br />
Für das Auftreten dieser beiden Fehler kann es zwei Gründe geben.<br />
Wenn der alte oder der neue Adaptive Server nicht ausgeführt wird,<br />
kann sybmigrate keine Verbindung herstellen.<br />
Der Konfigurationsparameter number of user connections muss so<br />
eingestellt sein, dass auf beiden Servern (alter und neuer Adaptive Server)<br />
ausreichend Ressourcen zur Verfügung stehen.<br />
Der Zielserver ist vom Quellserver nicht erreichbar<br />
Die Interfaces-Datei wird zum Starten des alten Adaptive Server verwendet.<br />
Stellen Sie sicher, dass diese Datei über einen Eintrag verfügt, der den neuen<br />
Adaptive Server identifiziert.<br />
Überprüfen Sie, ob Sie mit Ihrem Login vom alten auf den neuen Adaptive<br />
Server zugreifen können.<br />
Wenn sybmigrate bei der Migration hängt<br />
Wenn sybmigrate beim Migrationsprozess hängt, prüfen Sie das Log<br />
sybmigrate in $SYBASE/$SYBASE_ASE/init/logs auf irgendwelche Fehler<br />
oder Ausnahmen.<br />
Überprüfen Sie auch die Logs Ihres Adaptive Server. Wenn die Adaptive<br />
Server-Logs über nicht mehr ausreichend Speicher in der Datenbank<br />
verfügen, erhöhen Sie die Datenbankgröße, und installieren Sie die<br />
gespeicherte Prozedur sp_threasholdaction, um dump tran auszuführen,<br />
wenn das Log voll ist.<br />
<strong>Dienstprogramme</strong> 141
Problembehebung und Fehlermeldungen<br />
Zwei Datenbanken zusammenführen<br />
Um zwei Datenbanken auf dem alten Adaptive Server in eine Datenbank auf<br />
dem neuen Adaptive Server zusammenzuführen, gehen Sie wie folgt vor.<br />
❖ Zwei Datenbanken zusammenführen<br />
1 Richten Sie die erste Datenbank ein, und migrieren Sie diese.<br />
2 Nachdem Sie die erste Datenbank migriert haben, ändern Sie den Namen<br />
der Zieldatenbank in den Namen der zweiten Quelldatenbank.<br />
3 Richten Sie die zweite Datenbank ein, und migrieren Sie diese.<br />
Hinweis Sie können die Datenbankdaten der zweiten Datenbank nicht<br />
migrieren, wenn die Benutzer, Rollen und anderen Datenbankdaten bereits<br />
auf der Zieldatenbank existieren.<br />
Bereinigen von Fehlern nach der Migration<br />
Datenbank erneut migrieren<br />
Wenn sybmigrate unerwartet fehlschlägt, bereinigen Sie den alten und neuen<br />
Adaptive Server, und führen Sie die Migration erneut durch. Es gibt einige<br />
Aktionen, die Sie auf dem alten und dem neuen Adaptive Server ausführen<br />
müssen.<br />
Auf dem alten Adaptive Server:<br />
Löschen Sie die temporären Arbeitsdatenbanken mtpdb$%.<br />
Löschen Sie die Repository-Datenbank sybmigratedb.<br />
Löschen Sie alle Fremdserver mtrs$%.<br />
Auf dem neuen Adaptive Server:<br />
Wenn Serverdaten migriert wurden, bauen Sie den Adaptive Server mit<br />
srvbuild oder syconfig neu auf.<br />
Erstellen Sie die Zieldatenbanken neu.<br />
Um eine Datenbank erneut zu migrieren, gehen Sie wie folgt vor:<br />
1 Starten Sie sybmigrate.<br />
142 Adaptive Server Enterprise
Einzelne Objekte neu erstellen<br />
Verbindung fehlgeschlagen<br />
Kapitel 6 Migrations-Dienstprogramm<br />
2 Klicken Sie in der Setup-Sitzung im Fenster „Setup Paths“ mit der rechten<br />
Maustaste auf den Migrationspfad, den Sie erneut ausführen möchten.<br />
3 Wählen Sie im Popup-Menü die Option „Delete Migration Path“.<br />
4 Bereinigen oder entfernen Sie die migrierten Daten und Objekte auf<br />
der Zieldatenbank, oder löschen Sie die Zieldatenbank und erstellen Sie<br />
sie neu.<br />
5 Starten Sie sybmigrate erneut, und führen Sie das Tool im Setup-<br />
Modus aus.<br />
So erstellen Sie ein Objekte neu:<br />
1 Löschen Sie im neuen Adaptive Server das Objekt, das Sie neu erstellen<br />
möchten.<br />
2 Starten Sie sybmigrate in der Migrationssitzung, und öffnen Sie das<br />
Fenster „Migrate Object Selection“. Markieren Sie das Objekt, das Sie<br />
neu erstellen möchten, und klicken Sie auf die rechte Maustaste.<br />
3 Wählen Sie vom Popup-Menü „Reset Object to Initial status“.<br />
4 Schließen Sie den Migrationsprozess ab.<br />
Wenn Sie eine Fehlermeldung erhalten, dass keine Verbindung hergestellt<br />
werden konnte, obwohl alter und neuer Adaptive Server ausgeführt werden,<br />
verwenden Sie möglicherweise den falschen Zeichensatz. Wenn Sie sybmigrate<br />
nutzen, müssen Sie den Standarddatensatz verwenden. Führen Sie sybmigrate<br />
mit der Option -J Zeichensatz aus, um den Zeichensatz zu ändern.<br />
„Insufficient memory in JVM shared class“<br />
Wenn dieser Fehler im Serverlog angezeigt wird, müssen Sie den<br />
Konfigurationsparameter size of shared class heap auf einen höheren<br />
Wert einstellen.<br />
01:00000:00036:2002/01/28 14:17:05.63 server Java VM<br />
Host: Memory allocation request failed because of<br />
<strong>Dienstprogramme</strong> 143
Problembehebung und Fehlermeldungen<br />
insufficient memory in Jvm Shared Class.<br />
„There is not enough memory in the procedure cache“<br />
java.lang-Fehler<br />
Wenn bei der Migration von Indizes die Fehlermeldung „there is not<br />
enough memory in the procedure cache“ angezeigt wird, erhöhen<br />
Sie mithilfe von sp_configure procedure cache size den Prozedurcache.<br />
Wird die Meldung<br />
java.lang.NoClassDefFoundError:com/sybasejdbcx/Sybdriver<br />
angezeigt, wenn Sie sich mit Adaptive Server verbinden, müssen Sie<br />
sicherstellen, dass im Verzeichnis $SYBASE ($SYBASE/jConnect-5_5)<br />
JConnect 5.5 installiert ist.<br />
144 Adaptive Server Enterprise
KAPITEL 7 Adaptive Server Plug-In<br />
installieren<br />
Einführung<br />
Dieses Kapitel beschreibt das Adaptive Server Enterprise Plug-In und<br />
behandelt außerdem folgende Themen:<br />
Einsatz der Monitor Client-GUI als Teil von Adaptive Server<br />
Plug-In und als eigenständige Anwendung<br />
Verwendung der C++-Version von Adaptive Server Plug-In<br />
Thema Seite<br />
Einführung 145<br />
Funktionsunterschiede zwischen den Versionen im Vergleich 146<br />
Auf die Monitor Client-GUI zugreifen 148<br />
Das Adaptive Server Plug-In ist mit dem <strong>Sybase</strong> Central-Toolkit<br />
entwickelt worden. Es wird als Plug-In in einem Anzeigeprogramm<br />
ausgeführt, in das Sie gleichzeitig mehrere Plug-Ins laden können. Das<br />
Adaptive Server Plug-In, das auf der C++-Version von <strong>Sybase</strong> Central<br />
basiert und nur unter Windows NT, Windows 2000 und Windows 98 läuft,<br />
wird nicht mehr hergestellt. Es wird durch das Plug-In für Adaptive Server<br />
Version 12.5 ersetzt, das auf Grundlage des <strong>Sybase</strong> Central Java Edition-<br />
Toolkit entwickelt wurde und auf allen Plattformen läuft.<br />
Ausführliche Informationen zum Gebrauch der Funktionen des Plug-Ins<br />
finden Sie in der Online-Hilfe für <strong>Sybase</strong> Central.<br />
<strong>Dienstprogramme</strong> 145
Funktionsunterschiede zwischen den Versionen im Vergleich<br />
Lieferung des Adaptive Server Plug-Ins<br />
Adaptive Server Version 12.5 enthält zwei Versionen des Adaptive Server<br />
Plug-Ins:<br />
Das Java Adaptive Server Plug-In auf Basis des <strong>Sybase</strong> Central Java<br />
Edition Framework – auf allen Server-Installations-CDs und auf der PC-<br />
Client-Installations-CD enthalten.<br />
Das C++ Adaptive Server Plug-In auf Basis von <strong>Sybase</strong> Central C++<br />
Version – nur auf der PC-Client-Installations-CD enthalten. Um auf die<br />
C++-Version zugreifen zu können, müssen Sie sie mit der PC-Client-<br />
Installations-CD auf einer Windows-Plattform installieren.<br />
Funktionsunterschiede zwischen den Versionen im<br />
Vergleich<br />
Die Funktionalität der Java und C++ Plug-Ins unterscheidet sich in mehreren<br />
Hinsichten . Die Java-Edition sollte zur Ausführung administrativer Aufgaben<br />
in Adaptive Server 12.5 benutzt werden. Die C++-Version des Plug-Ins wurde<br />
nur in Version 12.5 integriert, um Zugriff auf die Monitor Client-GUI zu<br />
gewähren.<br />
Das Java Plug-In bietet Unterstützung für alle Leistungsmerkmale von<br />
Adaptive Server 12.5.x, einschl. EJB Server, größere Seitengrößen, größere<br />
Spaltenlängen, Unicode-Datentypen und den neuen Adaptive Server<br />
Replicator. Die C++-Version des Plug-Ins, die im Lieferumfang von Adaptive<br />
Server 12.5 enthalten ist, enthält keine dieser funktionalen Verbesserungen.<br />
Einige der Funktionen in der C++-Version des Plug-Ins sind derzeit nicht in der<br />
Java-Version vorhanden.<br />
146 Adaptive Server Enterprise
Kapitel 7 Adaptive Server Plug-In installieren<br />
Tabelle 7-1 zeigt einen Vergleich der Hauptunterschiede zwischen der C++-<br />
und der Java-Edition des Adaptive Server Plug-Ins.<br />
Funktion<br />
Tabelle 7-1: Funktionsvergleich<br />
C++ Java<br />
Läuft auf allen Plattformen Nein – läuft nur auf Windows-<br />
Plattformen.<br />
Ja<br />
Kann lokalen Server starten Ja – kann eine Adaptive Server-<br />
Installation auf dem lokalen<br />
Rechner starten.<br />
Nein<br />
SQL Monitor Client-Unterstützung Ja Nein<br />
Client Library-Schnittstelle zu Servern Ja – die Edition C++ verwendet<br />
Client-Library und die Java-<br />
Edition benutzt jConnect. Daher<br />
sind beispielsweise syntaktische<br />
Interface-Analysen und<br />
Verzeichnisdienste bei der Java-<br />
Edition nicht ‘nativ’ und zeigen<br />
ein anderes Verhalten als bei der<br />
C++-Edition.<br />
Nein – Der Interface-Parser der<br />
aktuellen Java-Version unterstützt<br />
nur einen Teil der gesamten<br />
Interfaces-Dateisyntax (verwendet<br />
beispielsweise das TLI-Format auf<br />
allen UNIX-Plattformen).<br />
JConnect-Schnittstelle zu Servern Nein Ja<br />
Modusunabhängige Dialoge Nein Ja<br />
Sortierung auf Client-Seite Nein – Sortierung findet auf Ja – führt Sortierungen auf dem<br />
Server-Seite statt.<br />
Client durch und erreicht höhere<br />
Leistung.<br />
SQL-Ablaufprotokoll Ja In Planung<br />
Bearbeiten von gespeicherten Prozeduren<br />
und Aktualisieren von gespeicherten<br />
Prozedurdefinitionen<br />
Ja In Planung<br />
DDLGen Nein Ja<br />
Unterstützung für Funktionen der<br />
Version 12.5.0.1: große Spalten,<br />
mehrere Seitengrößen, Unicode-<br />
Datentypen, EJB Server, ASE Replicator<br />
Nein Ja<br />
Unterstützung von Proxy-Tabellen Ja Ja – verbesserte Funktionen zur<br />
Unterstützung von Proxy-Tabellen<br />
bei Version 12.5.0.1 und höheren<br />
Versionen.<br />
Login mit LDAP-Verzeichnisdiensten Nein Ja – ab Version 12.5.0.1 und<br />
höheren Versionen.<br />
<strong>Dienstprogramme</strong> 147
Auf die Monitor Client-GUI zugreifen<br />
Auf die Monitor Client-GUI zugreifen<br />
Sie können die Monitor Client-GUI-Anwendung vom „Monitors“-Ordner der<br />
C++-Version des Adaptive Server Plug-Ins aufrufen. Diese Anwendung ist nur<br />
auf Windows-Plattformen verfügbar. Die Java-Edition des Adaptive Server<br />
Plug-Ins enthält weder den „Monitors“-Ordner noch die Monitor Client-GUI-<br />
Anwendung, die in der C++-Version vorhanden sind. Wenn Sie die Monitor<br />
Client-GUI zusammen mit einer Adaptive Server 12.5-Installation benutzen<br />
möchten, müssen Sie die C++-Version des Plug-Ins verwenden, die im<br />
Lieferumfang der Adaptive Server Version 12.5 enthalten ist.<br />
Es ist nicht beabsichtigt, Monitor Client in die Java-Edition des Adaptive<br />
Server Plug-Ins zu integrieren.<br />
Hinweis Die C++-Version des Adaptive Server Plug-Ins, die im Lieferumfang<br />
früherer Versionen als Adaptive Server 12.5 enthalten war, funktioniert mit<br />
einer Adaptive Server 12.5-Installation. Jedoch kann die Monitor Client-GUI<br />
in diesen Versionen nicht auf Adaptive Server 12.5 Monitor Server zugreifen.<br />
Wenn Sie die Monitor Client-GUI zusammen mit einer Adaptive Server 12.5-<br />
Installation und Monitor Server benutzen möchten, müssen Sie die C++-<br />
Version des Plug-Ins verwenden, die im Lieferumfang der Adaptive Server<br />
Version 12.5 enthalten ist.<br />
Monitor Client-GUI als eigenständige Anwendung ausführen<br />
Sie können die Monitor Client-GUI auch als eigenständige Java-Anwendung<br />
ausführen. Dies ist nur auf Windows-Plattformen möglich. Befolgen<br />
Sie hierzu die unten angegebenen Anweisungen. Die Erstellung einer<br />
Stapelverarbeitungsdatei für diese Schritte kann sinnvoll sein.<br />
❖ Monitor Client-GUI als eigenständige Java-Anwendung ausführen<br />
In Ihrem System muss eine Kopie von Java Runtime Environment (JRE)<br />
Version 1.1.8 installiert sein.<br />
Folgende Monitor Client-GUI-Dateien müssen in Ihrem System<br />
installiert sein:<br />
Mclib.dll<br />
Mchelp.dll<br />
3pclass.zip<br />
monclass.zip<br />
148 Adaptive Server Enterprise
Kapitel 7 Adaptive Server Plug-In installieren<br />
Die Adaptive Server-Installationen und Monitor Server müssen Einträge<br />
in Ihrer lokalen sql.ini-Datei haben.<br />
Für jede Adaptive Server-Installation, die Sie überwachen möchten,<br />
muss eine Monitor Server-Installation ausgeführt werden.<br />
Von der Befehlszeile oder innerhalb einer Stapelverarbeitungsdatei:<br />
1 Setzen Sie JAVA_HOME auf das JRE 1.1.8-Verzeichnis.<br />
2 Setzen Sie PATH auf %JAVA_HOME%\bin;%PATH%.<br />
3 Ihr Klassenpfad CLASSPATH muss folgende Dateien enthalten:<br />
set CLASSPATH=DRIVENAME:PATHNAME\monclass.zip;:\<br />
3pclass.zip;%JAVA_HOME%\lib\rt.jar<br />
Dabei gilt:<br />
DRIVENAME ist der Laufwerksbuchstabe des Laufwerks, in dem Ihre<br />
Dateien installiert sind.<br />
PATHNAME ist das Verzeichnis, in dem die Dateien gespeichert sind.<br />
4 Führen Sie die Monitor Client-Anwendung in der Java Virtual Machine<br />
aus, indem Sie folgenden Befehl eingeben:<br />
jre sybase.monclt.mcgui.procact.ProcActApp SQL_SERVER_NAME 12.5<br />
MS_SERVER_NAME sa "" en 0 scssen.hlp<br />
Dabei gilt:<br />
SQL_SERVER_NAME ist der Name der Adaptive Server-Installation,<br />
die Sie in Ihrer sql.ini-Datei überwachen möchten.<br />
MS_SERVER_NAME ist der Name der Monitor Server-Installation<br />
für diese Adaptive Server-Installation in Ihrer sql.ini-Datei.<br />
5 Über die Optionen im Monitor Client-Menü „File“ können Sie die<br />
Überwachungswerte auswählen, die Sie anzeigen möchten.<br />
<strong>Dienstprogramme</strong> 149
Auf die Monitor Client-GUI zugreifen<br />
150 Adaptive Server Enterprise
KAPITEL 8 Übersicht über die<br />
Dienstprogrammbefehle<br />
In diesem Kapitel werden Adaptive Server-Dienstprogrammbefehle<br />
zusammenfassend behandelt.<br />
Thema Seite<br />
backupserver 158<br />
bcp 164<br />
buildmaster 177<br />
certauth 177<br />
certpk12 180<br />
certreq 183<br />
charset 186<br />
cobpre 187<br />
cpre 187<br />
dataserver 188<br />
dataxtr 195<br />
ddlgen 195<br />
defncopy 210<br />
dscp 217<br />
dsedit 218<br />
extractjava 219<br />
installjava 222<br />
isql 227<br />
langinstall 237<br />
optdiag 240<br />
pwdcrypt 247<br />
showserver 248<br />
sqldbgr 249<br />
sqlloc 255<br />
sqllocres 257<br />
sqlsrvr 259<br />
sqlupgrade 267<br />
<strong>Dienstprogramme</strong> 151
Erste Orientierung<br />
Erste Orientierung<br />
Thema Seite<br />
sqlupgraderes 268<br />
srvbuild 269<br />
srvbuildres 270<br />
startserver 271<br />
xpserver 278<br />
UNIX Sie geben einen Dienstprogrammbefehl in einer UNIX-Shell an der<br />
System-Eingabeaufforderung ein.<br />
Windows NT<br />
Wenn ein Dienstprogramm in der Programmgruppe „<strong>Sybase</strong>“ als<br />
Programmsymbol dargestellt ist, können Sie es starten, indem Sie auf<br />
das Symbol doppelklicken.<br />
Wenn für ein Dienstprogramm in der Programmgruppe kein<br />
Programmsymbol vorhanden ist, geben Sie den Dienstprogrammbefehl<br />
an der Windows- oder Windows NT-Eingabeaufforderung ein, um das<br />
Dienstprogramm zu starten.<br />
Setzen Sie Zeichen mit spezieller Bedeutung für die Shell (die Eingabeaufforderung<br />
in Windows NT), wie den Rückstrich (\), das Sternchen (*), den<br />
Schrägstrich (/) und Leerstellen, in Anführungszeichen. Sie können einigen<br />
Sonderzeichen einen Rückstrich (\) als „Escape-Zeichen“ voransetzen.<br />
Dadurch wird die Shell (Eingabeaufforderung) gehindert, die Sonderzeichen<br />
zu interpretieren.<br />
Tabelle 8-1 beschreibt die <strong>Dienstprogramme</strong>, die für Adaptive Server zur<br />
Verfügung stehen.<br />
Hinweis Die in Tabelle 8-1 beschriebenen <strong>Dienstprogramme</strong> erlauben es<br />
Ihnen möglicherweise, einen -P-Parameter zu verwenden, um Ihr Kennwort<br />
einzugeben. Wenn Sicherheit ein Problem ist, verwenden Sie diesen Parameter<br />
nicht, um Ihr Kennwort anzugeben. Ein anderer Benutzer hat möglicherweise<br />
die Gelegenheit, es einzusehen. Stattdessen melden Sie sich wie gewohnt ohne<br />
-P-Parameter an und lassen sich vom Adaptive Server zur Eingabe Ihres<br />
Kennworts auffordern.<br />
152 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Dienstprogramm<br />
Tabelle 8-1: <strong>Dienstprogramme</strong><br />
Beschreibung<br />
backupserver Ausführbares Format des Backup Server-Programms.<br />
bcp Kopiert Zeilen in einer Datenbanktabelle aus einer oder in eine Betriebssystemdatei in<br />
einem vom Benutzer festgelegten Format.<br />
certauth Konvertiert eine Server-Zertifikatsanforderung in ein Zertifikat mit CA-Berechtigung<br />
(Certificate Authority).<br />
certpk12 Exportiert oder importiert eine PKCS#12-Datei.<br />
certreq Erstellt eine Server-Zertifikatsanforderung und den entsprechenden privaten Schlüssel auf<br />
zwei Arten.<br />
charset Lädt die Zeichensätze und Sortierreihenfolgen-Dateien.<br />
cobpre Precompiler für COBOL.<br />
cpre Precompiler für C.<br />
dataserver Adaptive Server-Programmdatei.<br />
dataxtr Daten-Migrationstool.<br />
ddlgen Generiert Datendefinitionssprache für Objekte der Server- und Datenbank-Ebene in ASE.<br />
defncopy Kopiert Definitionen für angegebene Ansichten, Regeln, Standardwerte, Trigger,<br />
Prozeduren oder Protokolle aus einer Datenbank in eine Betriebssystemdatei bzw. aus einer<br />
Betriebssystemdatei in eine Datenbank.<br />
dscp Ermöglicht es Ihnen, Servereinträge in der Interfaces-Datei von der Befehlszeile aus<br />
anzuzeigen und zu bearbeiten.<br />
dsedit Ermöglicht es Ihnen, Servereinträge in der Interfaces-Datei anzuzeigen und zu bearbeiten,<br />
indem Sie eine auf X11/Motif basierende grafische Benutzeroberfläche verwenden.<br />
extractjava Kopiert eine gespeicherte JAR-Datei von einer Adaptive Server-Installation in eine<br />
Clientdatei.<br />
installjava Installiert eine JAR-Datei von einer Clientdatei in eine Adaptive Server-Installation.<br />
isql Interactive SQL-Parser von Adaptive Server.<br />
langinstall Installiert eine neue Spracheinstellung auf Adaptive Server.<br />
optdiag Zeigt Optimiererstatistiken an oder lädt die aktualisierte Statistik in Systemtabellen.<br />
pwdcrypt Erstellt und schreibt ein verschlüsseltes LDAP-Kennwort in der Datei libtcl.cfg.<br />
showserver Zeigt Adaptive Server und Backup Server an, die derzeit auf dem lokalen Rechner<br />
ausgeführt werden.<br />
sqldbgr Fehlersuche in gespeicherten Prozeduren und Triggern.<br />
sqlloc Installiert und modifiziert Sprachen-, Zeichensatz- und Sortierreihenfolgen-Standardwerte<br />
für Adaptive Server im GUI-Modus.<br />
sqllocres Installiert und modifiziert Sprachen-, Zeichensatz- und Sortierreihenfolgen-Standardwerte<br />
für Adaptive Server im Befehlszeilenmodus.<br />
sqlsrvr Adaptive Server-Programmdatei.<br />
sqlupgrade Upgrade Ihrer derzeit installierten Adaptive Server-Version auf die neueste Version im<br />
GUI-Modus.<br />
<strong>Dienstprogramme</strong> 153
Erste Orientierung<br />
Dienstprogramm Beschreibung<br />
sqlupgraderes Upgrade Ihrer derzeit installierten Adaptive Server-Version auf die neueste Version im<br />
Befehlszeilenmodus.<br />
srvbuild Erstellt neue Adaptive Server, Backup Server, Monitor Server oder XP Server im<br />
GUI-Modus mit den Standard- oder benutzerdefinierten Werten für wichtige<br />
Konfigurationsattribute.<br />
srvbuildres Erstellt neue Adaptive Server, Backup Server, Monitor Server oder XP Server im<br />
Befehlszeilenmodus mit den Standard- oder benutzerdefinierten Werten für wichtige<br />
Konfigurationsattribute.<br />
sqlsrvr Adaptive Server-Programmdatei.<br />
startserver Startet eine Adaptive Server- oder Backup Server-Installation.<br />
srvmgr Startet Adaptive Server und Backup Server als Windows NT-Dienste.<br />
sybload Lädt <strong>Sybase</strong>-Produkte vom Datenträger und baut das <strong>Sybase</strong> Installationsverzeichnis von<br />
der Befehlszeile aus auf.<br />
sybmigrate Ermöglicht Ihnen die Migration von Datenbanken von einem Server, der logische 2-KByte-<br />
Seiten verwendet, auf einen Server, der logische 4-, 8- oder 16-KByte-Seiten verwendet.<br />
sybsetup Installiert und konfiguriert Adaptive Server von einem einzigen Standort mittels einer<br />
GUI-Schnittstelle.<br />
xpserver Startet XP Server manuell.<br />
*_dce- und *_r-<strong>Dienstprogramme</strong><br />
<strong>Sybase</strong> stattet Sie mit _dce-Versionen von manchen <strong>Dienstprogramme</strong>n aus,<br />
was im „Syntax“-Teil der einzelnen Dienstprogrammabschnitte angezeigt<br />
wird. Sie müssen die dce-Versionen der <strong>Dienstprogramme</strong> verwenden,<br />
falls Sie das Distributed Computing Environment-Verzeichnis (DCE) oder<br />
Sicherheitsdienste für <strong>Sybase</strong> Clientanwendungen für die IBM RS/6000-<br />
Plattform verwenden.<br />
<strong>Sybase</strong> stellt Ihnen zusätzlich die _r-Versionen von einigen <strong>Dienstprogramme</strong>n<br />
zur Verwendung mit Thread-Treibern zur Verfügung.<br />
Folgende <strong>Dienstprogramme</strong> in diesem Handbuch haben _dce- und _r-<br />
Versionen:<br />
bcp<br />
cobpre<br />
cpre<br />
defncopy<br />
dscp<br />
isql<br />
154 Adaptive Server Enterprise
Dienstprogramm-Überblick<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Dieser Abschnitt enthält einen Überblick über die <strong>Dienstprogramme</strong>,<br />
in folgende Kategorien unterteilt:<br />
„Installations- und Konfigurationsdienstprogramme“ auf Seite 155<br />
„<strong>Dienstprogramme</strong> für Sprachen, Zeichensätze und Sortierreihenfolgen“<br />
auf Seite 156<br />
„<strong>Dienstprogramme</strong> zum Starten von Servern“ auf Seite 156<br />
„Erstellungs- und Bearbeitungsdienstprogramme für Datenbanken“<br />
auf Seite 157<br />
„<strong>Dienstprogramme</strong> zum Sammeln von Informationen“ auf Seite 157<br />
Installations- und Konfigurationsdienstprogramme<br />
Verwenden Sie die folgenden <strong>Dienstprogramme</strong>, um Datenbanken zu<br />
installieren und zu konfigurieren:<br />
dataserver Damit können Sie einen neuen Adaptive Server installieren.<br />
dscp Ermöglicht es Ihnen, Servereinträge in der Interfaces-Datei von der<br />
Befehlszeile aus anzuzeigen und zu bearbeiten.<br />
dsedit Ermöglicht es Ihnen, auf UNIX-Plattformen Servereinträge in der Interfaces-<br />
Datei anzuzeigen und zu bearbeiten, indem Sie eine auf X11/Motif basierende<br />
grafische Benutzeroberfläche (GUI) verwenden.<br />
In Windows NT können Sie damit Netzwerkverbindungsinformationen in den<br />
Interfaces-Dateien erstellen und ändern.<br />
sqlupgrade Stellt auf UNIX-Plattformen Ihre derzeit installierte Adaptive Server-Version<br />
auf die neueste Version um, wobei eine auf X11/Motif basierende grafische<br />
Benutzeroberfläche (GUI) verwendet wird.<br />
sqlupgraderes Stellt auf UNIX-Plattformen Ihre derzeit installierte Adaptive Server-Version<br />
auf die neueste Version um, wobei Ressourcendateien verwendet werden.<br />
srvbuild Erstellt neue Adaptive Server, Backup Server, Monitor Server oder XP<br />
Server mit den Standard- oder benutzerdefinierten Werten für wichtige<br />
Konfigurationsattribute auf UNIX-Plattformen, wobei eine auf X11/Motif<br />
basierende grafische Benutzeroberfläche verwendet wird.<br />
<strong>Dienstprogramme</strong> 155
Dienstprogramm-Überblick<br />
srvbuildres Erstellt neue Adaptive Server, Backup Server, Monitor Server oder XP Server<br />
auf UNIX-Plattformen, wobei Ressourcendateien verwendet werden,<br />
um die Werte für die wichtigsten Konfigurationsattribute festzulegen.<br />
<strong>Dienstprogramme</strong> für Sprachen, Zeichensätze und<br />
Sortierreihenfolgen<br />
Verwenden Sie die folgenden <strong>Dienstprogramme</strong>, um Sprachen, Zeichensätze<br />
und Sortierreihenfolgen einzustellen:<br />
charset Lädt die Zeichensätze und Sortierreihenfolgen-Dateien in Windows NT.<br />
langinstall Installiert eine neue Spracheinstellung auf Adaptive Server.<br />
sqlloc Installiert und modifiziert Sprachen-, Zeichensatz- und Sortierreihenfolge-<br />
Standardwerte für Adaptive Server auf UNIX-Plattformen, wobei eine auf<br />
X11/Motif basierende grafische Benutzeroberfläche verwendet wird.<br />
sqllocres Installiert und modifiziert Sprachen-, Zeichensatz- und Sortierreihenfolge-<br />
Standardwerte für Adaptive Server auf UNIX-Plattformen, wobei eine<br />
Ressourcendatei verwendet wird.<br />
<strong>Dienstprogramme</strong> zum Starten von Servern<br />
Verwenden Sie die folgenden <strong>Dienstprogramme</strong>, um Server manuell zu starten:<br />
backupserver Startet das Backup Server-Programm. Verwenden Sie den startserver-Befehl an<br />
Stelle dieses Dienstprogramms, um Backup Server manuell zu starten. In NT<br />
können Sie statt dessen das srvmgr-Dienstprogramm verwenden, um Backup<br />
Server manuell zu starten.<br />
dataserver Startet das Adaptive Server-Programm. Verwenden Sie den startserver-Befehl<br />
an Stelle dieses Dienstprogramms, um Adaptive Server manuell zu starten.<br />
histserver Startet das Historical Server-Programm. Verwenden Sie den histserver-Befehl<br />
an Stelle dieses Dienstprogramms, um Historical Server manuell zu starten.<br />
monserver Startet das Monitor Server-Programm. Verwenden Sie den monserver-Befehl<br />
an Stelle dieses Dienstprogramms, um Monitor Server manuell zu starten.<br />
sqlsrvr Startet das Adaptive Server-Programm in Windows NT. Verwenden Sie das<br />
services manager-Dienstprogramm an Stelle dieses Dienstprogramms,<br />
um Adaptive Server manuell zu starten.<br />
156 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
srvmgr Startet, stoppt und unterbricht Adaptive Server, Backup Server und Adaptive<br />
Server Monitor als Windows NT-Dienste.<br />
startserver Startet eine Adaptive Server- und eine Backup Server-Installation auf UNIX-<br />
Plattformen.<br />
Erstellungs- und Bearbeitungsdienstprogramme für Datenbanken<br />
Verwenden Sie die folgenden <strong>Dienstprogramme</strong>, um Datenbanken zu erstellen<br />
und zu bearbeiten:<br />
bcp Kopiert eine Datenbanktabelle aus einer oder in eine Betriebssystemdatei in<br />
einem vom Benutzer festgelegten Format.<br />
defncopy Kopiert Definitionen für angegebene Ansichten, Regeln, Standardwerte,<br />
Trigger oder Prozeduren aus einer Datenbank in eine Betriebssystemdatei bzw.<br />
aus einer Betriebssystemdatei in eine Datenbank.<br />
extractjava Kopiert eine gespeicherte JAR-Datei und die darin enthaltenen Klassen von<br />
einer Adaptive Server-Installation in eine Clientdatei.<br />
installjava Installiert eine JAR-Datei von einer Clientdatei in eine Adaptive Server-<br />
Datenbank.<br />
isql Interactive SQL-Parser von Adaptive Server.<br />
optdiag Zeigt Optimiererstatistiken an oder lädt die aktualisierte Statistik in<br />
Systemtabellen.<br />
<strong>Dienstprogramme</strong> zum Sammeln von Informationen<br />
Verwenden Sie die folgenden <strong>Dienstprogramme</strong>, um Informationen abzurufen:<br />
showserver Zeigt die Adaptive Server- und Backup Server-Installationen auf UNIX-<br />
Plattformen an, die derzeit auf dem lokalen Rechner ausgeführt werden.<br />
wdllvers Liefert Informationen über die <strong>Sybase</strong>-DLLs (Dynamic Link Libraries)<br />
in Windows NT, die im Speicher geladen sind.<br />
<strong>Dienstprogramme</strong> 157
ackupserver<br />
backupserver<br />
Beschreibung Die Backup Server-Programmdatei unter $SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt bcksrvr.exe unter<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax backupserver<br />
[-C Server-Verbindungen]<br />
[-S b_Servername]<br />
[-I Interfaces-Datei]<br />
[-e Fehlerlogdatei]<br />
[-M sybmultbuf_Binärdaten]<br />
[-N Netzwerk-Verbindungen]<br />
[-T Trace-Wert]<br />
[-L <strong>Sybase</strong>_Sprachenname]<br />
[-J <strong>Sybase</strong>_Zeichensatzname]<br />
[-c Band-Konfigurationsdatei]<br />
[-D n]<br />
[-A Pfadname]<br />
[-P aktive_Dienst-Threads]<br />
[-V Ebenen-Nummer]<br />
[-p n]<br />
[-m max_gemeinsam_genutzter_Speicher]<br />
Oder<br />
backupserver -v<br />
Parameter -C Server-Verbindungen<br />
legt die Anzahl der Serververbindungen zu Backup Server fest. Backup<br />
Server benötigt:<br />
Zwei Verbindungen für jede Sicherungssitzung<br />
Eine Verbindung für jede Ladesitzung<br />
Eine Verbindung für Datenträgerwechselmeldungen<br />
Nehmen Sie als Maximum das Dreifache der Anzahl von erwarteten<br />
gleichzeitigen Sicherungs- und Ladesitzungen. Der Standardwert ist 30.<br />
-S b_Servername<br />
gibt den Namen der Backup Server-Installation an, die gestartet werden soll.<br />
Der Standard ist SYB_BACKUP. Dieser Eintrag muss den Namen eines<br />
Backup Servers in der Interfaces-Datei angeben.<br />
158 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Backup Server hergestellt wird. Wenn -I<br />
weggelassen wird, sucht backupserver nach einer Datei namens interfaces<br />
in dem Verzeichnis, auf das von Ihrer <strong>Sybase</strong>-Umgebungsvariablen<br />
gezeigt wird.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung der backupserver-<br />
Software an und beendet dann.<br />
-e Fehlerlogdatei<br />
gibt den Namen und die Position der Fehlerlogdatei der Backup Server-<br />
Installation an, die verwendet wird, um interne Open Server-Fehler,<br />
sybmultbuf-Fehler und Fehler, die Backup Server anhalten, sowie Fehler bei<br />
nicht verbundenen Sitzungen zu melden. Alle anderen Fehler werden an die<br />
notify-Destination gesendet, die in den dump database-, dump transaction-,<br />
load database- und load transaction-Befehlen angegeben wird.<br />
-M sybmultbuf_Binärdaten<br />
gibt den vollständigen Pfadnamen der sybmultbuf-Programmdatei an.<br />
Verwenden Sie diesen Parameter nur, wenn Sie Backup Server von einem<br />
anderen als dem bin-Verzeichnis im <strong>Sybase</strong>-Installationsverzeichnis starten,<br />
oder wenn Sie eine Diagnose-Version von sybmultbuf verwenden.<br />
-N Netzwerk-Verbindungen<br />
gibt die Anzahl von Netzwerkverbindungen (DBPROCESS) an, die die<br />
Master Backup Server-Installation herstellen kann. Der Standardwert ist 25.<br />
-T Trace-Wert<br />
interpretiert trace_value als Bitmaske (Basis-2 Zahl). Die 1 Bits in<br />
trace_value entsprechen den Open Server Trace-Flags, die einzuschalten<br />
sind. Wenn Sie mehr als einen -T-Parameter in der Befehlszeile angeben,<br />
hebt der letzte -T-Wert die Werte von früheren -T-Parametern auf.<br />
trace_value muss eine positive Ganzzahl sein.<br />
-L <strong>Sybase</strong>_Sprachenname<br />
gibt die Standardsprache von Backup Server an. Wenn dieser Parameter<br />
nicht angegeben wird, benutzt Backup Server die Sprachumgebungskonfiguration,<br />
die durch die Umgebungsvariablen LC_ALL oder LANG<br />
festgelegt wurde. Wenn diese Variablen nicht eingestellt sind, sucht Backup<br />
Server nach dem „default“-Eintrag in locales.dat.<br />
Hinweis Der -L-Parameter hebt nicht den Wert auf, der in der LANG-<br />
Umgebungsvariable eingestellt ist.<br />
<strong>Dienstprogramme</strong> 159
ackupserver<br />
-J <strong>Sybase</strong>_Zeichensatzname<br />
gibt den Standard-Zeichensatz von Backup Server an.<br />
-c Band-Konfigurationsdatei<br />
gibt Namen und Position der Band-Konfigurationsdatei an, die nach<br />
Banddevice-Konfigurationsinformation durchsucht wird, bevor ein dump<br />
database oder ein dump transaction durchgeführt wird. Wenn Sie -c nicht<br />
angeben, lautet der Standard-Pfadname für die Band-Konfigurationsdatei<br />
$SYBASE/backup_tape.cfg.<br />
-D n<br />
gibt die Bitmaske (Zahl auf Basis 10) der Diagnose-Optionen an, die in<br />
Backup Server verwendet werden.<br />
-A Pfadname<br />
legt den Pfadnamen zum Verzeichnis der dynamisch ladbaren Bibliothek der<br />
Archiv-API fest.<br />
-P aktive_Dienst-Threads<br />
ermöglicht es Ihnen, die Anzahl der Sicherungseinheiten während mehrerer<br />
Sicherungen/Wiederherstellungsvorgängen zu erhöhen (mit einem<br />
Maximum von 12286 Sicherungseinheiten pro einzelnem Vorgang).<br />
-V Ebenen-Nummer<br />
beschränkt die Meldungen, die an das Backup Server-Fehlerlog ausgegeben<br />
werden. Die Ebenen-Nummer-Variable bestimmt das Ausmaß der Fehler-<br />
Ausführlichkeit (-V, Verbosität) bei Backup Server:<br />
-V3 – zeigt nur Abschlussmeldungen für einen normalendump- oder load-<br />
Befehl sowie die folgenden Meldungstypen an:<br />
Fehlermeldungen von Backup Server und sybmultbuf<br />
Andere sybmultbuf-Meldungen<br />
Datenträgerwechsel-Meldungen<br />
Open Server-Meldungen<br />
Trace-Druckmeldungen<br />
Informative Meldungen von den System & Tape Auto Config-Modulen<br />
160 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-V2 – zeigt Folgendes an:<br />
Alle -V3-Meldungen sowie<br />
Meldungen zur Dateierstellung und zum Mounten von Datenträgern<br />
-V1 – zeigt Folgendes an:<br />
Alle -V2-Meldungen sowie<br />
Phasenmeldungen<br />
-V0 (Standardwert) – zeigt alle Meldungen an, einschließlich den<br />
Sicherungsfortschritt betreffende.<br />
Diese Beschränkung betrifft nicht Meldungen, die an den Client oder die<br />
Konsole entsprechend dem NOTIFY=-Parameter in einem dump- oder load-<br />
Befehl gesendet werden.<br />
Diese Option hat auch keine Auswirkungen auf die Protokollierung<br />
folgender Meldungstypen:<br />
Open Server-Meldungen<br />
Trace-Druckmeldungen von bs_traceprint<br />
sybmultbuf-Meldungen<br />
-p n<br />
bestimmt die TDS-Paketgröße in Byte, die der lokale Backup Server<br />
vom entfernten Backup Server während Netzwerk-Sicherungen anfordert.<br />
Die tatsächlich verwendete Paketgröße wird durch den -p-Parameterwert<br />
des entfernten Backup Servers limitiert. Wenn Sie -p nicht festlegen,<br />
ist der Standardwert 2048 Byte. Die Paketgröße sollte eine Ganzzahl<br />
größer oder gleich 256 sein.<br />
-m max_gemeinsam_genutzter_Speicher<br />
bestimmt den Maximalwert des gemeinsam genutzten Speichers in<br />
Megabyte, den Backup Server für alle dump- oder load-Sitzungen<br />
verwenden kann.<br />
Syntax Starten Sie Backup Server mit dem startserver-Befehl und nicht,<br />
indem Sie direkt das backupserver-Programm ausführen.<br />
Um Standardwerte in UNIX zu ändern, bearbeiten Sie die<br />
RUN_servername-Datei im <strong>Sybase</strong>-Installationsverzeichnis.<br />
Weitere Hinweise finden Sie unter startserver in diesem Handbuch.<br />
Um Standardwerte in Windows zu ändern, benutzen Sie Server<br />
Config, um die Befehlszeilenparameter von Backup Server zu ändern.<br />
In der Konfigurationsanleitung finden Sie weitere Hinweise.<br />
<strong>Dienstprogramme</strong> 161
ackupserver<br />
Stellen Sie sicher, dass die mit dem Sicherungsbefehl angegebenen<br />
Devicetreiber-Optionen korrekt sind. Backupserver überprüft keine<br />
Devicetreiber-Optionen, die Sie bei einem Sicherungsbefehl verwenden.<br />
Wenn Sie beispielsweise eine Option angeben, die Backupserver zum<br />
Rückspulen eines Bandes vor der Verwendung veranlasst, wird das Band<br />
immer an den Anfang zurückgespult, anstatt das Band vom Punkt der<br />
Sicherung zu lesen.<br />
Wenn Sie einen Backup Server-Namen ohne den -S-Parameter angeben<br />
und nicht die Umgebungsvariable DSLISTEN eingestellt haben,<br />
verwendet backupserver den Backup Server-Standardnamen<br />
SYB_BACKUP in UNIX.<br />
In Windows NT – bcksrvr verwendet den Backup Server-Standardnamen<br />
Server-Name_BS. Der Wert der Umgebungsvariablen DSLISTEN setzt<br />
diesen Standardwert außer Kraft. Der -S-Parameter setzt den Standardwert<br />
und den Wert in DSLISTEN außer Kraft.<br />
Soweit wie möglich, sollte der Backup Server und Adaptive Server, die<br />
ihre Datenbanken und Transaktionslogs direkt über diesen Backup Server<br />
sichern und wiederherstellen, dieselbe Interfaces-Datei (sql.ini in UNIX)<br />
benutzen. Die Interfaces-Datei, die der Backup Server verwendet, muss<br />
Einträge zu folgenden Komponenten enthalten:<br />
Backup Server<br />
Jeden anderen Backup Server, mit dem dieses Backup Server-System<br />
kommuniziert<br />
Trace-Flags sorgen dafür, dass Backup Server Informationen über seine<br />
Tätigkeiten ausgibt, um die Suche nach Fehlern im Backup Server-System<br />
zu ermöglichen. Weitere Hinweise über Trace-Flags finden Sie in der<br />
Dokumentation Open Server Server-Library/C Reference Manual.<br />
Backup Server unterstützt nicht den Gebrauch der Open<br />
Server-definierten SRV_TR-Symbole für -T.<br />
Wenn Backup Server die Verzeichnisse locales und charsets, die in den -L-<br />
und -J-Parametern angegeben wurden, nicht finden kann, oder wenn diese<br />
Parameter eine ungültige Sprach- und Zeichensatzkombination enthalten,<br />
gibt Backup Server eine Fehlermeldung aus und verwendet die<br />
Standardsprache und den Standardzeichensatz.<br />
162 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Backup Server kann zwischen Servern, die unterschiedliche logische<br />
Seitengrößen verwenden, keine Lade- oder Sicherungsvorgänge<br />
durchführen. Sie können beispielsweise eine Datenbanksicherung mit<br />
einer logischen Seitengröße von 4 KByte auf einen anderen Server mit<br />
der logischen Seitengröße von 4 KByte laden. Backup Server unterstützt<br />
jedoch nicht die Sicherung einer Datenbank mit einer logischen<br />
Seitengröße von 4 KByte in das anschließende Laden in eine<br />
Datenbank mit einer logischen Seitengröße von 16 KByte.<br />
Berechtigungen Jeder mit Ausführungsberechtigung auf die Binärdaten, der Lese/Schreib-<br />
Zugriff auf alle Dateien hat.<br />
Siehe auch <strong>Dienstprogramme</strong> startserver<br />
<strong>Dienstprogramme</strong> 163
cp<br />
bcp<br />
Beschreibung Kopiert eine Datenbanktabelle aus einer oder in eine Betriebssystemdatei<br />
in einem vom Benutzer festgelegten Format. bcp befindet sich unter<br />
$SYBASE/$SYBASE_OCS/bin.<br />
Windows NT Das Dienstprogramm heißt bcp.exe und befindet sich unter<br />
%SYBASE%\%SYBASE_OCS%\bin.<br />
Syntax bcp [[Datenbankname.]Eigentümer.]Tabellenname [:Scheibennummer] {in |<br />
out} Datendatei<br />
[-m max-Fehler]<br />
[-f Formatdatei]<br />
[-e Fehlerdatei]<br />
[-F erste_Zeile]<br />
[-L letzte_Zeile]<br />
[-b Anweisungsfolgengröße]<br />
[-n]<br />
[-c]<br />
[-t Feld-Abschlusszeichen]<br />
[-r Zeilen-Abschlusszeichen]<br />
-U Benutzername<br />
[-P Kennwort]<br />
[-I Interfaces-Datei]<br />
[-S Server]<br />
[-a Anzeige-Zeichensatz]<br />
[-z Sprache]<br />
[-A Paketgröße]<br />
[-J Client-Zeichensatz]<br />
[-T text_oder_image_Größe]<br />
[-E]<br />
[-g ID_Anfangswert]<br />
[-N]<br />
[-X]<br />
[-K Keytab-Datei]<br />
[-R entfernter_Hauptserver]<br />
[-V [Sicherheitsoptionen]]<br />
[-Z Sicherheitsmechanismus]<br />
[-Q]<br />
[-Y]<br />
Oder<br />
bcp -v<br />
Parameter Datenbankname<br />
ist ein wahlweiser Parameter, wenn sich die kopierte Tabelle in Ihrer<br />
Standard-Datenbank oder in master befindet. Ansonsten müssen Sie<br />
den Datenbanknamen angeben.<br />
164 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Eigentümer<br />
ist fakultativ, wenn Ihnen oder dem Datenbankeigentümer die Tabelle<br />
gehört, die kopiert wird. Wenn Sie keinen Eigentümer angeben, sucht bcp<br />
zuerst nach einer Tabelle dieses Namens, die Ihnen gehört, und dann nach<br />
einer, die dem Datenbankeigentümer gehört. Wenn die Tabelle einem<br />
anderen Benutzer gehört, müssen Sie den Namen des Eigentümers angeben,<br />
oder der Befehl schlägt fehl.<br />
Ansichtsname<br />
ist der Name der Ansicht, aus der Sie kopieren.<br />
Tabellenname<br />
ist der Name der Datenbanktabelle, die Sie kopieren wollen. Der<br />
Tabellenname darf kein reserviertes Wort der Transact-SQL-Sprache sein.<br />
Die Partitionsnummer Partition_Nummer ist in der Tabellenname-Tabelle<br />
nicht vorhanden.<br />
Scheibennummer<br />
ist die Nummer der Scheibe der zu kopierenden Datenbanktabelle.<br />
Partition_ID<br />
ist der Bezeichner der Partition, in die Sie kopieren.<br />
in | out<br />
ist die Richtung der Kopie. in bedeutet eine Kopie von einer Datei in<br />
die Datenbanktabelle; out bedeutet eine Kopie in eine Datei aus der<br />
Datenbanktabelle oder Ansicht.<br />
Datendatei<br />
ist der vollständige Pfadname einer Betriebssystemdatei. Der Pfadname<br />
darf 1 - 255 Zeichen lang sein.<br />
-m max-Fehler<br />
ist die zulässige Höchstzahl an nicht schwerwiegenden Fehlern, bevor bcp<br />
den Kopiervorgang abbricht. bcp verwirft jede Zeile, die das Programm<br />
nicht einfügen kann (wegen eines Datenkonvertierungsfehlers oder wegen<br />
eines Versuchs, einen Nullwert in eine Spalte einzufügen, die keine<br />
Nullwerte zulässt), wobei jede verworfene Zeile als Fehler gezählt wird.<br />
Wenn Sie diesen Parameter nicht angeben, verwendet bcp den<br />
Standardwert 10.<br />
<strong>Dienstprogramme</strong> 165
cp<br />
-f Formatdatei<br />
ist der vollständige Pfadname einer Datei mit gespeicherten Antworten,<br />
die bei der letzten Ausführung von bcp auf derselben Tabelle geschrieben<br />
wurden. Nachdem Sie die Formatfragen von bcp beantwortet haben, werden<br />
Sie gefragt, ob Sie die Antworten in einer Formatdatei speichern wollen.<br />
Die Erstellung der Formatdatei ist fakultativ. Der Standard-Dateiname ist<br />
bcp.fmt. Das bcp-Programm kann eine Formatdatei beim Kopieren von<br />
Daten als Informationsquelle benutzen. Sie ersparen sich dadurch die<br />
wiederholte Eingabe von Formatinformationen. Verwenden Sie den -f-<br />
Parameter nur, wenn Sie bereits eine Formatdatei erstellt haben, die Sie<br />
jetzt für Ihre Kopiervorgänge verwenden wollen. Wenn Sie diesen<br />
Parameter nicht angeben, werden Sie von bcp interaktiv nach<br />
Formatinformationen abgefragt.<br />
-e Fehlerdatei<br />
ist der vollständige Pfadname einer Fehlerdatei, in der bcp Zeilen speichert,<br />
die nicht von der Datei in die Datenbank übertragen werden konnten.<br />
Fehlermeldungen von bcp werden auf Ihrem Bildschirm angezeigt. bcp<br />
erstellt nur eine Fehlerdatei, wenn Sie diesen Parameter benutzen.<br />
-F erste_Zeile<br />
ist die Nummer der ersten Zeile, die von einer Eingabedatei kopiert werden<br />
soll (Standard ist die erste Zeile).<br />
Verwenden Sie die -F-Option nicht, um umfangreiche und komplizierte<br />
Kopiervorgänge durchzuführen, da dadurch bcp im Allgemeinen langsamer<br />
läuft. Statt dessen verwenden Sie -F bei ein-prozessigen Ad-hoc-<br />
Kopiervorgängen.<br />
-L letzte_Zeile<br />
ist die Nummer der letzten Zeile, die von einer Eingabedatei kopiert werden<br />
soll (Standard ist die letzte Zeile).<br />
166 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-b Anweisungsfolgengröße<br />
ist die Anzahl der Zeilen pro Anweisungsfolge der kopierten Daten<br />
(Standard ist, alle Zeilen in eine Anweisungsfolge zu kopieren). Die<br />
Anweisungsfolgefunktion gilt nur, wenn Sie mit dem Massenexport/-import<br />
Daten in eine Tabelle kopieren. Sie hat keine Wirkung, wenn Sie Daten<br />
aus einer Tabelle herauskopieren. Die kleinste Zahl, die bcp für<br />
Anweisungsfolgengröße annimmt, ist 1.<br />
Hinweis Das Einstellen der Anweisungsfolgengröße auf 1 bewirkt, dass<br />
der Adaptive Server einer Datenseite jeweils eine importierte Zeile zuweist.<br />
Diese Option gilt nur bei schnellem bcp und ist nur für das Auffinden von<br />
fehlerhaften Datenzeilen geeignet. Verwenden Sie -b1 mit Vorsicht. Dadurch<br />
wird jeder einzelnen Zeile eine neue Seite zugewiesen, was eine schlechte<br />
Platzausnutzung bedeutet.<br />
-n<br />
führt den Kopiervorgang durch, indem native (Betriebssystem-) Formate<br />
verwendet werden. Das Angeben des -n-Parameters bedeutet, dass bcp<br />
keine Eingabeaufforderung für die einzelnen Felder angibt. Dateien im<br />
Betriebssystem-Datenformat sind für den Benutzer nicht lesbar.<br />
Achtung! Verwenden Sie bcp im ursprünglichem Format nicht bei der Daten-<br />
Wiederherstellung oder um einen Notfall zu beheben. Verwenden Sie bcp<br />
im ursprünglichem Format nicht, um Daten zwischen unterschiedlichen<br />
Hardware-Plattformen, unterschiedlichen Betriebssystemen oder<br />
verschiedenen Versionen von Adaptive Server zu transportieren. Verwenden<br />
Sie keine Feldabschlusszeichen (-t) oder Zeilenabschlusszeichen (-r) mit bcp<br />
im ursprünglichen Format. Die Ergebnisse sind nicht vorhersehbar und die<br />
Daten könnten beschädigt werden. Das Verwenden von bcp im nativen<br />
Format kann unbrauchbare Dateien erstellen, die nicht in den Adaptive<br />
Server zurückgeladen werden können, und es ist möglicherweise unmöglich,<br />
diese Daten wiederherzustellen. Wenn Sie nicht in der Lage sind, bcp in<br />
Zeichenformat zurückzuverwandeln (weil zum Beispiel eine Tabelle gekürzt<br />
oder gelöscht wurde, eine Hardware-Beschädigung auftrat, eine Datenbank<br />
gelöscht wurde usw.), sind die Daten nicht wiederherstellbar.<br />
<strong>Dienstprogramme</strong> 167
cp<br />
-c<br />
führt den Kopiervorgang mit dem char-Datentyp als Standard-Speichertyp<br />
für alle Spalten in der Datendatei durch. Verwenden Sie dieses Format,<br />
wenn Daten auf verschiedenen Plattformen benutzt werden. Dieser<br />
Parameter fordert Sie nicht zur Eingabe in jedes Feld auf; er verwendet<br />
char als Standardspeichertyp, keinen Präfix, \t (Tabulator) als Standard-<br />
Feldabschlusszeichen und \n (Neue Zeile) als Standard-<br />
Zeilenabschlusszeichen.<br />
-t Feld-Abschlusszeichen<br />
legt das Standard-Feldabschlusszeichen fest.<br />
-r Zeilen-Abschlusszeichen<br />
legt das Standard-Zeilenabschlusszeichen fest.<br />
Achtung! Verwenden Sie nicht die -t- oder -r-Parameter mit bcp im<br />
ursprünglichen Format. Die Ergebnisse sind nicht vorhersehbar und die<br />
Daten könnten beschädigt werden.<br />
Wenn Sie Abschlusszeichen von der Befehlszeile mit dem -t- oder -r-<br />
Parameter, angeben, müssen Sie Escape-Zeichen bei Zeichen verwenden,<br />
die eine besondere Bedeutung für das UNIX-Betriebssystem (oder die<br />
Befehlseingabeaufforderung-Shell unter Windows NT) haben. Weitere<br />
Hinweise finden Sie bei den bcp-Beispielen. Entweder stellen Sie einen<br />
Rückstrich voran oder schließen das Zeichen in Anführungszeichen ein.<br />
Das ist nicht nötig, wenn bcp zur Eingabe auffordert (interaktiver Modus).<br />
-U Benutzername<br />
gibt einen Adaptive Server-Login-Namen an.<br />
-P Kennwort<br />
gibt ein Adaptive Server-Kennwort an. Wenn Sie -PKennwort, nicht<br />
angeben, fordert bcp zur Eingabe eines Kennworts auf. Sie können die<br />
-P-Option weglassen, wenn Ihr Kennwort NULL ist.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Adaptive Server hergestellt wird. Wenn<br />
Sie -I, nicht angeben, sucht bcp nach einer Interfaces-Datei (sql.ini in<br />
Windows NT), die sich unter dem Verzeichnis befindet, das durch die<br />
SYBASE-Umgebungsvariable (ini-Verzeichnis in Windows NT)<br />
definiert ist.<br />
168 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-S Server<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll. Wenn Sie -S ohne Argument<br />
angeben, verwendet bcp die Installation, die durch die DSQUERY-<br />
Umgebungsvariable festgelegt wird.<br />
-a Anzeige-Zeichensatz<br />
ermöglicht es Ihnen bcp von einem Terminal auszuführen, auf dem sich der<br />
Zeichensatz von dem des Rechners unterscheidet, auf dem bcp läuft. -a in<br />
Verbindung mit -J gibt die Zeichensatzkonvertierungs-Datei (.xlt-Datei) an,<br />
die für die Konvertierung erforderlich ist. Verwenden Sie -a ohne -J nur<br />
dann, wenn der Client-Zeichensatz mit dem Standardzeichensatz<br />
identisch ist.<br />
Die folgende Fehlermeldung wird angezeigt, wenn die Zeichenübersetzungsdateien,<br />
die mit dem -a-Parameter genannt werden, fehlen, oder wenn<br />
Sie die Namen falsch eingegeben haben:<br />
Fehler beim Versuch, die Größe eines<br />
Konvertierungstabellenpaars zu bestimmen.:'stat'-<br />
Dienstprogramm fehlgeschlagen.<br />
-z Sprache<br />
ist der offizielle Name einer Alternativsprache, die der Server zur Anzeige<br />
von bcp-Eingabeaufforderungen und Meldungen verwendet. Ohne die -z-<br />
Option verwendet bcp die Standardsprache des Servers.<br />
Sie können einem Adaptive Server-System während der Installation oder<br />
später entweder mit dem langinstall-Dienstprogramm (bzw. langinst in<br />
Windows NT) oder der gespeicherten Prozedur sp_addlanguage andere<br />
Sprachen hinzufügen.<br />
Die folgende Fehlermeldung wird angezeigt, wenn eine inkorrekte oder<br />
nicht erkannte Sprache mit dem -z-Parameter angeführt wird:<br />
Nicht erkanntes Sprachlokalisierungsobjekt. Standardwert 'iso_1' wird<br />
verwendet.Kopiervorgang beginnt...<br />
=> Warnung.<br />
-v<br />
zeigt die Versionsnummer und Copyright-Meldung für bcp an und kehrt<br />
zum Betriebssystem zurück.<br />
<strong>Dienstprogramme</strong> 169
cp<br />
-A Paketgröße<br />
gibt die Netzwerk-Paketgröße an, die in dieser bcp-Sitzung verwendet<br />
werden soll. Beispiel:<br />
bcp pubs2..titles out table_out -A 2048<br />
Mit dieser Eingabe wird die Paketgröße für diese bcp-Sitzung auf 2048 Byte<br />
gesetzt. Paketgröße muss zwischen den Werten der Konfigurationsparameter<br />
default network packet size und maximum network packet size liegen und<br />
ein Vielfaches von 512 sein.<br />
Verwenden Sie Netzwerk-Paketgrößen, die größer als der Standard sind,<br />
um die Performance von umfangreichen Massenexporten/-importen zu<br />
verbessern.<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. bcp verwendet<br />
einen Filter, um die Eingabe zwischen Clientzeichensatz und dem Adaptive<br />
Server-Zeichensatz zu konvertieren.<br />
-J Client-Zeichensatz verlangt, dass Adaptive Server in und von Client-<br />
Zeichensatz, dem auf dem Client verwendeten Zeichensatz, konvertiert.<br />
-J ohne Argument stellt die Zeichensatzkonvertierung auf NULL. Es findet<br />
keine Konvertierung statt. Verwenden Sie diese Einstellung, wenn Client<br />
und Server denselben Zeichensatz verwenden.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein, der nicht unbedingt der Zeichensatz ist, den der Client<br />
verwendet. Tabelle 8-2 listet die Plattform-Standardwerte auf.<br />
Tabelle 8-2: Standard-Zeichensätze für verschiedene Plattformen<br />
Plattform Standard-Zeichensatz<br />
Sun Solaris, Digital UNIX, NCR, RS/6000 iso_1<br />
HP-UX roman8<br />
OS/2, Novell NetWare 386 cp850<br />
Macintosh mac<br />
Die folgende Fehlermeldung wird angezeigt, wenn eine inkorrekter oder<br />
nicht erkannter Zeichensatz mit dem -J-Parameter angeführt wird:<br />
Nicht erkanntes Sprachlokalisierungsobjekt. Standardwert 'iso_1' wird<br />
verwendet.Kopiervorgang beginnt...<br />
=> Warnung.<br />
Weitere Hinweise über Zeichensätze und zugeordnete Optionen finden Sie<br />
in der Dokumentation Systemadministration für Adaptive Server Enterprise.<br />
170 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-T text_oder_image_Größe<br />
ermöglicht es Ihnen, die maximale Länge in Byte von text- oder image-<br />
Daten anzugeben, die Adaptive Server versendet. Standard ist 32 KByte.<br />
Wenn ein text- oder ein image-Feld größer als der Wert von -T oder der<br />
Standardwert ist, sendet bcp den Rest nicht.<br />
-E<br />
gibt explizit den Wert der Identity-Spalte einer Tabelle an.<br />
Wenn Sie mit dem Massenexport/-import Daten in eine Tabelle mit einer<br />
Identity-Spalte kopieren, ordnet bcp standardmäßig jeder Zeile einen<br />
temporären Identity-Spaltenwert von 0 zu. Das gilt nur, wenn Sie Daten<br />
in eine Tabelle kopieren. bcp liest die Werte für die ID-Spalte aus der<br />
Datendatei, sendet ihn aber nicht an den Server. Während bcp jede Zeile in<br />
die Tabelle einfügt, ordnet ihr der Server einen eindeutigen, sequenziellen<br />
Identity-Spaltenwert zu, beginnend mit dem Wert 1. Wenn Sie die -E-Option<br />
angeben und Daten in eine Tabelle kopieren, liest bcp den Wert aus der<br />
Datendatei und sendet ihn an de Server, der den Wert in die Tabelle einfügt.<br />
Wenn dabei der höchstmögliche Identity-Zeilenwert überschritten wird, gibt<br />
Adaptive Server einen Fehler aus.<br />
Der -E-Parameter hat keine Wirkung, wenn Sie mit dem Massenexport/import<br />
Daten aus einer Tabelle kopieren. Adaptive Server kopiert die<br />
ID-Spalte in die Datendatei, außer Sie verwenden den -N-Parameter.<br />
Sie können die -E- und -g-Optionen nicht zusammen verwenden.<br />
-g ID_Anfangswert<br />
gibt den Wert der Identity-Spalte an, der als Ausgangspunkt des<br />
Datenkopiervorgangs verwendet werden soll.<br />
Sie können die -g- und -E-Optionen nicht zusammen verwenden.<br />
-N<br />
überspringt die Identity-Spalte. Verwenden Sie diese Option, wenn Sie<br />
Daten in eine Tabelle kopieren und Ihre Host-Datendatei keinen Platzhalter<br />
für die Identity-Spaltenwerte enthält, oder wenn Sie Daten aus der Tabelle<br />
herauskopieren und die Identity-Spalteninformation in der Host-Datei nicht<br />
enthalten sein soll.<br />
Sie können beim Importieren von Daten nicht sowohl den -N- als auch den<br />
-E-Parameter verwenden.<br />
<strong>Dienstprogramme</strong> 171
cp<br />
-X<br />
gibt an, dass das Login in dieser Verbindung zum Server mit<br />
Kennwortverschlüsselung durch den Client hergestellt werden soll. bcp<br />
(der Client) gibt dem Server bekannt, dass die Kennwortverschlüsselung<br />
gewünscht wird. Der Server sendet einen Verschlüsselungsschlüssel zurück,<br />
den bcp zur Verschlüsselung Ihres Kennworts verwendet, und der Server<br />
verwendet den Schlüssel, um die Zugangserlaubnis Ihres Kennworts zu<br />
überprüfen, wenn es ankommt.<br />
Wenn bcp ausfällt, erstellt das System eine Core-Datei, die Ihr Kennwort<br />
enthält. Wenn Sie die Verschlüsselungsoption nicht verwendet haben,<br />
wird Ihr Kennwort als normaler Text in der Datei angezeigt. Wenn Sie<br />
die Verschlüsselungsoption verwenden, ist Ihr Kennwort nicht lesbar.<br />
-K Keytab-Datei<br />
gibt den Pfad zur Keytab-Datei an, die zur Authentifizierung in DCE<br />
verwendet wird.<br />
-R entfernter_Hauptserver<br />
legt den Hauptnamen für den Server fest, wie vom Sicherheitsmechanismus<br />
definiert. Standardmäßig entspricht der Hauptname dem Netzwerknamen<br />
des Servers (der mit dem -S-Parameter oder der DSQUERY-Umgebungsvariablen<br />
angegeben wird). Verwenden Sie den -R-Parameter, wenn der<br />
Hauptname des Servers nicht mit seinem Netzwerknamen übereinstimmt.<br />
-V Sicherheitsoptionen<br />
legt eine netzbasierte Benutzer-Authentifizierung fest. Bei dieser Option<br />
muss sich der Benutzer beim Sicherheitssystem des Netzwerks anmelden,<br />
bevor er das Dienstprogramm ausführt. In diesem Fall muss der Benutzer<br />
den Netzwerk-Benutzernamen mit der-U-Option angeben; ein mit der -P-<br />
Option angegebenes Kennwort wird ignoriert.<br />
-V – Auf diesen Parameter kann eine Sicherheitsoptionen-Zeichenfolge<br />
folgen, die Schlüsselzeichen für die Aktivierung zusätzliche<br />
Sicherheitsdienste enthalten. Es gibt folgende Schlüsselzeichen:<br />
c – Datenvertraulichkeitsdienst aktivieren<br />
c – Datenintegritätsdienst aktivieren<br />
m – Gegenseitige Authentifizierung für Verbindungserstellung<br />
aktivieren<br />
c – Abzeichnungsdienst für Datenursprung aktivieren<br />
r – Datenwiedergabeermittlung aktivieren<br />
q – Feststellung von Fehlern in der Sequenzreihenfolge aktivieren<br />
172 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-Z Sicherheitsmechanismus<br />
legt den Namen eines Sicherheitsmechanismus fest, der bei der Verbindung<br />
verwendet werden soll.<br />
Namen für Sicherheitsmechanismen sind in der Konfigurationsdatei<br />
$SYBASE/install/libtcl.cfg festgelegt. Wenn kein Name für den<br />
Sicherheitsmechanismus angegeben ist, wird der Standardmechanismus<br />
verwendet. Weitere Hinweise zu Namen für den Sicherheitsmechanismus<br />
entnehmen Sie der Beschreibung der libtcl.cfg-Datei in der Dokumentation<br />
Open Client/Server Configuration Guide.<br />
-Q<br />
liefert Rückwärtskompatibilität mit der bcp-Version 10.0.4 bei<br />
Kopiervorgängen mit Spalten, die NULL-Werte aufnehmen können.<br />
-Y<br />
gibt an, dass die Zeichensatzkonvertierung auf dem Server deaktiviert ist<br />
und statt dessen von bcp auf der Client-Seite durchgeführt wird, wenn bcp<br />
IN verwendet wird.<br />
Hinweis Die gesamte Zeichensatzkonvertierung erfolgt auf dem Server bei<br />
Verwendung von bcp OUT.<br />
Beispiele Beispiel 1 Es werden Daten aus der publishers-Tabelle im Zeichenformat<br />
(unter Verwendung von char bei allen Feldern) kopiert, wobei der -c-Parameter<br />
verwendet wird. Der Parameter -t Feld-Abschlusszeichen beendet jedes Feld<br />
mit einem Komma, und der Parameter -r Zeilen-Abschlusszeichen beendet<br />
jede Zeile mit einer Zeilenschaltung. bcp fordert nur zur Eingabe eines<br />
Kennworts auf:<br />
Auf UNIX-Plattformen – Der erste Rückstrich vor dem letzten „r“ ist ein<br />
Escape-Zeichen für den zweiten, wodurch nur der Rückstrich gedruckt wird.<br />
bcp pubs2..publishers out pub_out -c -t , -r \\r<br />
Unter Windows NT:<br />
bcp pubs2..publishers out pub_out -c -t , -r \r<br />
<strong>Dienstprogramme</strong> 173
cp<br />
Beispiel 2 Es werden Daten aus der Tabelle publishers in eine Datei namens<br />
pub_out kopiert, die später wieder in die Adaptive Server-Installation eingelesen<br />
werden soll. Mit der Eingabetaste bestätigen Sie die Standardwerte, die von<br />
der Eingabeaufforderung angezeigt werden. Dieselben Eingabeaufforderungen<br />
werden angezeigt, wenn Daten in die Tabelle publishers kopiert werden:<br />
bcp pubs2..publishers out pub_out<br />
Kennwort:<br />
Dateispeichertyp für das Feld pub_id [char] eingeben:<br />
Präfixlänge des Feldes pub_id [0] eingeben:<br />
Länge des Feldes pub_id [4] eingeben:<br />
Feldabschlusszeichen eingeben [keines]:<br />
Dateispeichertyp für das Feld pub_name [char] eingeben:<br />
Präfixlänge des Feldes pub_name [1] eingeben:<br />
Länge des Feldes pub_name [40] eingeben:<br />
Feldabschlusszeichen eingeben [keines]:<br />
Dateispeichertyp für das Feld city [char] eingeben:<br />
Präfixlänge des Feldes city [1] eingeben:<br />
Länge des Feldes city [20] eingeben:<br />
Feldabschlusszeichen eingeben [keines]:<br />
Dateispeichertyp für das Feld state [char] eingeben:<br />
Präfixlänge des Feldes state [1] eingeben:<br />
Länge des Feldes state [2] eingeben:<br />
Feldabschlusszeichen eingeben [keines]:<br />
Unter UNIX werden Sie Folgendes gefragt:<br />
Wollen Sie diese Formatinformationen in eine<br />
Datei speichern? [Y-n] y<br />
Host-Dateiname [bcp.fmt]: pub_form<br />
Kopiervorgang beginnt...<br />
3 Zeilen kopiert.<br />
Uhrzeit (ms.): Summe = 1 Durchschnitt = 0 (3000.00<br />
Zeilen pro Sek.)<br />
Beispiel 3 Hier werden Daten zurück in die Adaptive Server-Installation<br />
kopiert, indem die gespeicherte Formatdatei pub_form verwendet wird:<br />
bcp pubs2..publishers in pub_out -f pub_form<br />
174 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiel 4 Geben Sie den einzelnen Buchstaben genauso ein, wie er unten<br />
dargestellt ist.<br />
Um Beispiele von Datentypen anzuzeigen, geben Sie "?"<br />
an der Eingabeaufforderung ein:<br />
Dateispeichertyp des Feldes 'pub_id' eingeben<br />
['char']:?<br />
Unzulässiger Spaltentyp. Gültige Typen sind:<br />
: gleicher Typ wie Adaptive Server-Spalte.<br />
c : char<br />
T : text<br />
i : int<br />
s : smallint<br />
t : tinyint<br />
f : float<br />
m : money<br />
b : bit<br />
d : datetime<br />
x : binary<br />
I : image<br />
D : smalldatetime<br />
r : real<br />
M : smallmoney<br />
n : numeric<br />
e : decimal<br />
Beispiel 5 Hier wird eine Datendatei, die mit einem Zeichensatz<br />
erstellt wurde, wie er auf einem VT200-Terminal verwendet wird, in die<br />
pubs2..publishers-Tabelle kopiert. Die -z-Option zeigt bcp-Meldungen auf<br />
Französisch an:<br />
bcp pubs2..publishers in vt200_data -J iso_1 -z french<br />
Beispiel 6 Nur UNIX-Plattformen – Hier wird angegeben, dass Sie einen<br />
Macintosh verwenden und bcp auf einer Workstation mit dem Zeichensatz<br />
roman8 ausführen:<br />
bcp pubs2..publishers in -a mac -J roman8<br />
Beispiel 7 Legt fest, dass Adaptive Server 40 KByte text- oder image-Daten<br />
mit einer Paketgröße von 4096 Byte sendet:<br />
bcp pubs2..publishers out -T 40960 -A 4096<br />
Syntax Verwenden Sie diese Syntax bei bcp_r, wenn Sie Thread-Treiber<br />
verwenden.<br />
Verwenden Sie diese Syntax bei bcp_dce, wenn Sie Thread-Treiber auf<br />
der IBM-Plattform verwenden.<br />
<strong>Dienstprogramme</strong> 175
cp<br />
Die aktuelle Version von bcp ignoriert den Parameter -y sybase_directory.<br />
Sie können nicht Named Pipes verwenden, um Dateien zu kopieren.<br />
Das Fehlermeldungsformat unterscheidet sich von den früheren Versionen<br />
von bcp. Wenn Sie Skripten haben, die Routinen aufgrund der Werte dieser<br />
Meldungen ausführen, werden Sie sie möglicherweise umschreiben<br />
müssen. Zum Beispiel:<br />
Die Anzeigemeldung, die die Anzahl von<br />
transferierten Zeilen angibt, wurde geändert.<br />
Diese Version von bcp meldet während einer Sitzung<br />
regelmäßig die laufenden Summen von übertragenen<br />
Zeilen. Diese Meldung ersetzt die Meldung "1000 rows<br />
transferred", angezeigt vom früheren bcp.<br />
Berechtigungen Um bcp verwenden zu können, müssen Sie ein Adaptive Server-Konto und die<br />
entsprechenden Berechtigungen für die Datenbanktabellen oder Ansichten und<br />
Betriebssystemdateien haben, die Sie übertragen werden.<br />
Um Daten in eine Tabelle kopieren zu können, müssen Sie die insert-<br />
Berechtigung für die Tabelle haben.<br />
Um eine Tabelle in eine Betriebssystemdatei kopieren zu können,<br />
müssen Sie die select-Berechtigung für folgende Tabellen haben:<br />
die zu kopierende Tabelle<br />
sysobjects<br />
syscolumns<br />
sysindexes<br />
Benutzte Tabellen sysaudits_01 – sysaudits_08<br />
Siehe auch Im Kapitel 3, „Daten mit bcp in und aus Adaptive Server übertragen“,<br />
finden Sie eine ausführliche Erläuterung des Programms bcp.<br />
In der Dokumentation Performance and Tuning Guide finden Sie weitere<br />
Informationen darüber, wie sich eine Änderung bestimmter Parameter auf bcp<br />
bei umfangreichen Anweisungsfolgen auswirken kann.<br />
Befehle insert<br />
Systemprozeduren sp_audit, sp_dboption, sp_displayaudit<br />
176 Adaptive Server Enterprise
uildmaster<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Adaptive Server Version 12.5 verwendet nicht die buildmaster-Binärdaten,<br />
um das Master-Device einzurichten. Statt dessen hat <strong>Sybase</strong> die buildmaster-<br />
Funktionalität in dataserver integriert. Weitere Hinweise finden Sie im<br />
Kapitel 1, „Server mit dem dataserver-Dienstprogramm einrichten“,<br />
und Syntaxinformationen finden Sie unter dataserver auf Seite 188.<br />
Syntax Keine.<br />
certauth<br />
Beschreibung Konvertiert eine Server-Zertifikatsanforderung in ein Zertifikat mit<br />
CA-Berechtigung (Certificate Authority). Standort ist<br />
$SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt certauth.exe und befindet sich in<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax certauth<br />
[-r]<br />
[-C caCert-Datei]<br />
[-Q Anforderung-Dateiname]<br />
[-K caKey-Dateiname]<br />
[-O SignedCert-Dateiname]<br />
[-P ca-Kennwort]<br />
[-T Gültigkeitsdauer]<br />
Parameter -r<br />
Oder<br />
certauth -v<br />
wenn angegeben, wird ein selbst unterschriebenes Stamm-Zertifikat für die<br />
Test-Umgebung erstellt.<br />
-C caCert-Datei<br />
gibt den Namen der CA-Zertifikatsanforderungsdatei an, wenn -r angegeben<br />
ist; oder es bestimmt den Namen des CA-Stamm-Zertifikats.<br />
-Q Anforderung-Dateiname<br />
gibt den Namen der Zertifikatsanforderungsdatei an.<br />
-K caKey-Dateiname<br />
gibt den Namen des privaten CA-Schlüssels an.<br />
<strong>Dienstprogramme</strong> 177
certauth<br />
-O SignedCert-Dateiname<br />
gibt den Namen für die Ausgabe an, wenn eine unterschriebene<br />
Zertifikatsdatei erstellt wird. Wenn -r angegeben ist, ist SignedCert-<br />
Dateiname das selbst unterschriebene Stammzertifikat. Wenn die -r-Option<br />
nicht verwendet wird, ist SignedCert-Dateiname das Zertifikat, das von der<br />
caCert-Datei unterschrieben wird.<br />
-P ca-Kennwort<br />
gibt das CA-Kennwort an, mit dem der private Schlüssel entschlüsselt wird.<br />
-T Gültigkeitsdauer<br />
legt den gültigen Zeitbereich für ein unterschriebenes Zertifikat fest.<br />
Die Gültigkeitsdauer wird in Tageseinheiten gezählt.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für das certauth-Tool an<br />
und beendet das Programm dann.<br />
Beispiele Beispiel 1 Dieses Beispiel konvertiert die CA-Zertifikatsanforderung<br />
(ca_req.txt) in ein Zertifikat, wobei der private Schlüssel (ca_pkey.txt)<br />
verwendet wird. Der private Schlüssel wird geschützt, indem das Kennwort<br />
angegeben wird. Dieses Beispiel setzt die Gültigkeitsdauer auf 365 Tage,<br />
unterschreibt das Zertifikat selbst und gibt es als ein Stamm-Zertifikat<br />
(trusted.txt) aus:<br />
certauth -r -C ca_req.txt -Q ca_req.txt<br />
-K ca_pkey.txt -P password -T 365 -O trusted.txt<br />
Das Dienstprogramm gibt folgende Meldung zurück:<br />
-- <strong>Sybase</strong> Test Certificate Authority --<br />
Certificate Validity:<br />
startDate = Tue Sep 5 10:34:43 2000<br />
endDate = Wed Sep 5 10:34:43 2001<br />
CA sign certificate SUCCEED (0)<br />
Hinweis Sie brauchen ein vertrauenswürdiges Stamm-Zertifikat für den CA-<br />
Test nur einmal zu erstellen. Nachdem Sie das vertrauenswürdige Stamm-<br />
Zertifikat erstellt haben, können Sie damit mehrere Server-Zertifikate in Ihrer<br />
Test-Umgebung unterschreiben.<br />
178 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiel 2 Dieses Beispiel konvertiert eine Server-Zertifikatsanforderung<br />
(srv5_req.txt) in ein Zertifikat und legt eine Gültigkeitsdauer von 180 Tagen<br />
fest. Es unterschreibt das Zertifikat mit einem CA-Zertifikatsschlüssel<br />
(trusted.txt und einem privaten Schlüssel ca_pkey.txt), verwendet<br />
Kennwortschutz und gibt das unterschriebene Zertifikat als sybase_srv5.crt<br />
zurück:<br />
certauth -C trusted.txt -Q srv5_req.txt<br />
-K ca_pkey.txt -P password -T 180 -O sybase_srv5.crt<br />
Hinweis Wenn Sie keine Gültigkeitsdauer angeben, beträgt der Standardwert<br />
365 Tage.<br />
Das Dienstprogramm gibt folgende Meldung zurück:<br />
-- <strong>Sybase</strong> Test Certificate Authority --<br />
Certificate Validity:<br />
startDate = Tue Sep 5 10:38:32 2000<br />
endDate = Sun Mar 4 09:38:32 2001<br />
CA sign certificate SUCCEED (0)<br />
Untenstehend finden Sie ein Muster-Zertifikat. Im folgenden Syntax-Abschnitt<br />
finden Sie zusätzliche Schritte, um ein Server-Zertifikat zu erstellen, das der<br />
Server verwenden kann.<br />
-----BEGIN CERTIFICATE-----<br />
MIICSTCCAgUCAVAwCwYHKoZIzjgEAwUAMG8xCzAJBgNVBAYTAlVTMRMwEQYDVQQI<br />
EwpDYWxpZm9ybmlhMRMwEQYDVQQHEwpFbWVyeXZpbGxlMQ8wDQYDVQQKFAZTeWh<br />
c2UxDDAKBgNVBAsUA0RTVDEXMBUGA1UEAxQOc3liYXNlX3Rlc3RfY2EwHhcNMDAw<br />
ODE4MTkxMzM0WhcNMDEwODE4MTkxMzM0WjBvMQswCQYDVQQGEwJVUzETMBEGAUE<br />
CBMKQ2FsaWZvcm5pYTETMBEGA1UEBxMKRW1lcnl2aWxsZTEPMA0GA1UEChQGU3li<br />
YXNlMQwwCgYDVQQLFANEU1QxFzAVBgNVBAMUDnN5YmFzZV90ZXN0X2NhMIHwMIo<br />
BgcqhkjOOAQBMIGcAkEA+6xG7XCxiklxbP96nHBnQrTLTCjHlcy8QhIekwv9OlqG<br />
EMG9AjJLxj6VCkPOD75vqVMEkaPPjoIbXEJEe/aYXQIVAPyvY1+B9phC2e2YFcf7<br />
cReCcSNxAkBHt7rnOJZ1Dnd8iLQGt0wd1w4lo/Xx2OeZS4CJW0KVKkGId1hNGz8r<br />
GrQTspWcwTh2rNGbXxlNXhAV5g4OCgrYA0MAAkA70uNEl90Kmhdt3RISiceCMgOf<br />
1J8dgtWF15mcHeS8OmF9s/vqPAR5NkaVk7LJK6kk7QvXUBY+8LMOugpJf/TYMAsG<br />
ByqGSM44BAMFAAMxADAuAhUAhM2Icn1pSavQtXFzXJUCoOmNLpkCFQDtE8RUGuo8<br />
ZdxnQtPu9uJDmoBiUQ==<br />
-----END CERTIFICATE-----<br />
<strong>Dienstprogramme</strong> 179
certpk12<br />
Syntax Um eine Server-Zertifikatsdatei zu erstellen, die Adaptive Server<br />
akzeptiert, hängen Sie den privaten Schlüssel des Zertifikat-Anforderers<br />
am Ende der unterschriebenen Zertifikatsdatei an. Im obenstehenden<br />
Beispiel 2 würden Sie mit Ausschneiden und Einfügen srv5_pkey.txt an<br />
das Ende der unterschriebenen Zertifikatsdatei sybase_srv5.crt anfügen.<br />
Um eine vertrauenswürdige Stammdatei zu erstellen, die der Server beim<br />
Starten laden kann, benennen Sie trusted.txt um in sybase_srv5.txt, wobei<br />
sybase_srv5.txt der allgemeine Name des Servers ist.<br />
Dann kopieren Sie die sybase_srv5.txt-Datei in das Adaptive Server-<br />
Installationsverzeichnis, zum Beispiel $SYBASE/$SYBASE_ASE/<br />
certificates.<br />
Die Datei, die für einen auf SSL basierende Sitzung erforderlich ist, wird<br />
verwendet, um die SSL-aktivierte Adaptive Server-Installation zu starten.<br />
Nachdem das CA-Stamm-Zertifikat erstellt ist, können Sie damit mehrere<br />
Server-Zertifikate unterschreiben.<br />
Siehe auch <strong>Dienstprogramme</strong> certpk12, certreq<br />
certpk12<br />
Beschreibung Exportiert oder importiert eine PKCS #12-Datei in eine Zertifikatsdatei und<br />
einen privaten Schlüssel. Standort ist $SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt certpk12.exe und befindet sich in<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax certpk12<br />
{-O Pkcs12-Datei | -I Pkcs12-Datei}<br />
[-C Zert-Datei]<br />
[-K Schlüssel-Datei]<br />
[-P Schlüssel-Kennwort]<br />
[-E Pkcs12-Kennwort]<br />
Oder<br />
certpk12 -v<br />
Parameter -O Pkcs12-Datei<br />
gibt den Namen einer PKCS #12-Datei an, die exportiert werden soll. Die<br />
Datei kann ein Zertifikat samt privatem Schlüssel, ein einzelnes Zertifikat<br />
oder einen einzelnen privaten Schlüssel enthalten. Sie müssen entweder -O<br />
oder -I festlegen.<br />
180 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-I Pkcs12-Datei<br />
gibt den Namen einer PKCS #12-Datei an, die importiert werden soll. Die<br />
Datei kann ein Zertifikat samt privatem Schlüssel, ein einzelnes Zertifikat<br />
oder einen einzelnen privaten Schlüssel enthalten. Sie müssen entweder -I<br />
oder -O festlegen.<br />
-C Zert-Datei<br />
gibt den Namen einer Zertifikatsdatei an, die in eine PKCS #12-Datei<br />
exportiert werden soll, wenn -O eingestellt ist; oder den Namen einer<br />
Zertifikatsdatei, die in eine PKCS #12-Datei importiert werden soll, wenn -I<br />
eingestellt ist.<br />
-K Schlüssel-Datei<br />
gibt den Namen eines privaten Schlüssels an, der in eine PKCS #12-Datei<br />
exportiert werden soll, wenn -O eingestellt ist; oder den Namen eines<br />
privaten Schlüssels, der in eine PKCS #12-Datei importiert werden soll,<br />
wenn -I eingestellt ist.<br />
-P Schlüssel-Kennwort<br />
legt ein Kennwort fest, mit dem der private Schlüssel geschützt wird, der<br />
durch -K angegeben wurde. Wenn -O gesetzt ist, exportiert das Kennwort<br />
den privaten Schlüssel in eine PKCS #12-Datei; wenn -I gewählt wurde,<br />
gibt das Kennwort den privaten Schlüssel in eine Textdatei zurück,<br />
nachdem er aus einer PKCS #12-Datei importiert wurde.<br />
-E Pkcs12-Kennwort<br />
legt das Kennwort fest, mit dem die PKCS #12-Datei geschützt wird. Wenn<br />
-O eingestellt ist, wird mit dem Kennwort die zu exportierende PKCS #12-<br />
Datei verschlüsselt; wenn -I gewählt wurde, wird damit die zu importierende<br />
PKCS #12-Datei entschlüsselt. Das Kennwort wird auch „Transport-<br />
Kennwort“ genannt.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für das certpk12-Tool an<br />
und beendet das Programm.<br />
Beispiele Beispiel 1 Exportiert die Zertifikatsdatei caRSA.crt und die private<br />
Schlüsseldatei caRSApkey.txt in eine PKCS#12-Datei (caRSA.p12). Kennwort<br />
ist das Kennwort, mit dem caRSApkey.txt entschlüsselt wird. pk12-Kennwort<br />
ist das Kennwort, mit dem die endgültige caRSA.p12 verschlüsselt wird.<br />
certpk12 -O caRSA.p12 -C caRSA.crt -K caRSApkey.txt<br />
-P Kennwort -E pk12-Kennwort<br />
-- <strong>Sybase</strong> PKCS#12 Conversion Utility certpk12 Thu Nov 9 16:55:51 2000--<br />
<strong>Dienstprogramme</strong> 181
certpk12<br />
Beispiel 2 Importiert die PKCS #12-Datei caRSA.p12, die ein Zertifikat<br />
und einen privaten Schlüssel enthält. Das eingebettete Zertifikat wird in die<br />
Textdatei (caRSA_new.crt) und der eingebettete private Schlüssel in die<br />
Textdatei (caRSApkey_new.txt) ausgegeben:<br />
certpk12 -I caRSA.p12 -C caRSA_new.crt -K caRSApkey_new.txt<br />
-P neues_Kennwort -E pk12-Kennwort<br />
-- <strong>Sybase</strong> PKCS#12 Conversion Utility certpk12 Thu Nov 9 16:55:51 2000--<br />
Neues_Kennwort wird verwendet, um caRSApkey_new.txt zu schützen, und<br />
pk12-Kennwort ist erforderlich, um die caRSA.p12-Datei zu entschlüsseln.<br />
Hinweis Nachdem Sie Beispiele 1 und 2 ausgeführt haben, sind caRSA.crt<br />
und caRSA_new.crt identisch. caRSApkey.txt und caRSApkey_new.txt sind<br />
verschieden, weil sie nach dem Zufallsprinzip verschlüsselt werden.<br />
Beispiel 3 Exportiert die Zertifikatsdatei (caRSA.crt) in eine PKCS#12-Datei<br />
(caRSAcert.p12). pkcs12-Kennwort wird verwendet, um caRSAcert.p12 zu<br />
verschlüsseln.<br />
certpk12 -O caRSAcert.p12 -C caRSA.crt -E pk12-Kennwort<br />
-- <strong>Sybase</strong> PKCS#12 Conversion Utility certpk12 Thu Nov 9 16:55:51 2000--<br />
Beispiel 4 Importiert eine PKCS#12-Datei (caRSAcert.p12), die ein Zertifikat<br />
enthält. Das eingebettete Zertifikat wird in eine Textdatei (caRSAcert.txt)<br />
ausgegeben.<br />
certpk12 -I caRSAcert.p12 -C caRSAcert.txt -E pk12-Kennwort<br />
-- <strong>Sybase</strong> PKCS#12 Conversion Utility certpk12 Thu Nov 9 16:55:51 2000pk12-Kennwort<br />
ist erforderlich, um die caRSAcert.p12-Datei zu entschlüsseln.<br />
Hinweis Nachdem Sie die Beispiele 3 und 4 ausgeführt haben, sind caRSA.crt<br />
und caRSAcert.txt identisch.<br />
Syntax certpk12 unterstützt nur dreifach DES-verschlüsselte PKCS #12-Dateien.<br />
Hängen Sie den privaten Schlüssel des Zertifikat-Anforderers an das Ende<br />
der unterschriebenen Zertifikatsdatei an.<br />
182 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Benennen Sie die Datei Servername.crt, wobei Servername der<br />
Name des Servers ist. Speichern Sie sie im Zertifikatsverzeichnis unter<br />
$SYBASE/$SYBASE_ASE (%SYBASE%\%SYBASE_ASE% in Windows).<br />
Diese Datei wird benötigt, um die SSL-aktivierte Adaptive Server-<br />
Installation zu starten.<br />
Siehe auch <strong>Dienstprogramme</strong> certauth, certreq<br />
certreq<br />
Beschreibung Erstellt eine Serverzertifikatsanforderung und einen entsprechenden privaten<br />
Schlüssel. Dieses Dienstprogramm kann im interaktiven Modus verwendet<br />
werden, oder Sie geben alle fakultativen Parameter in der Befehlszeile ein.<br />
Standort ist $SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt certreq.exe und befindet sich in<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax certreq<br />
[-F Eingabedatei]<br />
[-R Anforderung-Dateiname]<br />
[-K PK-Dateiname]<br />
[-P Kennwort]<br />
Oder<br />
certreq -v<br />
Parameter -F Eingabedatei<br />
gibt den Namen der Datei an, die Attributinformationen zum Kompilieren<br />
einer Zertifikatsanforderung enthält. Wenn Sie keinen Eingabedatei-Namen<br />
angeben, müssen die erforderlichen Informationen vom Benutzer interaktiv<br />
eingegeben werden.<br />
Die Eingabedatei benötigt jeweils einen Eintrag für die folgenden Angaben:<br />
req_certtype={Server,Client}<br />
req_keytype={RSA,DSA}<br />
req_keylength={for RSA: 512-2048;<br />
for DSA: 512,768,1024}<br />
req_country={string}<br />
req_state={string}<br />
req_locality={string}<br />
req_organization={string}<br />
req_orgunit={string}<br />
req_commonname={string}<br />
<strong>Dienstprogramme</strong> 183
certreq<br />
Hinweis Der allgemeine Name (commonname) muss derselbe wie der<br />
Servername sein.<br />
Im Beispiel 2 finden Sie eine Musterdatei namens Eingabedatei.<br />
-R Anforderung-Dateiname<br />
gibt den Namen für die Zertifikatsanforderungsdatei an.<br />
-K PK-Dateiname<br />
gibt den Namen für die private Schlüsseldatei an.<br />
-P Kennwort<br />
legt das Kennwort fest, mit dem der private Schlüssel geschützt wird.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung an und beendet dann.<br />
Beispiele Beispiel 1 Dieses Beispiel verwendet nicht den -F Eingabedatei-Parameter und<br />
verwendet daher den interaktiven Modus. Um eine Server-<br />
Zertifikatsanforderung (server_req.txt) und ihren privaten Schlüssel<br />
(server_pkey.txt) zu erstellen, geben Sie ein:<br />
certreq<br />
Choose certificate request type:<br />
S – Server certificate request<br />
C – Client certificate request (not supported)<br />
Q – Quit<br />
Enter your request [Q]: s<br />
Choose key type:<br />
R – RSA key pair<br />
D – DSA/DHE key pair<br />
Q – Quit<br />
Enter your request [Q]: r<br />
Enter key length (512, 768, 1024 for DSA; 512-2048 for<br />
RSA) : 512<br />
Country: US<br />
State: california<br />
Locality: emeryville<br />
Organization: sybase<br />
Organizational Unit: dst<br />
Common Name: server<br />
184 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Das Dienstprogramm gibt folgende Meldung zurück:<br />
Generating key pair (please wait) . . .<br />
Nachdem das Schlüssel-Paar generiert wurde, werden Sie vom certreq-<br />
Dienstprogramm zur Eingabe folgender Informationen aufgefordert.<br />
Enter password for private key: Kennwort<br />
Enter file path to save request: server_req.txt<br />
Enter file path to save private key: server_pkey.txt<br />
Beispiel 2 In dieser Muster-Textdatei wird das Format tag=value bei der nichtinteraktiven<br />
Eingabe für eine Zertifikatsanforderung verwendet. Sie können<br />
die -F-Option im nicht-interaktiven Modus verwenden. Wenn Sie die -F-Option<br />
verwenden, stellen Sie sicher, dass Sie gültige Werte eingeben und das oben<br />
beschriebene Format beachten. Anderenfalls wird das Zertifikat nicht korrekt<br />
kompiliert.<br />
certreq -F Eingabedatei<br />
req_certtype=server<br />
req_keytype=RSA<br />
req_keylength=512<br />
req_country=us<br />
req_state=california<br />
req_locality=emeryville<br />
req_organization=sybase<br />
req_orgunit=dst<br />
req_commonname=server<br />
Nachdem Sie diese Datei erstellt und gespeichert haben, geben Sie Folgendes<br />
auf der Befehlszeile ein, wobei Pfad_und_Datei der Standort der Textdatei ist:<br />
certreq -F Pfad_und_Datei -R server_req.txt -K server_pkey.txt -P Kennwort<br />
Diese Datei erstellt eine Server-Zertifikatsanforderung, server_req.txt, und<br />
ihren private Schlüssel server_pkey.txt, der durch Kennwort geschützt ist.<br />
Sie können die Server-Zertifikatsdatei mit jedem Standard-ASCII-Texteditor<br />
bearbeiten.<br />
Syntax Die Eingabedatei verwendet das Format tag=value. tag berücksichtigt<br />
Groß-/Kleinschreibung und muss der oben stehenden Beschreibung<br />
entsprechen.<br />
Das „=“ ist erforderlich. Ein gültiger value-Wert muss mit einem<br />
Buchstaben oder einer Ziffer beginnen und aus einem Wort bestehen;<br />
überdies dürfen keine Leerstellen in value vorhanden sein.<br />
<strong>Dienstprogramme</strong> 185
charset<br />
value ist erforderlich für req_certtype, req_keytype, req_keylength<br />
und req_commonname.<br />
Rigsum , = und value sind Leerstellen und Tabulatoren erlaubt.<br />
Leere Zeilen sind ebenfalls erlaubt.<br />
Jede Kommentarzeile muss mit # beginnen.<br />
Die Zertifikatsanforderungsdatei ist im PKCS #10-Format und wird<br />
vom certauth-Tool als Eingabe anerkannt, um die Anforderung in ein<br />
unterschriebenes CA-Zertifikat zu konvertieren.<br />
Siehe auch <strong>Dienstprogramme</strong> certauth, certpk12<br />
charset<br />
Beschreibung Nur UNIX-Plattformen Lädt die Zeichensätze und Sortierreihenfolgen-<br />
Dateien in Adaptive Server. Standort ist $SYBASE/ASE-12_5/bin.<br />
Syntax charset<br />
[-P Kennwort]<br />
[-S Server]<br />
[-ISchnittstelle]<br />
Sortierreihenfolge<br />
[ Zeichensatz ]<br />
Oder<br />
charset -v<br />
Parameter -P Kennwort<br />
gibt Ihr Kennwort an. Wenn Sie -P nicht verwenden, fordert charset zur<br />
Eingabe Ihres Kennworts auf.<br />
-S Server<br />
legt den Namen des Servers fest, auf dem der Zeichensatz und die<br />
Sortierreihenfolge geändert werden sollen.<br />
-I Schnittstelle<br />
legt die Netzwerk-Schnittstelle fest, die vom Server benutzt werden soll.<br />
Sortierreihenfolge<br />
legt den Namen der Sortierreihenfolgen-Datei fest, die Adaptive Server<br />
verwenden wird.<br />
186 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Zeichensatz<br />
legt den Zeichensatz fest, den Adaptive Server verwenden wird.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für charset an.<br />
Syntax Bevor Sie charset verwenden, müssen Sie die SYBASE-Umgebungsvariable<br />
so einstellen, dass sie auf das aktuelle <strong>Sybase</strong>-Versionsverzeichnis zeigt.<br />
Berechtigungen Sie müssen Systemadministrator sein, um charset auszuführen.<br />
Siehe auch Befehle set<br />
cobpre<br />
<strong>Dienstprogramme</strong> langinstall<br />
Beschreibung Precompiler für COBOL unter $SYBASE/$SYBASE_OCS/bin<br />
(%SYBASE%\%SYBASE_OCS%\bin in Windows NT). Eine ausführliche<br />
Beschreibung von cobpre finden Sie in Anhang A der Dokumentation Open<br />
Client/Server Programmer’s Supplement.<br />
Syntax Siehe oben.<br />
cpre<br />
Beschreibung Precompiler für C unter $SYBASE/$SYBASE_OCS/bin<br />
(%SYBASE%\%SYBASE_OCS%\bin in Windows NT). Eine ausführliche<br />
Beschreibung von cpre finden Sie in Anhang A der Dokumentation Open<br />
Client/Server Programmer’s Supplement.<br />
Syntax Siehe oben.<br />
<strong>Dienstprogramme</strong> 187
dataserver<br />
dataserver<br />
Beschreibung Nur UNIX-Plattformen Die Adaptive Server-Programmdatei unter<br />
$SYBASE/ASE-12_5/bin.<br />
Syntax dataserver [-f] [-g] [-G] [-h] [-H] [-m] [-q] [-v] [-X]<br />
[-a Pfad_zu_CAP-Direktivendatei]<br />
-b Master-Device-Größe [k | K | m | M | g | G]<br />
[-c Konfig-Datei_für_Server]<br />
[-d Devicename]<br />
[-e Pfad_zu_Fehler-Log]<br />
[-i Interfaces-Datei-Verzeichnis]<br />
[-K Keytab-Datei]<br />
[-L Konfig-Dateiname_für_Connectivity]<br />
[-M gemeinsam_genutzer_Speicher-Repository-Verzeichnis]<br />
[-p SA-Loginname]<br />
[-r Spiegel-Plattenspeichername]<br />
[-s Servername]<br />
[-T Trace-Flag]<br />
[-u SA/SSO-Name]<br />
[-w Master- | Modelldatenbank]<br />
[-y [Kennwort] ]<br />
[-z Seitengröße [ k | K ]]<br />
Parameter -f<br />
Oder<br />
dataserver -v<br />
erzwingt die Initialisierung eines Devices oder einer Datenbank. -f ist nur<br />
gültig, wenn der Parameter mit -b und/oder -w verwendet wird. Der Server<br />
startet nicht neu, wenn Sie -f ohne -b oder -w verwenden. -f wirkt sich auf<br />
den Server unterschiedlich aus, abhängig davon, ob -w vorhanden ist.<br />
Weitere Hinweise finden Sie unter „Mögliche Probleme bei gemeinsamer<br />
Verwendung der -f- und -w-Option“ auf Seite 193 und „Abhängigkeiten<br />
und Bedingungen der -b- und -w-Optionen“ auf Seite 194.<br />
-g<br />
schaltet das Protokollieren von Ereignissen aus.<br />
-G logserv-Name<br />
legt den Namen des Ereignislog-Servers fest.<br />
188 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-h<br />
druckt die Hilfemeldung und beendet dann.<br />
-H<br />
startet den HA-Server (High Availability, Hohe Verfügbarkeit), wenn Sie die<br />
HA-Funktion in Ihrer Adaptive Server-Installation installiert haben.<br />
-m<br />
startet Adaptive Server im Einzelbenutzer-Modus.<br />
-q<br />
behandelt Datenbanken im Ruhezustand wie „in Wiederherstellung“.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für dataserver an und<br />
beendet dann.<br />
-X<br />
startet diesen Server als sybmon, und nicht als dataserver.<br />
-a Pfad_zu_CAP-Direktivendatei<br />
gibt den Pfad zur CAP-Direktivendatei an.<br />
-b Master-Device-Größe [k | K | m | M | g | G]<br />
gibt die Größe des Master-Devices oder der Datenbank an, die Sie einrichten<br />
wollen. Der Server errechnet die Größen, also können Sie „K“, „M“ und<br />
„G“ anstelle der genauen Byte-Anzahl verwenden.<br />
-c Konfig-Datei_für_Server<br />
gibt den vollständigen Pfadnamen einer Adaptive Server-Konfigurationsdatei<br />
an. Verwenden Sie diesen Parameter, um Adaptive Server mit den<br />
Konfigurationswerten in der angegebenen Konfigurationsdatei zu starten.<br />
Wenn Sie eine Konfigurationsdatei mit dem dataserver -c-Parameter<br />
angeben, stellen Sie sicher, dass alle Parameter in dieser Konfigurationsdatei<br />
kompatibel sind, bevor Sie den Server neu starten. Wenn einige Konfigurationsparameter<br />
nicht kompatibel sind, startet der Server möglicherweise<br />
nicht neu. Um das zu vermeiden, geben Sie keine Konfigurationsdatei an,<br />
wenn Sie das Master-Device einrichten. Die Einrichtphase verwendet alle<br />
Standardeinstellungen, wenn Sie keine Konfigurationsdatei angeben.<br />
Weitere Hinweise finden Sie in der Dokumentation Systemadministration<br />
für Adaptive Server Enterprise.<br />
<strong>Dienstprogramme</strong> 189
dataserver<br />
-d Devicename<br />
ist der vollständige Pfadname des Devices für die master-Datenbank.<br />
Das Master-Datenbankdevice muss für den Benutzer beschreibbar sein,<br />
der Adaptive Server startet. Wenn Sie den -d-Parameter nicht verwenden,<br />
lautet der Standardname des master-Datenbankdevices d_master.<br />
-e Fehlerlogdatei<br />
ist der vollständige Pfadname der Fehlerlogdatei für Fehlermeldungen der<br />
Adaptive Server-Systemebene.<br />
-i Interfaces-Datei-Verzeichnis<br />
gibt den Namen und den Standort der Interfaces-Datei an, die durchsucht<br />
werden soll, wenn die Verbindung mit der Adaptive Server-Installation<br />
eingerichtet wird. Wenn -I weggelassen wird, sucht dataserver nach einer<br />
Datei namens interfaces in dem Verzeichnis, auf das von Ihrer <strong>Sybase</strong>-<br />
Umgebungsvariablen gezeigt wird.<br />
-K Keytab-Datei<br />
gibt den Pfad zur Keytab-Datei an, die zur Authentifizierung in DCE<br />
verwendet wird.<br />
-L Konfig-Dateiname_für_Connectivity<br />
gibt den Namen der Konfigurationsdatei für Connectivity an.<br />
-M gemeinsam_genutzer_Speicher-Verzeichnis<br />
platziert Shared-Memory-Dateien in das angegebene Verzeichnis und nicht<br />
an den Standardstandort, $SYBASE. Wenn gemeinsam_genutzter_Speicher-<br />
Verzeichnis mit „\“ startet, wird angenommen, dass der Verzeichnisname<br />
absolut ist. Ansonsten wird der Verzeichnisname relativ zu $SYBASE<br />
interpretiert.<br />
-p SSO-Loginname<br />
gibt den Login-Namen eines Sicherheitsadministrators an, wenn Adaptive<br />
Server gestartet wird, damit für das neue Konto ein neues Kennwort<br />
eingerichtet werden kann. Adaptive Server erzeugt ein Zufallskennwort,<br />
zeigt es an, verschlüsselt es und speichert es in master..syslogins als das<br />
neue Kennwort für das Konto.<br />
-r Master-Spiegel<br />
startet den Spiegel für das Master-Device. Verwenden Sie diesen Parameter,<br />
um Adaptive Server zu starten, falls das Master-Device beschädigt wurde.<br />
-s Servername<br />
gibt den Namen der Adaptive Server-Installation an, die gestartet werden<br />
soll. Wenn -s weggelassen wird, wird ein Server mit Namen SYBASE<br />
gestartet.<br />
190 Adaptive Server Enterprise
-T Trace-Flag<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-u SA/SSO-Name<br />
gibt den Namen des Systemadministrators oder Sicherheitsadministrators<br />
an, den Sie freigeben wollen.<br />
-w Master- | Modelldatenbank<br />
legt fest, ob Sie eine Master- oder eine Modelldatenbank schreiben wollen.<br />
-y [Kennwort]<br />
mit diesem Parameter können Sie ein Kennwort für den verschlüsselten<br />
privaten Schlüssel zuordnen, damit der Server den Benutzer zur Eingabe<br />
eines Kennworts auffordert. Dieses Kennwort sollte jenem entsprechen,<br />
mit dem Sie den privaten Schlüssel verschlüsselt haben, als er erstellt<br />
wurde. Sie können diesen Parameter nicht verwenden, wenn Sie den<br />
Server im Hintergrund ausführen.<br />
Hinweis Auch wenn Sie ein Kennwort mit -y, setzen können, empfiehlt <strong>Sybase</strong><br />
ausdrücklich, dies aus Sicherheitsgründen zu unterlassen.<br />
Ein privater Schlüssel ist im digitalen Zertifikat Ihres Servers enthalten.<br />
Standardmäßig finden Sie die Zertifikatsdatei unter:<br />
/usr/local/sybase/certificates/servername.crt<br />
Der Standort der Zertifikatsdatei ändert sich, wenn Sie den sp_ssladmin<br />
addcert-Befehl aufrufen.<br />
-z Seitengröße [ k | K ]<br />
legt die Seitengröße für den Server fest. Sie müssen -b und -w verwenden,<br />
um diese Option zu nutzen, und eine gerade Zweierpotenz zwischen<br />
2 KByte und 16 KByte angeben, da sonst der Server nicht neu startet.<br />
Beispiele Beispiel 1 Erstellt eine neue Installation mit einem 100-MByte-Master-<br />
Device und einer 4-KByte-Seite:<br />
dataserver -d my_master_device -z 4k -b 100.02M<br />
Die Leerstellen zwischen den Optionen und den nachfolgenden Argumenten<br />
sind fakultativ und werden akzeptiert. In diesem Beispiel werden „100.02M“<br />
für ein 100-MByte-Master-Device festgelegt, da der Server einen 16-KByte-<br />
Overhead für seinen Konfigurationsbereich benötigt.<br />
Beispiel 2 Schreibt eine fehlerhafte Modelldatenbank neu:<br />
dataserver -d my_master_device -w model<br />
<strong>Dienstprogramme</strong> 191
dataserver<br />
Beispiel 3 Schreibt eine fehlerhafte Master-Datenbank neu, wobei die<br />
Devicegröße angegeben wird:<br />
dataserver -d my_master_device -w master -z 4k<br />
Beispiel 4 Schreibt eine fehlerhafte Master-Datenbank neu, indem Deviceund<br />
Seitengrößen festgelegt werden und der Server gezwungen wird, diese<br />
Werte anstelle von solchen, die er möglicherweise im Konfigurationsblock<br />
findet, zu akzeptieren:<br />
dataserver -d my_master_device -w master -z 4k -b<br />
100.02M -f<br />
Beispiel 5 Schreibt eine fehlerhafte Master-Datenbank, wobei eine<br />
Seitengröße angegeben wird, die nicht der entspricht, die der Server in<br />
seinem Konfigurationsblock findet. Das erzeugt einen Fehler:<br />
dataserver -d my_master_device -w master -z 8k<br />
00:00000:00000:2001/01/19 12:01:26.94 server Die<br />
konfigurierte Seitengröße des Servers entspricht<br />
nicht der, die auf der Befehlszeile angegeben ist.<br />
Um die konfigurierte Größe zu verwenden, lassen Sie die<br />
Größenangabe in der Befehlszeile weg. Um den Wert in der<br />
Befehlszeile zu verwenden, geben Sie 'force' (-f) ein.<br />
Beispiel 6 Schreibt eine fehlerhafte Master-Datenbank neu, wobei eine<br />
inkorrekte Seitengröße angegeben ist, sogar bei einem normalen Neustart.<br />
Das erzeugt einen Fehler:<br />
dataserver -d my_master_device -z4000<br />
dataserver: Die 'z'-Option darf nicht ohne 'b' oder 'w'<br />
verwendet werden. dataserver: Server wird die 'z'-<br />
Option ignorieren. dataserver: die 'z'-Option enthält<br />
eine ungültige Seitengröße. dataserver: Die Seitengröße<br />
muss eine gerade Zweierpotenz zwischen 2048 und 16384<br />
Byte sein.<br />
Syntax dataserver ermöglicht es Ihnen, Devices und Datenbanken zu erstellen,<br />
die bis zu 32 GByte groß sind, abhängig von den Einschränkungen Ihres<br />
Betriebssystems. Weitere Hinweise zu Größenbeschränkungen finden Sie<br />
in der Installationsanleitung für Ihre Plattform.<br />
Starten Sie Adaptive Server mit dem startserver-Befehl und nicht, indem<br />
Sie direkt das dataserver-Programm ausführen. Um Standardwerte<br />
zu ändern, bearbeiten Sie die RUN_servername-Datei im <strong>Sybase</strong>-<br />
Installationsverzeichnis. Weitere Hinweise finden Sie unter startserver<br />
in diesem Handbuch.<br />
192 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Da Adaptive Server-Kennwörter verschlüsselt sind, können<br />
Sie vergessene Kennwörter nicht wiederherstellen. Wenn alle<br />
Sicherheitsadministratoren ihre Kennwörter verlieren, erzeugt der -p-<br />
Parameter ein neues Kennwort für ein Sicherheitsadministrator-Konto.<br />
Starten Sie Adaptive Server mit -p, melden Sie sich sofort bei Adaptive<br />
Server mit einem neuen Zufalls-Kennwort an und führen Sie sp_password<br />
aus, um Ihr Kennwort durch ein sichereres zu ersetzen.<br />
Nachdem Sie das Adaptive Server-Installationsprogramm fertig<br />
ausgeführt haben, stellen Sie die Dateiberechtigungen in der ausführbaren<br />
dataserver-Datei ein, um den Zugriff auf ihre Ausführung zu beschränken.<br />
Wenn Sie einen Adaptive Server-Namen ohne den -s-Parameter angeben<br />
und nicht die Umgebungsvariable DSLISTEN eingestellt haben,<br />
verwendet dataserver den Adaptive Server-Standardnamen SYBASE.<br />
Der Wert der Umgebungsvariablen DSLISTEN setzt diesen Standardwert<br />
außer Kraft. Der -s-Parameter setzt den Standardwert und die DSLISTEN-<br />
Umgebungsvariable außer Kraft.<br />
Automatische Login-Sperren können dazu führen, dass auf einem<br />
Rechner alle Logins gesperrt sind, die dazu berechtigt sind, Logins<br />
freizugeben (Systemadministratoren und Sicherheitsadministratoren).<br />
Wenn das passiert, verwenden Sie das dataserver-Dienstprogramm mit<br />
dem -u-Parameter, um das angegebene Login auf Systemadministratoroder<br />
Sicherheitsadministrator-Berechtigungen zu überprüfen, geben Sie<br />
das Konto frei und setzen Sie den Zählerwert für aktuelle fehlgeschlagene<br />
Logins auf Null.<br />
Mögliche Probleme bei gemeinsamer Verwendung der -f- und -w-Option<br />
Bei der gemeinsamen Verwendung der Optionen -f und -w ist äußerste Vorsicht<br />
geboten. Wenn Sie beim Neuschreiben der Master-Datenbank die -w-Option<br />
verwenden, verlangt der Server, dass die Konfigurationsblock-Seitengröße<br />
und die Devicegröße korrekt sind. Wenn Sie diese nicht auf der Befehlszeile<br />
angeben, müssen sie übereinstimmen. Der Server stellt das Master-Device<br />
wieder her und speichert Master- sowie alle anderen darin vorhandenen<br />
Datenbanken wieder an ihre richtigen Standorte.<br />
Verwenden Sie die -f-Option zur erzwungenen Initialisierung, setzen Ihre<br />
Seitengröße und Master-Devicegröße die Werte im Konfigurationsblock<br />
außer Kraft. Darüber hinaus weist -f den gesamten restlichen unbekannten<br />
Speicherplatz, also nicht benutzte oder fehlerhafte Zuordnungsblöcke,<br />
der Masterdatenbank zu.<br />
<strong>Dienstprogramme</strong> 193
dataserver<br />
Abhängigkeiten und Bedingungen der -b- und -w-Optionen<br />
Die Auswirkung von -b ist abhängig davon, ob -w vorhanden ist:<br />
-b ohne -w erstellt ein Master-Device, benannt durch -d (der Standardwert<br />
ist d_master) und mit einer in -z angegebenen Seitengröße<br />
(der Standardwert ist 2048):<br />
Wenn das benannte Device bereits als eine OS-Datei vorhanden ist,<br />
schlägt der Versuch fehl und Sie erhalten eine ähnliche Meldung wie<br />
die Folgende:<br />
Datei bereits vorhanden. Entfernen Sie die<br />
vorhandene Datei, bevor Sie versuchen, eine<br />
neue Datei mit der b-Serveroption zu erstellen.<br />
Erstellen des Master-Devices nicht möglich.<br />
Wenn das benannte Device eine vorhandene unformatierte Partition<br />
benennt, schlägt der Versuch fehl, außer Sie beziehen die -f-Option<br />
ein. Das reinitialisiert die unformatierte Partition als ein Server-<br />
Master-Device.<br />
-b mit -w master fordert dataserver dazu auf, die in -z angegebene Größe<br />
zu verwenden, wenn die Master-Datenbank neu erstellt wird. Diese<br />
Einstellung bezieht sich nicht auf das Erstellen eines neuen Devices.<br />
-w erfordert möglicherweise zusätzliche Optionen:<br />
Wenn Sie -w model verwenden, werden die -z- und -b-Optionen akzeptiert,<br />
aber ignoriert.<br />
Wenn Sie -w master bei neuen Installationen verwenden, werden -z und -b<br />
nicht benötigt, weil die Device-Größeninformationen im config_block<br />
gespeichert sind.<br />
Wenn Sie -w master zum Upgrade alter Installationen verwenden,<br />
beachten Sie Folgendes:<br />
Der Server benötigt -b und/oder -z, wenn der config_block keinen<br />
gültigen Eintrag für die zugeordneten Größen enthält. Der Befehl<br />
schlägt fehl, wenn er keine gültigen Daten für die Seitengröße oder<br />
die Devicegröße erhält.<br />
Sie können -b und/oder -z angeben, wenn config_block gültige<br />
Einträge für die Größen, die sie darstellen, enthält. Wenn die Größen<br />
allerdings nicht mit denen im config_block übereinstimmen, müssen<br />
Sie -f hinzufügen, um Ihre neuen Größenwerte durchzusetzen.<br />
194 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Berechtigungen Jeder mit Ausführungsberechtigung auf die Binärdaten, der Lese/Schreib-<br />
Zugriff auf alle Dateien hat.<br />
Siehe auch Befehle disk mirror, disk remirror, disk unmirror<br />
dataxtr<br />
Systemprozeduren sp_ssladmin addcert<br />
<strong>Dienstprogramme</strong> startserver<br />
Beschreibung Das Daten-Migrationstool mit grafischer Benutzeroberfläche (GUI), zum<br />
Verschieben von Daten und Datenbankschemata aus Adaptive Server-<br />
Datenbanken vor Version 12.5 in 12.5-Datenbanken. Der Standort ist<br />
$SYBASE/ASE-12_5/bin (%SYBASE%\ASE-12_5\bin in Windows NT).<br />
Hinweise zur Verwendung des dataxtr-Dienstprogramms finden Sie ihn den<br />
Versionshinweisen für Adaptive Server Enterprise 12.5 für Ihre Plattform.<br />
Syntax Keine.<br />
ddlgen<br />
Beschreibung Ein auf Java basierendes Tool, das Definitionen für Objekte der Server- und<br />
Datenbankebene in Adaptive Server generiert. ddlgen unterstützt Adaptive<br />
Server Version 12.0 und später.<br />
Die Befehlszeilen-Version von ddlgen befindet sich unter $SYBASE/sybcent41<br />
(%SYBASE%\sybcent41 in Windows NT).<br />
Syntax ddlgen<br />
-ULogin<br />
-PKennwort<br />
-SHostname : Portnummer<br />
[-TObjekttyp]<br />
[-NObjektname]<br />
[-DDatenbankname]<br />
[-Xerweiterter_Objekttyp]<br />
[-OAusgabedatei]<br />
[-EFehlerdatei]<br />
[-LFortschritts-Logdatei]<br />
[-J Client-Zeichensatz]<br />
-F[ % | SGM | GRP | USR | R | D | UDD | U | V | P | XP | I | RI | KC | TR]<br />
<strong>Dienstprogramme</strong> 195
ddlgen<br />
Oder<br />
ddlgen -v<br />
Parameter -U Login<br />
gibt einen Loginnamen an und berücksichtigt Groß-/Kleinschreibung.<br />
-P Kennwort<br />
gibt Ihr Kennwort an.<br />
-S Hostname : Portnummer<br />
gibt den Hostnamen oder IP-Adresse von Adaptive Server an, wie auch<br />
seine Portnummer. Trennen Sie Hostname und Portnummer mit einem<br />
Doppelpunkt ohne Leerstellen.<br />
Hinweis Sie müssen die -S-Option verwenden da ddlgen nicht mit einem<br />
Standard-Server verbindet.<br />
-T Objekttyp<br />
legt den Typ des Objekts fest, das Sie erstellen. Wenn Sie nicht -T<br />
verwenden, erstellt ddlgen eine DDL für die Standarddatenbank von Login.<br />
Tabelle 8-3 listet Objekttypen für -T auf.<br />
Tabelle 8-3: Gültige Objekttypen für die ddlgen -T-Option<br />
Objekttyp Beschreibung<br />
C Cache<br />
D Standardwert<br />
DB Datenbank<br />
DBD Datenbankdevice<br />
DPD Sicherungsdevice<br />
EC Ausführungsklasse<br />
EG Engine-Gruppe<br />
GRP Gruppe<br />
I Index<br />
KC Schlüssel-Integritätsregeln<br />
L Login<br />
P Gespeicherte Prozedur<br />
R Regel<br />
196 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Objekttyp Beschreibung<br />
RI Referenzielle Integrität<br />
RO Rolle<br />
RS Fremdserver<br />
SGM Segment<br />
TR Trigger<br />
U Tabelle<br />
UDD Benutzerdefinierter Datentyp<br />
USR Benutzer<br />
V Ansicht<br />
XP Erweiterte gespeicherte Prozedur<br />
-N Objektname<br />
bestimmt den vollständig qualifizierten Namen des Objekts, das Sie<br />
erstellen, wie zum Beispiel -Ndb-Name.Eigentümername.<br />
Tabellenname.Objektname. Die -N-Option:<br />
ist erforderlich, wenn Sie einen anderen Objekttyp als DB (Datenbank)<br />
im -T-Parameter angeben.<br />
akzeptiert Wildcards, wenn Sie mit % verwendet werden.<br />
erstellt eine DDL für alle Einträge eines bestimmten Objekttyps auf<br />
Ihrem Server.<br />
erzwingt eine strikte Reihenfolge für die Analyse der Namen im Format<br />
-Ndb-Name.Eigentümername.Tabellenname.Objektname. Wenn Sie nur<br />
drei Argumente angeben, nimmt ddlgen an, dass es sich dabei um<br />
Eigentümername, Tabellenname und Objektname, in genau dieser<br />
Reihenfolge handelt. Sie können auch -NEigentümername.Tabellenname<br />
-Ddb-Name verwenden. ddlgen macht diese Einschränkung nicht,<br />
wenn Objektname ein Index (I) ist.<br />
-D Datenbankname<br />
legt den Namen der Datenbank für das Objekt fest, das Sie in der -N-Option<br />
angeben. Der Standardwert ist die Standarddatenbank des Benutzers.<br />
<strong>Dienstprogramme</strong> 197
ddlgen<br />
-X erweiterter_Objekttyp<br />
unterscheidet folgende Elemente voneinander:<br />
Benutzertabellen (OU) von Proxy-Tabellen (OD), wenn Sie eine Tabelle<br />
als Ihren Objekttyp (-TU) angeben<br />
temporäre Datenbanken (OD) von nicht-temporären Datenbanken<br />
(OU), wenn Sie eine Datenbank als Ihren Objekttyp angeben (-TDB)<br />
SQLJ-Prozeduren (OD) von gespeicherten Prozeduren (OU), wenn Sie<br />
eine Prozedur als Ihren Objekttyp angeben (-TP).<br />
Wenn der Objekttyp (-T) ein U-Typ (Tabelle) ist und -X nicht angegeben<br />
wird, generiert ddlgen DDL sowohl für Benutzertabellen als auch für Proxy-<br />
Tabellen. So generieren Sie eine DDL-Datei nur für:<br />
Benutzertabellen – verwenden Sie den erweiterten OU-Objekttyp mit<br />
der -X-Option.<br />
Proxy-Tabellen – verwenden Sie den erweiterten OD-Objekttyp mit der<br />
-X-Option.<br />
Hinweis ddlgen unterstützt keine Systemtabellen.<br />
-O Ausgabedatei<br />
gibt eine Ausgabedatei für die generierten DDL an. Wenn Sie nicht -O<br />
angeben, wird die DDL, die Sie generieren, in einem Konsolenfenster<br />
angezeigt.<br />
-E Fehlerdatei<br />
bestimmt eine Logdatei zum Aufzeichnen der Fehler. Wenn Sie nicht -E<br />
angeben, werden die generierten Fehler in einem Konsolenfenster<br />
angezeigt.<br />
-L Fortschritts-Logdatei<br />
bestimmt eine Logdatei zur Protokollierung des Fortschritts von ddlgen.<br />
Wenn Sie -L nicht festlegen, wird der Fortschritt nicht aufgezeichnet.<br />
198 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. -J Client-<br />
Zeichensatz verlangt, dass Adaptive Server in und von Client-Zeichensatz,<br />
dem auf dem Client verwendeten Zeichensatz, konvertiert. Ein Filter<br />
konvertiert die Eingabe zwischen Client-Zeichensatz und dem Adaptive<br />
Server-Zeichensatz.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein. Der Standard ist nicht unbedingt der Zeichensatz, den der<br />
Client verwendet.<br />
-F<br />
filtert Indizes, Trigger und Integritätsregeln aus Tabellen- und<br />
Datenbankdefinitionen in der DDL von Objekten auf Tabellen- und<br />
Datenbankebene. Folgende Filter sind gültig:<br />
Für Tabellen – [ % | I | RI | KC | TR]<br />
Für Datenbanken – [ % | SGM | GRP | USR | R | D | UDD | U | V | P |<br />
XP|I|RI | KC |TR]<br />
Mögliche Filteroptionen:<br />
% – filtert alles heraus und fragt nur die Schema-Definition einer<br />
Tabelle ab.<br />
SGM – filtert Segmente heraus<br />
GRP – filtert Gruppen heraus<br />
USR – filtert Benutzer heraus<br />
R – filtert Regeln heraus<br />
D – filtert Standardwerte heraus<br />
UDD – filtert benutzerdefinierte Datentypen heraus<br />
U – filtert Benutzertabellen heraus<br />
V – filtert Ansichten heraus<br />
P – filtert gespeicherte Prozeduren heraus<br />
XP – filtert erweiterte gespeicherte Prozeduren heraus<br />
I – filtert Indizes heraus<br />
RI – filtert referenzielle Integritätsregeln heraus<br />
KC – filtert primäre und eindeutige Schlüssel-Integritätsregeln heraus<br />
TR – filtert Trigger heraus<br />
<strong>Dienstprogramme</strong> 199
ddlgen<br />
-v<br />
zeigt Versionsnummer und Copyright-Meldung von ddlgen an und kehrt<br />
zum Betriebssystem zurück.<br />
Beispiele Beispiel 1 Caches – Generiert eine DDL für einen Cache namens<br />
Standarddatencache auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TC -N"default data cache"<br />
Generieren von DDL für alle Caches:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TC -N%<br />
Beispiel 2 Standardwerte – Generiert eine DDL für einen Standardwert<br />
namens „phondflt“ mit dem Eigentümer „jones“ in der Datenbank pubs2<br />
auf einem Rechner namens HARBOR unter Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TD -Njones.phonedflt -Dpubs2<br />
Da ddlgen die Verwendung eines vollständig qualifizierten Namens in der<br />
-N-Option ermöglicht, können Sie alternativ dazu auch -Ddb-Name weglassen<br />
und den Datenbanknamen in der -N-Option angeben:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TD -Ndb-<br />
Name.Eigentümer.Standardname<br />
Generieren von DDL für alle Standardwerte in einer Datenbank,<br />
die „Eigentümer“ gehört:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TD -NEigentümer.% -Ddb-Name<br />
Beispiel 3 Datenbanken – Generiert eine DDL für eine Datenbank namens<br />
pubs2 auf einem Rechner namens HARBOR unter Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TDB -Npubs2<br />
Wenn Sie db-Name nicht angeben, generiert ddlgen eine DDL für die<br />
Standarddatenbank von Login:<br />
ddlgen -ULogin -PKennwort -SServer:Port<br />
Wenn Sie den -T-Parameter nicht angeben, generiert ddlgen eine DDL für eine<br />
Standardtyp-Datenbank:<br />
ddlgen -ULogin -PKennwort -SServer:Port -Ndb-Name<br />
Generieren von DDL für alle Datenbanken:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB -N%<br />
200 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiel 4 Datenbankdevice – Generiert eine DDL für ein Datenbankdevice<br />
namens master auf einem Rechner namens HARBOR unter Verwendung von<br />
Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TDBD -Nmaster<br />
Generieren von DDL für alle Datenbankdevices:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDBD -N%<br />
Beispiel 5 Temporäre Datenbanken – Generiert eine DDL für alle<br />
Datenbanken einschl. tempdbs:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB -N%<br />
Zum Generieren von DDL für alle temporären Datenbanken verwenden Sie<br />
den erweiterten Datenbanktyp OD:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB -XOD -N%<br />
Sie können den erweiterten Typ OD in Adaptive Server 12.5.0.3 und späteren<br />
Versionen verwenden; in früheren Versionen als 12.5.0.3 werden jedoch<br />
Warnmeldungen ausgegeben. Diese Meldungen können Sie ruhig ignorieren,<br />
da ddlgen die Verarbeitung des Befehls fortsetzt.<br />
Zum Generieren von DDL für alle Datenbanken außer temporären<br />
Datenbanken verwenden Sie den erweiterten Typ OU:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB -XOU -N%<br />
Folgende Syntax generiert eine DDL für eine temporäre Datenbank namens<br />
tempdb1:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB -Ntempdb1<br />
Die Ausgabe besteht aus folgenden Elementen:<br />
Die Anweisung create temporary database<br />
create temporary database tempdb1 on master = 4,<br />
asdas = 2<br />
go<br />
Die Anweisung sp_tempdb bind, in der die isql-Anwendung mit tempdb1<br />
verbunden wird:<br />
sp_tempdb 'bind','ap', 'isql', 'DB', 'tempdb1'<br />
go<br />
<strong>Dienstprogramme</strong> 201
ddlgen<br />
Hinweis DDL für Objekte wie Ansichten, gespeicherte Prozeduren und<br />
Tabellen werden nicht zusammen mit DDL für eine temporäre Datenbank<br />
erzeugt, weil diese Objekte temporär sind und beim Neustart des Servers<br />
erneut erstellt werden.<br />
Beispiel 6 Sicherungsdevice – Generiert eine DDL für ein Sicherungsdevice<br />
namens tapedump1 auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TDPD -Ntapedump1<br />
Generieren von DDL für alle Sicherungsdevices:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDPD -N%<br />
Beispiel 7 Ausführungsklasse – Generiert eine DDL für eine Ausführungsklasse<br />
namens EC2 auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TEC -NEC2<br />
Generieren von DDL für alle Ausführungsklassen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TEC -N%<br />
Beispiel 8 Engine-Gruppen – Generiert eine DDL für eine Engine-Gruppe<br />
namens LASTONLINE auf einem Rechner namens HARBOR unter<br />
Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TEG -NLASTONLINE<br />
Generieren von DDL für alle Engine-Gruppen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TEG -N%<br />
Beispiel 9 Erweiterte gespeicherte Prozeduren – Generiert eine DDL für die<br />
erweiterte gespeicherte Prozedur xp_cmdshell in der Datenbank pubs2, die dem<br />
Eigentümer „Jones“ gehört und auf einem Rechner namens HARBOR unter<br />
Verwendung von Port 1955 läuft; hierzu wird das vollständig qualifizierte<br />
Format db-Name.Eigentümer.erweiterte_gespeicherte_Prozedur mit der -N-<br />
Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TXP -Npubs2.jones.xp_cmdshell<br />
202 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Anstelle des vollständig qualifizierten Namens können Sie auch die -D-Option<br />
verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TXP<br />
-NEigentümer.erweiterte_gespeicherte_Prozedur<br />
-Ddb-Name<br />
Generieren von DDL für alle erweiterten gespeicherten Prozeduren:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TXP -Ndb-Name.Eigentümer.%<br />
Beispiel 10 Gruppen – Generiert eine DDL für eine Gruppe namens „public“<br />
in der Datenbank pubs2, die auf einem Rechner namens HARBOR unter<br />
Verwendung von Port 1955 läuft; hierzu wird das vollständig qualifizierte<br />
Format db-Name.Gruppenname in der -N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TGRP -Npubs2.public<br />
Alternativ dazu können Sie auch die -D-Option verwenden, um db-Name<br />
anzugeben:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TGRP -NGruppenname -Ddb-Name<br />
Generieren von DDL für alle Gruppen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TGRP -Ndb-Name.%<br />
Beispiel 11 Indizes – Generiert eine DDL für einen Index namens au_lname<br />
für die Tabelle authors, die dem Eigentümer „dbo“ gehört und sich in der<br />
Datenbank pubs2 befindet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TI -Ndbo.authors.au_lname -Dpubs2<br />
Da ddlgen die Verwendung eines vollständig qualifizierten Namens in der<br />
-N-Option ermöglicht, können Sie alternativ dazu auch -Ddb-Name weglassen<br />
und den Datenbanknamen in der -N-Option angeben:<br />
ddlgen -ULogin -PKennwort -SServer:Port<br />
-TI -Ndb-Name.Eigentümer.Tabellenname.Indexname<br />
Bei Verwendung eines vollständig qualifizierten Namens können Sie die -D-<br />
Option weglassen.<br />
Generieren von DDL für alle Indizes:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TI<br />
-Ndb-Name.Eigentümer.Tabellenname.%<br />
<strong>Dienstprogramme</strong> 203
ddlgen<br />
Beispiel 12 Schlüssel – Diese beiden Anweisungen generieren eine DDL<br />
für die primären und eindeutigen Schlüssel aller Tabellen in einer Datenbank,<br />
die mit „PK“ beginnen:<br />
Oder:<br />
ddlgen -Usa -P -TKC -Ndb-Name.%.%.PK%<br />
ddlgen -Usa -P -TKC -N%.%.PK% -Ddb-Name<br />
Hinweis Normalerweise können Sie alle Indizes nur für eine Tabelle erzeugen;<br />
jedoch ermöglicht Ihnen der Objekttyp-Parameter -T zusammen mit dem RI-<br />
und KC-Wert, sowohl Fremdschlüssel als auch primäre und eindeutige<br />
Schlüssel für eine ganze Datenbank zu erzeugen.<br />
Beispiel 13 Logins – Generiert eine DDL für alle Logins auf einem Rechner<br />
namens HARBOR unter Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TL -N%<br />
Hinweis Das Kennwort in der für alle Logins generierten DDL ist „Kennwort“.<br />
Oder Sie geben ein individuelles Login an, indem Sie -NBenutzername anstelle<br />
von -N% verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TL -Ndb-Name.Benutzername<br />
Beispiel 14 Entfernte Server – Generiert eine DDL für einen entfernten Server<br />
namens ORANGE auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TRS -NORANGE<br />
Generieren von DDL für alle entfernten Server:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TRS -N%<br />
Beispiel 15 Rollen – Generiert eine DDL für die Rolle „sa_role“ auf einem<br />
Rechner namens HARBOR unter Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TRO -Nsa_role<br />
Generieren von DDL für alle Rollen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TRO -N%<br />
Hinweis Das Kennwort in der für alle Rollen generierten DDL ist „Kennwort“.<br />
204 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiel 16 Regeln – Generiert eine DDL für alle Regeln, die authors<br />
zugeordnet sind, auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TR -Nauthors.dbo.%<br />
Das %-Symbol fordert DDLGen auf, DDL für alle Regeln zu erstellen, die auf<br />
dem Server vorhanden sind.<br />
Sie können auch den vollständig qualifizierten Namen der Regel angeben:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TR -Ndb-Name.Eigentümer.Regelname<br />
Sie können alternativ dazu auch den -D-Parameter verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TR -NEigentümer.Regelname<br />
-Ddb-Name<br />
Beispiel 17 Segmente – Generiert eine DDL mithilfe des vollständig<br />
qualifizierten Formats db-Name.Segmentname in der -N-Option für ein<br />
Segment namens logsegment für die Datenbank pubs2 auf einem Rechner<br />
namens HARBOR unter Verwendung von Port 1955:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TSGM -Npubs2.logsegment<br />
Alternativ dazu können Sie auch db-Name angeben, indem Sie die -D-Option<br />
verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TGSM -NSegmentname -Ddb-Name<br />
Generieren von DDL für alle Segmente:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TSGM -Ndb-Name.%<br />
Beispiel 18 SQLJ-Funktionen – Generiert eine DDL für eine SQLJ-Funktion<br />
namens region_of, die dem Eigentümer dbo gehört und sich in der Datenbank<br />
master befindet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TDB –Nmaster.dbo.region_of<br />
Sie können alternativ dazu auch den -D-Parameter verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TDB –Ndbo.region_of –Dmaster<br />
Um eine DDL für alle SQLJ-Funktionen in einer Datenbank zu erzeugen,<br />
verwenden Sie Objekttyp F:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TF –Ndb-Name.Eigentümer.%<br />
<strong>Dienstprogramme</strong> 205
ddlgen<br />
Beispiel 19 SQLJ-Prozeduren – sind eine Art gespeicherte Prozedur. Sie<br />
können DDL für SQL-Prozeduren zusammen mit DDL für gespeicherte<br />
Prozeduren generieren. Folgende Anweisung erzeugt eine DDL für<br />
alle gespeicherten Prozeduren (einschl. SQLJ-Prozeduren), die dem<br />
Eigentümer dbo gehören und sich in der Datenbank master befinden:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TP –Nmaster.dbo.%<br />
Um eine DDL für alle SQLJ-Prozeduren zu erzeugen, die nur dem Eigentümer<br />
dbo gehören und sich in der Datenbank master befinden, verwenden Sie<br />
folgende Anweisung, wobei der erweiterte Typ OD sich auf SQLJ-Prozeduren<br />
bezieht:<br />
ddlgen -ULogin -PKennwort -SServer:Port - TP –Nmaster.dbo.% -XOD<br />
Um eine DDL für alle SQLJ-Prozeduren zu erzeugen, außer denjenigen,<br />
die dem Eigentümer dbo gehören und sich in der Datenbank master befinden,<br />
verwenden Sie folgende Anweisung, wobei der erweiterte Typ OU sich auf alle<br />
gespeicherten Prozeduren mit Ausnahme von SQLJ-Prozeduren bezieht:<br />
ddlgen -ULogin -PKennwort -SServer:Port - TP –Nmaster.dbo.% -XOU<br />
Beispiel 20 Gespeicherte Prozeduren – Generiert eine DDL für die<br />
gespeicherte Prozedur sp_monitor für die Datenbank pubs2 auf einem<br />
Rechner namens HARBOR unter Verwendung von Port 1955; hierzu wird<br />
das vollständig qualifizierte Format db-Name.Eigentümer.Prozedurname für<br />
die -N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TP -Npubs2.dbo.sp_monitor<br />
Alternativ dazu können Sie auch db-Name angeben, indem Sie die -D-Option<br />
verwenden:<br />
DDLGen -ULogin -PKennwort -SServer:Port -TP -NEigentümer.Prozedurname<br />
-Ddb-Name<br />
Generieren von DDL für alle gespeicherten Prozeduren:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TP -Ndb-Name.Eigentümer.%<br />
Beispiel 21 Tabellen – Generiert eine DDL für alle Benutzertabellen in der<br />
Datenbank pubs2, die dem Eigentümer „dbo“ gehören und auf einem Rechner<br />
namens HARBOR unter Verwendung von Port 1955 laufen:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TU -Ndbo.% -Dpubs2<br />
Sie können auch den -N-Parameter verwenden, um den vollständig<br />
qualifizierten Namen der Tabelle anzugeben:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TU<br />
-Ndb-Name.Tabelleneigentümer.Tabellenname<br />
206 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Sie können alternativ dazu auch den -D-Parameter verwenden, um die<br />
Datenbank zu bestimmen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TU<br />
-NTabelleneigentümer.Tabellenname -Ddb-Name<br />
Um eine DDL für alle Proxy-Tabellen, die den Wert OD verwendet,<br />
zu generieren, verwenden Sie statt dessen -XOD, wobei X der erweiterte<br />
Typ ist und OD Proxy-Tabellen kennzeichnet:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TU<br />
-NTabelleneigentümer.% -Ddb-Name -XOD<br />
Um eine DDL für alle Benutzertabellen, die den Wert OU verwendet,<br />
zu generieren, verwenden Sie statt dessen -XOU, wobei X der erweiterte<br />
Typ ist und OU Benutzertabellen kennzeichnet:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TU<br />
-NTabelleneigentümer.% -Ddb-Name -XOU<br />
Generieren von DDL für alle Tabellen einschl. Benutzertabellen und Proxy-<br />
Tabellen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TU -Ndb-Name.Tabelleneigentümer.%<br />
Beispiel 22 Trigger – Generiert eine DDL für den Trigger checksum für die<br />
Datenbank pubs2 auf einem Rechner namens HARBOR unter Verwendung<br />
von Port 1955; hierzu wird das vollständig qualifizierte Format db-Name.<br />
Eigentümer.Triggername für die -N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TTR -Npubs2.dbo.checksum<br />
Alternativ dazu können Sie auch Datenbankname angeben, indem Sie die -D-<br />
Option verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TTR<br />
-NEigentümer.Triggername -Ddb-Name<br />
Generieren von DDL für alle Trigger:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TTR -Ndb-Name.Eigentümer.%<br />
Beispiel 23 Benutzerdefinierte Datentypen – Generiert eine DDL für den<br />
benutzerdefinierten Datentyp „dentype“ für die Datenbank pubs2 auf einem<br />
Rechner namens HARBOR unter Verwendung von Port 1955; hierzu wird das<br />
vollständig qualifizierte Format db-Name.benutzerdefinierter_Datentyp für die<br />
-N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TUDD -Npubs2.Identype<br />
Alternativ dazu können Sie auch die -D-Option verwenden, um db-Name<br />
anzugeben:<br />
<strong>Dienstprogramme</strong> 207
ddlgen<br />
ddlgen -ULogin -PKennwort -SServer:Port -TUDD<br />
-Nbenutzerdefinierter_Datentyp -Ddb-Name<br />
Generieren von DDL für alle benutzerdefinierten Datentypen:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TUDD -Ndb-Name.%<br />
Beispiel 24 Ansichten – Generiert eine DDL für eine Ansicht namens retail,<br />
die dem Eigentümer „Miller“ gehört und sich in der Datenbank pubs2 befindet,<br />
die auf einem Rechner namens HARBOR unter Verwendung von Port 1955<br />
läuft, hierzu wird das vollständig qualifizierte Format db-Name.Eigentümer.<br />
Ansichtsname mit der -N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TV -Npubs2.miller.retail<br />
Anstelle des vollständig qualifizierten Namens können Sie auch die -D-Option<br />
verwenden:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TV -NEigentümer.Ansichtsname<br />
-Ddb-Name<br />
Generieren von DDL für alle Ansichten:<br />
DDLGen -ULogin -PKennwort -SServer:Port -TV -Ndb-Name.Eigentümer.%<br />
Beispiel 25 Benutzer – Generiert eine DDL für einen Benutzer namens<br />
„Smith“ in der Datenbank pubs2, die auf einem Rechner namens HARBOR<br />
unter Verwendung von Port 1955 läuft; hierzu wird das vollständig<br />
qualifizierte Format db-Name.Benutzername mit der -N-Option verwendet:<br />
ddlgen -Uroy -Proy123 -SHARBOR:1955 -TUSR -Npubs2.smith<br />
Oder Sie können die Optionen -N und -D anstelle eines vollständig<br />
qualifizierten Namens in -N verwenden:<br />
ddlgen -ULogin -PKennwort -SHostname:Port -TUSR -NBenutzername -Ddb-Name<br />
Generieren von DDL für alle Benutzer:<br />
ddlgen -ULogin -PKennwort -SServer:Port -TUSR -Ndb-Name.%<br />
Syntax ddlgen identifiziert keine vorhandenen Sequenzen innerhalb von<br />
Ansichten, gespeicherten Prozeduren oder Triggern. Daher müssen Sie<br />
beim Erzeugen von DDL für eine Datenbank zuerst ddlgen auf diesen<br />
Ansichten, gespeicherten Prozeduren und Triggern, die unabhängig sind,<br />
ausführen, bevor Sie ddlgen auf solchen mit Abhängigkeiten ausführen.<br />
Wenn zum Beispiel die Ansicht B von Ansicht A abhängt, müssen Sie<br />
ddlgen zuerst auf Ansicht A ausführen, bevor Sie es auf Ansicht B<br />
ausführen.<br />
208 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Die Standard-Informationen für ddlgen sind:<br />
Option Parameter benötigt Standardwerte<br />
-U Benutzername Ja Keiner<br />
-P Kennwort Ja Keiner<br />
-S Hostname:Portnummer Ja Keiner<br />
-T Objekttyp<br />
Eine Liste der gültigen Objekttypen finden<br />
Sie in Tabelle 8-3.<br />
Nein Datenbank<br />
-N Objektname Ja, wenn Objekttyp<br />
für -T nicht DB<br />
(Datenbank) ist.<br />
Standard-Datenbankname<br />
von Benutzername, wenn<br />
-TObjekttyp db ist bzw. -T<br />
nicht angegeben ist.<br />
-D Datenbankname Nein Standarddatenbank von<br />
Benutzername.<br />
-X erweiterter_Objekttyp<br />
Optionen sind OU bei Benutzertabellen und<br />
OD bei Proxy-Tabellen.<br />
Nein; nur verwendet,<br />
wenn Objekttyp für -T<br />
U (Benutzertabellen),<br />
P (Prozedur), DB<br />
(Datenbank) ist.<br />
Keiner<br />
-O Ausgabedatei-Name Nein Standard out<br />
-E Fehlerdatei-Name Nein Standard out<br />
-L Logdatei-Name Nein Keiner<br />
-V Versionsnummer von ddlgen Nein Keiner<br />
Um ddlgen von einer Befehlszeile aus aufzurufen, müssen Sie JRE 1.1.8<br />
oder höher installieren und DDLGen.jar in Ihrem Klassenpfad haben.<br />
Auf der Befehlszeile rufen Sie ddlgen unter Verwendung der DDLGen.sh-<br />
Datei (DDLGen.bat für Windows NT), die in Ihrer Adaptive Server-<br />
Installation enthalten ist. Die Hauptklasse in DDLGen.jar ist<br />
com.sybase.ddlgen.DDLGenerator.<br />
So starten Sie ddlgen in <strong>Sybase</strong> Central, dem Plug-In-Programm für<br />
Adaptive Server:<br />
a Rechtsklicken Sie auf das Objekt, für welches Sie eine DDL<br />
generieren wollen.<br />
b Wählen Sie DDL erstellen.<br />
In der ausgegebenen DDL von create table werden Bindungsanweisungen<br />
als unabhängige DLL und nicht als abhängige DLL generiert.<br />
<strong>Dienstprogramme</strong> 209
defncopy<br />
Filter<br />
Wenn Sie einen ungültigen Filterparameter verwenden, erzeugt ddlgen eine<br />
Warnung, ignoriert diesen Parameter und fährt mit den restlichen gültigen<br />
Parametern, die Sie angeben, fort.<br />
Wenn Sie % zusammen mit anderen Filterparametern angeben, ignoriert<br />
ddlgen alle anderen filterbaren Parameter und zeigt nur Schema-Definitionen<br />
an. Anschließend wertet ddlgen die Abhängigkeiten innerhalb der Untergruppe<br />
der angewendeten Parameter weiterhin als filterbare Parameter für die<br />
Datenbank.<br />
Berechtigungen Da ddlgen Daten aus Systemkatalogen abrufen muss, müssen die Benutzer<br />
entweder als „dbo“ angemeldet sein oder über die Select- Berechtigung auf<br />
syscatalogs verfügen.<br />
defncopy<br />
Beschreibung Kopiert Definitionen für angegebene Ansichten, Regeln, Standardwerte,<br />
Trigger oder Prozeduren aus einer Datenbank in eine Betriebssystemdatei<br />
bzw. aus einer Betriebssystemdatei in eine Datenbank. Standort ist<br />
$SYBASE/$SYBASE_OCS/bin.<br />
Windows NT Das Dienstprogramm heißt defncopy.exe und befindet sich<br />
unter %SYBASE%\%SYBASE_OCS%\bin.<br />
Syntax defncopy<br />
[-X]<br />
[-a Anzeige-Zeichensatz]<br />
[-I Interfaces-Datei]<br />
[-J [Client-Zeichensatz]]<br />
[-K Keytab-Datei]<br />
[-P Kennwort]<br />
[-R entfernter_Hauptserver]<br />
[-S [Servername]]<br />
[-U Benutzername]<br />
[-V Sicherheitsoptionen]<br />
[-Z Sicherheitsmechanismus]<br />
[-z Sprache]<br />
{ in Dateiname Datenbankname |<br />
out Dateiname Datenbankname [Eigentümer.]Objektname<br />
[[Eigentümer.]Objektname...] }<br />
Oder<br />
defncopy -v<br />
210 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Parameter -X<br />
stellt das Login in dieser Verbindung zum Server mit Kennwortverschlüsselung<br />
durch den Client her. defncopy (der Client) gibt dem<br />
Server bekannt, dass die Kennwortverschlüsselung gewünscht wird.<br />
Der Server sendet einen Verschlüsselungsschlüssel zurück, den defncopy<br />
zur Verschlüsselung Ihres Kennworts und der Server verwendet, um die<br />
Zugangserlaubnis Ihres Kennworts zu überprüfen, wenn es ankommt.<br />
Wenn defncopy ausfällt, erstellt das System eine Core-Datei, die Ihr<br />
Kennwort enthält. Wenn Sie die Verschlüsselungsoption nicht verwendet<br />
haben, wird Ihr Kennwort als normaler Text in der Datei angezeigt. Wenn<br />
Sie die Verschlüsselungsoption verwenden, ist Ihr Kennwort nicht lesbar.<br />
-a Anzeige-Zeichensatz<br />
führt defncopy von einem Terminal aus, dessen Zeichensatz von dem des<br />
Rechners, auf dem defncopy läuft, verschieden ist. -a in Verbindung mit -J<br />
gibt die Zeichensatzkonvertierungs-Datei (.xlt-Datei) an, die für die<br />
Konvertierung erforderlich ist. Verwenden Sie -a ohne -J nur dann,<br />
wenn der Client-Zeichensatz mit dem Standardzeichensatz identisch ist.<br />
Hinweis Der ascii_7-Zeichensatz ist mit allen anderen Zeichensätzen<br />
kompatibel. Wenn entweder der Adaptive Server- oder der Clientzeichensatz<br />
auf ascii_7 eingestellt ist, können alle 7-Bit-ASCII-Zeichen unverändert<br />
zwischen Client und Server übermittelt werden. Andere Zeichen erzeugen<br />
Konvertierungsfehler. Weitere Hinweise zur Zeichensatzkonvertierung finden<br />
Sie in der Dokumentation Systemadministration für Adaptive Server<br />
Enterprise.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Adaptive Server hergestellt wird. Wenn Sie<br />
für -I keine Angaben machen, sucht defncopy auf UNIX-Plattformen nach<br />
einer Datei namens interfaces in dem Verzeichnis, das durch die SYBASE-<br />
Umgebungsvariable bestimmt wird, und nach sql.ini im ini-Unterverzeichnis<br />
für Ihr <strong>Sybase</strong>-Versionsverzeichnis in Windows NT.<br />
<strong>Dienstprogramme</strong> 211
defncopy<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. Ein Filter<br />
konvertiert die Eingabe zwischen Client-Zeichensatz und dem Adaptive<br />
Server-Zeichensatz.<br />
-J Client-Zeichensatz verlangt, dass Adaptive Server in und von Client-<br />
Zeichensatz, dem Zeichensatz des Clients, konvertiert.<br />
-J ohne Argument stellt die Zeichensatzkonvertierung auf NULL. Es findet<br />
keine Konvertierung statt. Verwenden Sie dies, wenn der Client und der<br />
Server denselben Zeichensatz verwenden.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein. Der Standardwert ist nicht unbedingt der Zeichensatz, den<br />
der Client verwendet. Weitere Hinweise über Zeichensätze und zugeordnete<br />
Optionen finden Sie in der Dokumentation Systemadministration für<br />
Adaptive Server Enterprise und in der Konfigurationsanleitung für Ihre<br />
Plattform.<br />
-K Keytab-Datei<br />
gibt den Pfad zur Keytab-Datei an, die zur Authentifizierung in DCE<br />
verwendet wird.<br />
-P Kennwort<br />
gibt Ihr Kennwort an. Wenn Sie -P nicht verwenden, fordert defncopy zur<br />
Eingabe Ihres Kennworts auf.<br />
-R entfernter_Hauptserver<br />
legt den Hauptnamen für den Server fest. Standardmäßig entspricht der<br />
Hauptname dem Netzwerknamen des Servers (der mit dem -S-Parameter<br />
oder der DSQUERY-Umgebungsvariablen angegeben wird). Verwenden<br />
Sie den -R-Parameter, wenn der Hauptname des Servers nicht mit seinem<br />
Netzwerknamen übereinstimmt.<br />
-S Servername<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll. Wenn Sie -S ohne Argument eingeben,<br />
sucht defncopy nach einem Server namens SYBASE. Wenn Sie -S nicht<br />
angeben, verwendet defncopy den Server, der durch Ihre DSQUERY-<br />
Umgebungsvariable festgelegt wird.<br />
-U Benutzername<br />
gibt einen Login-Namen an. Login-Namen reagieren auf Groß/<br />
Kleinschreibung. Wenn Sie Benutzername nicht angeben, verwendet<br />
defncopy den Betriebssystem-Login-Namen des aktuellen Benutzers.<br />
212 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-V Sicherheitsoptionen<br />
legt eine netzbasierte Benutzer-Authentifizierung fest. Bei dieser Option<br />
muss sich der Benutzer beim Sicherheitssystem des Netzwerks anmelden,<br />
bevor er das Dienstprogramm ausführt. In diesem Fall muss der Benutzer<br />
den Netzwerk-Benutzernamen mit der-U-Option angeben; ein mit der<br />
-P-Option angegebenes Kennwort wird ignoriert.<br />
-V – Auf diesen Parameter kann eine Sicherheitsoptionen-Zeichenfolge<br />
folgen, die Schlüsselzeichen für die Aktivierung zusätzliche<br />
Sicherheitsdienste enthalten. Es gibt folgende Schlüsselzeichen:<br />
c – Datenvertraulichkeitsdienst aktivieren<br />
c – Datenintegritätsdienst aktivieren<br />
m – Gegenseitige Authentifizierung für Verbindungserstellung<br />
aktivieren<br />
c – Abzeichnungsdienst für Datenursprung aktivieren<br />
r – Datenwiedergabeermittlung aktivieren<br />
q – Feststellung von Fehlern in der Sequenzreihenfolge aktivieren<br />
-Z Sicherheitsmechanismus<br />
legt den Namen eines Sicherheitsmechanismus fest, der bei der Verbindung<br />
verwendet werden soll.<br />
Namen für Sicherheitsmechanismen sind in der Konfigurationsdatei<br />
$SYBASE/install/libtcl.cfg festgelegt. Wenn kein Name für den<br />
Sicherheitsmechanismus angegeben ist, wird der Standardmechanismus<br />
verwendet. Weitere Hinweise zu Namen für den Sicherheitsmechanismus<br />
entnehmen Sie der Beschreibung der libtcl.cfg-Datei in der Dokumentation<br />
Open Client/Server Configuration Guide.<br />
-z Sprache<br />
ist der offizielle Name einer Alternativsprache, die der Server zur Anzeige<br />
von defncopy-Eingabeaufforderungen und Meldungen verwendet. Ohne die<br />
-z-Option verwendet defncopy die Standardsprache des Servers.<br />
Sie fügen Sprachen einem Adaptive Server-System während der Installation<br />
hinzu, oder später mit dem Dienstprogramm langinstall (langinst in<br />
Windows NT) bzw. mit der gespeicherten Prozedur sp_addlanguage.<br />
<strong>Dienstprogramme</strong> 213
defncopy<br />
in | out<br />
legt die Richtung der Definitionskopie fest.<br />
Dateiname<br />
legt den Namen der Betriebssystemdatei (Ziel oder Quelle) für die<br />
Definitionskopie fest. Die Kopie überschreibt etwaig vorhandene Dateien.<br />
Datenbankname<br />
legt den Namen der Datenbank fest, aus der oder in die die Definitionen<br />
kopiert werden.<br />
Eigentümer<br />
ist fakultativ, wenn Ihnen oder dem Datenbankeigentümer die Tabelle<br />
gehört, die kopiert wird. Wenn Sie keinen Eigentümer angeben, sucht<br />
defncopy zuerst nach einer Tabelle dieses Namens, die Ihnen gehört, und<br />
dann nach einer, die dem Datenbankeigentümer gehört. Wenn die Tabelle<br />
einem anderen Benutzer gehört, müssen Sie den Namen des Eigentümers<br />
angeben, oder der Befehl schlägt fehl.<br />
Objektname<br />
gibt die Namen von Datenbankobjekten an, die defncopy aus einer<br />
Datenbank kopieren soll. Verwenden Sie objectname nicht, wenn Sie<br />
Definitionen in die Datenbank kopieren.<br />
-v<br />
zeigt Versionsnummer und Copyright-Meldung von defncopy an und kehrt<br />
zum Betriebssystem zurück.<br />
Beispiele Beispiel 1 Kopiert Definitionen aus der Datei new_proc in die Datenbank<br />
stagedb auf dem Server MERCURY. Die Verbindung mit MERCURY wird<br />
mit dem Benutzernamen „sa“ und einem NULL-Kennwort hergestellt:<br />
defncopy -Usa -P -SMERCURY in new_proc stagedb<br />
Beispiel 2 Kopiert Definitionen für die Objekte sp_calccomp und sp_vacation<br />
aus der employees-Datenbank auf dem SYBASE-Server in die Datei dc.out.<br />
Meldungen und Eingabeaufforderungen werden auf Französisch angezeigt.<br />
Der Benutzer wird zur Eingabe eines Kennworts aufgefordert:<br />
defncopy -S -z french out dc.out employees sp_calccomp sp_vacation<br />
214 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Syntax Verwenden Sie diese Syntax bei defncopy_r, wenn Sie Thread-Treiber<br />
verwenden.<br />
Verwenden Sie diese Syntax bei defncopy_dce, wenn Sie Thread-Treiber<br />
auf der IBM-Plattform verwenden.<br />
Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor<br />
Sie defncopy verwenden können.<br />
Das defncopy -Dienstprogramm kann keine Tabellendefinitionen oder<br />
Protokolle kopieren, die mit Report Workbench erstellt wurden.<br />
Rufen Sie das defncopy-Programm direkt vom Betriebssystem auf.<br />
defncopy stellt eine nicht-interaktive Möglichkeit dar, Definitionen<br />
(create-Anweisungen) für Ansichten, Regeln, Standardwerte, Trigger<br />
und Prozeduren von einer Datenbank auf eine Betriebssystemdatei zu<br />
kopieren. Oder Sie können alle Definitionen aus einer angegebenen Datei<br />
in eine Datenbank kopieren.<br />
Die Angabe von in Dateiname oder out Dateiname und des<br />
Datenbanknamens ist erforderlich und muss eindeutig sein. Beim<br />
Kopieren aus einer Datenbank verwenden Sie Dateinamen, die sowohl<br />
auf den Namen des Objekts als auch auf seinen Eigentümer verweisen.<br />
defncopy beendet jede Definition, die aus einer Datenbank kopiert wird,<br />
mit folgendem Kommentar:<br />
/* ### DEFNCOPY: END OF DEFINITION */<br />
Definitionen, die Sie als Text erstellen, müssen mit diesem Kommentar<br />
aufhören, da defncopy sie sonst nicht erfolgreich kopieren kann.<br />
Setzen Sie in defncopy angegebene Werte in Klammern, wenn sie Zeichen<br />
enthalten, die für die Shell möglicherweise signifikant sind.<br />
Achtung! Lange Kommentare mit mehr als 100 Zeichen, die vor einer<br />
create-Anweisung platziert sind, können dazu führen, dass defncopy<br />
fehlschlägt.<br />
Berechtigungen Sie müssen die select-Berechtigung für die sysobjects- und syscomments-<br />
Tabellen haben, um Definitionen zu kopieren; Sie benötigen nicht die<br />
Berechtigung für das Objekt selbst.<br />
<strong>Dienstprogramme</strong> 215
defncopy<br />
Benutzte Tabellen syscomments, sysobjects<br />
Siehe auch Befehle create, select<br />
Sie haben möglicherweise keine select-Berechtigung für die text-Spalte<br />
der syscomments-Tabelle, wenn der Sicherheitsadministrator (SSO)<br />
den allow select on syscomments.text column-Parameter mit der<br />
Systemprozedur sp_configure wiederhergestellt hat. Diese Neueinstellung<br />
beschränkt die select-Berechtigung auf den Objekteigentümer und den<br />
Systemadministrator. Diese Einschränkung ist erforderlich, um Adaptive<br />
Server in der bewerteten Konfiguration auszuführen, wie in der<br />
Installations- und Konfigurationsdokumentation für Ihre Plattform<br />
beschrieben. In diesem Fall muss der Objekteigentümer oder der System-<br />
Administrator defncopy ausführen, um Definitionen zu exportieren.<br />
Hinweis Wenn der Text verschlüsselt wurde, kann er vor Ihnen verborgen<br />
sein, auch wenn Sie alle erforderlichen Berechtigungen haben. Nähere<br />
Informationen hierzu finden Sie unter „Verifying and Encrypting Source<br />
Text“ in der Dokumentation Transact-SQL User’s Guide.<br />
Sie müssen die entsprechende create-Berechtigung für den Typ von<br />
Objekten haben, den Sie in eine Datenbank kopieren. Importierte Objekte<br />
gehören dem Kopierer. Ein System-Administrator, der Definitionen im<br />
Auftrag eines Benutzers in eine Datenbank kopiert, muss sich unter<br />
dem Namen dieses Benutzers anmelden, um ihm den Zugriff auf die<br />
wiedererstellten Datenbankobjekte zu ermöglichen.<br />
Systemprozeduren sp_addlanguage, sp_checkreswords, sp_configure,<br />
sp_procqmode, sp_remap<br />
<strong>Dienstprogramme</strong> langinstall<br />
216 Adaptive Server Enterprise
dscp<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Ermöglicht es Ihnen, auf UNIX-Plattformen<br />
Servereinträge in der Interfaces-Datei von der Befehlszeile aus anzuzeigen<br />
und zu bearbeiten. Standort ist $SYBASE/$SYBASE_OCS/bin.<br />
Syntax dscp [-p]<br />
oder<br />
dscp -v<br />
So beenden Sie dscp:<br />
quit<br />
oder<br />
exit<br />
Parameter -p<br />
unterdrückt Eingabeaufforderungen in der Befehlszeile.<br />
-v<br />
zeigt Versionsnummer und Copyright-Meldung von dscp an und kehrt zum<br />
Betriebssystem zurück.<br />
Beispiele Öffnet die Standard-Interfaces-Datei zur Bearbeitung und unterdrückt die<br />
Eingabeaufforderung in der Befehlszeile.<br />
dscp -p<br />
Syntax Verwenden Sie diese Syntax bei dscp_r, wenn Sie Thread-Treiber<br />
verwenden.<br />
Verwenden Sie diese Syntax bei dscp_dce, wenn Sie Thread-Treiber<br />
auf der IBM-Plattform verwenden<br />
Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
dscp verwenden können.<br />
Das dscp-Dienstprogramm ist ein auf Text basierendes Dienstprogramm.<br />
In Kapitel 5, „dscp verwenden“ finden Sie weitere Hinweise über das<br />
dscp-Dienstprogramm.<br />
Siehe auch <strong>Dienstprogramme</strong> dsedit<br />
<strong>Dienstprogramme</strong> 217
dsedit<br />
dsedit<br />
Beschreibung UNIX-Plattformen Das dsedit-Dienstprogramm ermöglicht es Ihnen,<br />
auf UNIX-Plattformen Servereinträge in der Interfaces-Datei anzuzeigen<br />
und zu bearbeiten, indem Sie eine auf X11/Motif basierende grafische<br />
Benutzeroberfläche (GUI) verwenden. Das Dienstprogramm befindet<br />
sich unter $SYBASE/$SYBASE_OCS/bin.<br />
Windows NT Das Dienstprogramm dsedit.exe erstellt und ändert<br />
Netzwerkverbindungsinformationen in der Interfaces-Datei. Das<br />
Dienstprogramm befindet sich unter %SYBASE%\%SYBASE_OCS%bin.<br />
Syntax dsedit<br />
oder<br />
dsedit -v<br />
Parameter -v<br />
zeigt Versionsnummer und Copyright-Meldung von dsedit an.<br />
Syntax Verwenden Sie diese Syntax bei dsedit_r, wenn Sie Thread-Treiber<br />
verwenden.<br />
Verwenden Sie diese Syntax bei dsedit_dce, wenn Sie Thread-Treiber<br />
auf der IBM-Plattform verwenden.<br />
Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
dsedit verwenden können.<br />
Siehe auch <strong>Dienstprogramme</strong> dscp<br />
Sie müssen die DISPLAY-Umgebungsvariable einstellen, bevor Sie dsedit<br />
aufrufen, außer Sie verwenden den -v-Parameter, um die Versionsnummer<br />
anzuzeigen.<br />
Weitere Hinweise über das dsedit-Dienstprogramm finden Sie in<br />
Kapitel 4, „dsedit verwenden“ sowie in der Installationsanleitung<br />
und der Konfigurationsanleitung für Ihre Plattform.<br />
218 Adaptive Server Enterprise
extractjava<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Kopiert eine gespeicherte JAR-Datei und die darin enthaltenen Klassen<br />
von einer Adaptive Server-Installation in eine Clientdatei. Standort ist<br />
$SYBASE/$SYBASE_OCS/bin.<br />
Unter Windows NT Das Dienstprogramm heißt extrjava.exe und befindet<br />
sich unter %SYBASE%\%SYBASE_OCS%\bin.<br />
Syntax extractjava (extrjava in Windows NT)<br />
-j jar-Name<br />
-f Dateiname<br />
[-S Servername]<br />
[-U Benutzername]<br />
[-P Kennwort]<br />
[-D Datenbankname]<br />
[-I Interfaces-Datei]<br />
[-a Anzeige-Zeichensatz]<br />
[-J Client-Zeichensatz]<br />
[-z Sprache]<br />
[-t Zeitüberschreitung]<br />
[-v]<br />
Oder<br />
extractjava -v<br />
Parameter -j jar-Name<br />
der Name, der der gespeicherten JAR-Dateien in der Datenbank zugeordnet<br />
ist, die die Quelle der Übertragung ist.<br />
-f Dateiname<br />
der Name der Clientdatei, die das Ziel der Übertragung ist.<br />
-S Servername<br />
der Name des Servers.<br />
-U Benutzername<br />
ein Adaptive Server-Login-Name. Wenn Sie die -U-Option und Parameter<br />
weglassen oder die -U-Option ohne Parameter angeben, verwendet Adaptive<br />
Server den Betriebssystem-Login-Namen des aktuellen Benutzers.<br />
-P Kennwort<br />
ein Adaptive Server-Kennwort. Wenn Sie die -P-Option und Parameter<br />
weglassen, fordert Sie extractjava zur Eingabe eines Kennworts auf.<br />
Wenn Sie die -P-Option ohne Kennwort angeben, wird das Null-Kennwort<br />
verwendet.<br />
<strong>Dienstprogramme</strong> 219
extractjava<br />
-D Datenbankname<br />
der Name der Datenbank, in der die JAR-Datei installiert werden soll. Wenn<br />
Sie die -D-Option weglassen oder die -D-Option ohne Parameter angeben,<br />
wird die Standarddatenbank des Benutzers verwendet.<br />
-I Interfaces-Datei<br />
der Name und die Position der Interfaces-Datei, die durchsucht werden soll,<br />
wenn mit Adaptive Server verbunden wird. Wenn Sie die -I-Option und<br />
Parameter weglassen oder die -I-Option ohne Parameter angeben, wird die<br />
Interfaces-Datei in dem Verzeichnis verwendet, auf das Ihre SYBASE-<br />
Umgebungsvariable verweist.<br />
-a Anzeige-Zeichensatz<br />
damit können Sie extractjava von einem Rechner aus verwenden, dessen<br />
Zeichensatz sich von dem des Servers unterscheidet. -a in Verbindung mit -J<br />
gibt die Zeichensatzkonvertierungs-Datei (.xlt-Datei) an, die für die<br />
Konvertierung erforderlich ist. Verwenden Sie -a ohne -J nur dann,<br />
wenn der Client-Zeichensatz mit dem Standardzeichensatz identisch ist.<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. extractjava<br />
verwendet einen Filter, um die Eingabe zwischen Client-Zeichensatz und<br />
dem Adaptive Server-Zeichensatz zu konvertieren.<br />
-J Client-Zeichensatz verlangt, dass Adaptive Server in und von Client-<br />
Zeichensatz, dem auf dem Client verwendeten Zeichensatz, konvertiert.<br />
-J ohne Argument deaktiviert die Zeichensatz-Konvertierung. Verwenden<br />
Sie diese Einstellung, wenn Client und Server denselben Zeichensatz<br />
verwenden.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein, der nicht unbedingt der Zeichensatz ist, den der Client<br />
verwendet. Weitere Hinweise über Zeichensätze und ihre zugeordneten<br />
Optionen finden Sie in den Dokumentation Systemadministration für<br />
Adaptive Server Enterprise.<br />
-z Sprache<br />
der Name einer Alternativsprache, um extractjava-Eingabeaufforderungen<br />
und -Meldungen anzuzeigen. Ohne die -z-Option verwendet extractjava die<br />
Standardsprache des Servers. Sie können einem Adaptive Server-System<br />
während der Installation oder später mit dem langinstall-Dienstprogramm<br />
bzw. mit der gespeicherten Prozedur sp_addlanguage andere Sprachen<br />
hinzufügen.<br />
220 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-t Zeitüberschreitung<br />
legt die Anzahl der Sekunden fest, bevor für den SQL-Befehl eine<br />
Zeitüberschreitung eintritt. Wenn Sie keine Zeitüberschreitung festlegen,<br />
wird ein Befehl ohne Zeitbeschränkung ausgeführt. Das wirkt sich auf<br />
Befehle aus, die von extractjava ausgegeben werden, und nicht auf die<br />
Verbindungszeit. Die Standard-Zeitüberschreitung zum Anmelden bei<br />
extractjava beträgt 60 Sekunden.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für extractjava an und<br />
beendet dann.<br />
Beispiele Lädt die der employees-JAR-Datei zugeordneten Klassen in die Clientdatei<br />
newaddr.jar herunter.<br />
UNIX:<br />
extractjava -j employees -f '/home/usera/jars/addr.jar' -new<br />
Windows NT:<br />
extrjava -j employees -f '\home\usera\jars\addr.jar' -new<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
extractjava verwenden können.<br />
Wenn die Ziel-Clientdatei bereits existiert, wird ihr Inhalt von extractjava<br />
überschrieben.<br />
Die Parameteroptionen -f, -j, -S, -U, -P, -D und -I können mit oder ohne<br />
Leerstelle zwischen dem Optionsbuchstaben und dem folgenden<br />
Parameter geschrieben werden.<br />
Wenn Sie extractjava ausführen, wird eine Exklusivsperre auf<br />
sysxtypes gelegt.<br />
Wenn -jar angegeben ist, wird eine exklusive Tabellensperre auf<br />
sysjars gelegt.<br />
Weitere Hinweise über die Verwendung dieses Dienstprogramms, wenn<br />
Java in der Datenbank aktiviert ist, finden Sie in der Dokumentation Java<br />
in Adaptive Server Enterprise.<br />
<strong>Dienstprogramme</strong> 221
installjava<br />
Berechtigungen Sie müssen Systemadministrator oder Datenbankeigentümer sein,<br />
um extractjava auszuführen.<br />
Benutzte Tabellen sysjars, sysxtypes<br />
Siehe auch Befehle remove java<br />
installjava<br />
Systemprozeduren sp_helpjava<br />
<strong>Dienstprogramme</strong> installjava<br />
Beschreibung Installiert eine JAR-Datei von einer Clientdatei in eine Adaptive Server-<br />
Installation. Das Dienstprogramm befindet sich unter $SYBASE/<br />
$SYBASE_OCS/bin.<br />
Windows NT Das Dienstprogramm heißt instjava.exe und befindet sich unter<br />
%SYBASE%\%SYBASE_OCS%\bin.<br />
Syntax installjava<br />
-f Dateiname<br />
[ -new | -update ]<br />
[ -j jar-Name ]<br />
[ -S Servername ]<br />
[ -U Benutzername ]<br />
[ -P Kennwort ]<br />
[ -D Datenbankname ]<br />
[ -I Interfaces-Datei ]<br />
[ -a Anzeige-Zeichensatz ]<br />
[ -J Client-Zeichensatz ]<br />
[ -z Sprache ]<br />
[ -t Zeitüberschreitung ]<br />
[-v]<br />
Oder<br />
installjava -v<br />
Parameter -f Dateiname<br />
der Name der Quellendatei, die die Klassen enthält, die in der Datenbank<br />
installiert werden sollen.<br />
222 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-new | -update<br />
legt fest, ob die Klassen in der Datei bereits in der Datenbank<br />
vorhanden sind.<br />
Wenn Sie den new-Parameter angeben, können Sie keine Klasse mit dem<br />
Namen einer vorhandenen Klasse installieren.<br />
Wenn Sie den update-Parameter angeben, können Sie eine Klasse mit<br />
dem Namen einer vorhandenen Klasse installieren, und die neu installierte<br />
Klasse ersetzt die vorhandene Klasse.<br />
-j jar-Name<br />
der Name der JAR-Datei, die die Klassen enthält, die in der Datenbank<br />
installiert werden sollen. Zeigt an, dass die JAR-Datei in der Datenbank<br />
gespeichert und den in ihr enthaltenen Klassen zugeordnet werden soll.<br />
-S Servername<br />
der Name des Servers.<br />
-U Benutzername<br />
ein Adaptive Server-Login-Name. Wenn Sie die -U-Option und Parameter<br />
weglassen oder die -U-Option ohne Parameter angeben, verwendet Adaptive<br />
Server den Betriebssystem-Login-Namen des aktuellen Benutzers.<br />
-P Kennwort<br />
ein Adaptive Server-Kennwort. Wenn Sie die -P-Option und Parameter<br />
weglassen, fordert Sie installjava zur Eingabe eines Kennworts auf. Wenn<br />
Sie die -P-Option ohne Kennwort angeben, wird das Null-Kennwort<br />
verwendet.<br />
-D Datenbankname<br />
der Name der Datenbank, in der die JAR-Datei installiert werden soll. Wenn<br />
Sie die -D-Option weglassen oder die -D-Option ohne Parameter angeben,<br />
wird die Standarddatenbank des Benutzers verwendet.<br />
-I Interfaces-Datei<br />
der Name und die Position der Interfaces-Datei, die durchsucht werden soll,<br />
wenn mit Adaptive Server verbunden wird. Wenn Sie die -I-Option und<br />
Parameter weglassen oder die -I-Option ohne Parameter angeben, wird die<br />
Interfaces-Datei in dem Verzeichnis verwendet, auf das Ihre SYBASE-<br />
Umgebungsvariable verweist.<br />
<strong>Dienstprogramme</strong> 223
installjava<br />
-a Anzeige-Zeichensatz<br />
damit können Sie installjava von einem Rechner aus verwenden, dessen<br />
Zeichensatz sich von dem des Servers unterscheidet. -a in Verbindung mit -J<br />
gibt die Zeichensatzkonvertierungs-Datei (.xlt-Datei) an, die für die<br />
Konvertierung erforderlich ist. Verwenden Sie -a ohne -J nur dann,<br />
wenn der Client-Zeichensatz mit dem Standardzeichensatz identisch ist.<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. installjava<br />
verwendet einen Filter, um die Eingabe zwischen Client-Zeichensatz und<br />
dem Adaptive Server-Zeichensatz zu konvertieren.<br />
-J Client-Zeichensatz verlangt, dass Adaptive Server in und von Client-<br />
Zeichensatz, dem auf dem Client verwendeten Zeichensatz, konvertiert.<br />
-J ohne Argument deaktiviert die Zeichensatz-Konvertierung. Verwenden<br />
Sie diese Einstellung, wenn Client und Server denselben Zeichensatz<br />
verwenden.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein, der nicht unbedingt der Zeichensatz ist, den der Client<br />
verwendet. Weitere Hinweise über Zeichensätze und ihre zugeordneten<br />
Optionen finden Sie in den Dokumentation Systemadministration für<br />
Adaptive Server Enterprise.<br />
-z Sprache<br />
der Name einer Alternativsprache, um installjava-Eingabeaufforderungen<br />
und -Meldungen anzuzeigen. Ohne die -z-Option verwendet installjava die<br />
Standardsprache des Servers. Sie können einem Adaptive Server-System<br />
während der Installation oder später mit dem langinstall-Dienstprogramm<br />
bzw. mit der gespeicherten Prozedur sp_addlanguage andere Sprachen<br />
hinzufügen.<br />
-t Zeitüberschreitung<br />
legt die Anzahl der Sekunden fest, bevor für den SQL-Befehl eine<br />
Zeitüberschreitung eintritt. Wenn Sie keine Zeitüberschreitung festlegen,<br />
wird ein Befehl ohne Zeitbeschränkung ausgeführt. Das wirkt sich auf<br />
Befehle aus, die von installjava ausgegeben werden, und nicht auf die<br />
Verbindungszeit. Die Standard-Zeitüberschreitung zum Anmelden bei<br />
installjava beträgt 60 Sekunden.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für installjava an und<br />
beendet dann.<br />
224 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiele Beispiel 1 Installiert addr.jar und ihre Klassen, hält aber nicht die Zuordnung<br />
zwischen der JAR-Datei und den Klassen aufrecht:<br />
installjava -f '/home/usera/jars/addr.jar' -new<br />
In Windows NT:<br />
instjava -f '\home\usera\jars\addr.jar' -new<br />
Beispiel 2 Reinstalliert addr.jar und ordnet ihre Klassen dem employees-JAR-<br />
Dateinamen zu:<br />
installjava -f '/home/usera/jars/addr.jar' -update -j employees<br />
In Windows NT:<br />
instjava -f '\home\usera\jars\addr.jar' -update -j employees<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
installjava verwenden können.<br />
Weitere Hinweise über die Verwendung dieses Dienstprogramms,<br />
wenn Java in der Datenbank aktiviert ist, finden Sie in der Dokumentation<br />
Java in Adaptive Server Enterprise.<br />
Jeder Benutzer kann installierte Klassen referenzieren.<br />
Die Parameteroptionen -f, -j, -S, -U, -P, -D und -I können mit oder ohne<br />
Leerstelle zwischen dem Optionsbuchstaben und dem folgenden<br />
Parameter geschrieben werden.<br />
Neue JAR-Dateien hinzufügen<br />
Wenn Sie „new“ mit der -jar-Option verwenden und eine JAR-Datei<br />
dieses Namens bereits auf der Datenbank vorhanden ist, tritt eine<br />
Ausnahmebedingung ein.<br />
Wenn irgendwelche Klassen desselben Namens wie die in der Quellen-<br />
JAR-Datei bereits in der Datenbank vorhanden sind, tritt eine<br />
Ausnahmebedingung ein.<br />
JAR-Dateien und Klassen aktualisieren<br />
Achtung! Wenn Sie eine Klasse ändern, die als ein Spaltendatentyp verwendet<br />
wird, indem Sie eine geänderte Version der Klasse reinstallieren, müssen<br />
Sie sicherstellen, dass die geänderte Klasse vorhandene Objekte (Zeilen)<br />
in Tabellen lesen und verwenden kann, die diese Klasse als Datentyp<br />
verwenden. Sonst sind Sie möglicherweise nicht in der Lage, auf diese<br />
Objekte zuzugreifen, ohne die Klasse zu reinstallieren.<br />
<strong>Dienstprogramme</strong> 225
installjava<br />
Wenn Sie -update mit der -jar-Option verwenden, tritt Folgendes ein:<br />
Alle Klassen in der Datenbank, die der JAR-Datei zugeordnet sind,<br />
werden aus der Datenbank gelöscht und die Klassen in der Quellen-<br />
JAR-Datei werden installiert.<br />
Wenn eine Klasse in der Quellen-JAR-Datei bereits in der Datenbank<br />
installiert ist, ohne einer JAR-Datei zugeordnet zu sein, dann wird die<br />
Klasse in der Quellen-JAR-Datei in der Datenbank installiert, und die<br />
nicht zugeordnete Klasse wird gelöscht.<br />
Wenn Sie -update ohne die -jar-Option verwenden, tritt Folgendes ein:<br />
Klassen in der Quellen-JAR-Datei ersetzen nicht zugeordnete<br />
Klassen desselben Namens.<br />
Klassen in der Quellen-JAR-Datei, die keiner installierten Klasse<br />
entsprechen, werden als nicht zugeordnete Klassen in der Datenbank<br />
installiert.<br />
Wenn Sie eine neue JAR-Datei mit einem Ersatz für eine installierte<br />
Klasse installieren, die von einer SQLJ-Prozedur oder -Funktion<br />
referenziert wird, stellen Sie sicher, dass die neu installierte Klasse eine<br />
gültige Signatur für die SQLJ-Routine hat. Wenn die Signatur ungültig ist,<br />
wird eine Ausnahmebedingung ausgelöst, wenn die SQLJ-Routine<br />
aufgerufen wird.<br />
Sperren<br />
Wenn Sie installjava ausführen, wird eine Exklusivsperre auf<br />
sysxtypes gelegt.<br />
Wenn -jar angegeben ist, wird eine exklusive Tabellensperre auf<br />
sysjars gelegt.<br />
Berechtigungen Sie müssen Systemadministrator oder Datenbankeigentümer sein,<br />
um installjava auszuführen.<br />
Benutzte Tabellen sysjars, sysxtypes<br />
Siehe auch Befehle remove java<br />
Systemprozeduren sp_helpjava<br />
<strong>Dienstprogramme</strong> extractjava<br />
226 Adaptive Server Enterprise
isql<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Interactive SQL-Parser von Adaptive Server. Standort ist $SYBASE/<br />
ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt isql.exe unter %SYBASE%\<br />
ASE-12_5\bin.<br />
Syntax isql [-b] [-e] [-F] [-p] [-n] [-v] [-X] [-Y] [-Q]<br />
[-a Anzeige-Zeichensatz]<br />
[-A Paketgröße]<br />
[-c Befehlsende]<br />
[-D Datenbank]<br />
[-E Editor]<br />
[-h Header]<br />
[-H Hostname]<br />
[-i Eingabedatei]<br />
[-I Interfaces-Datei]<br />
[-J Client-Zeichensatz]<br />
[-K Keytab-Datei]<br />
[-l Login-Zeitüberschreitung]<br />
[-m Fehlerebene]<br />
[-o Ausgabedatei]<br />
[-P Kennwort]<br />
[-R entfernter_Hauptserver]<br />
[-s Spaltentrennzeichen]<br />
[-S Servername]<br />
[-t Zeitüberschreitung]<br />
-U Benutzername<br />
[-V [Sicherheitsoptionen]]<br />
[-w Spaltenbreite]<br />
[-z Sprachumgebung-Name]<br />
[-Z Sicherheitsmechanismus]<br />
So beenden Sie einen Befehl:<br />
go<br />
So löschen Sie den Abfragepuffer:<br />
reset<br />
So rufen Sie den Standard-Editor auf:<br />
vi<br />
<strong>Dienstprogramme</strong> 227
isql<br />
Parameter -b<br />
So führen Sie einen Betriebssystembefehl aus:<br />
!! Befehl<br />
So beenden Sie isql:<br />
oder<br />
quit<br />
exit<br />
deaktiviert die Anzeige der Tabellen-Header-Ausgabe.<br />
-e<br />
zeigt die Eingabe an (Echo).<br />
-F<br />
aktiviert den FIPS-Flagger. Wenn Sie den -F-Parameter angeben, gibt der<br />
Server eine Meldung zurück, wenn er auf einen Nicht-Standard-SQL-<br />
Befehl stößt. Diese Option deaktiviert nicht die SQL-Erweiterungen. Die<br />
Prozessverarbeitung wird fortgesetzt, wenn Sie den nicht zum ANSI-<br />
Standard gehörenden SQL-Befehl eingeben.<br />
-p<br />
druckt Performance-Statistiken.<br />
-n<br />
-v<br />
entfernt die Nummerierung und das Eingabeaufforderungssymbol (>)<br />
aus Eingabezeilen in der Ausgabedatei, wenn es zusammen mit -e<br />
verwendet wird.<br />
gibt die Versionsnummer und Copyright-Meldung für isql an und<br />
beendet dann.<br />
-X<br />
stellt das Login in dieser Verbindung zum Server mit<br />
Kennwortverschlüsselung durch den Client her. isql (der Client) gibt<br />
dem Server bekannt, dass die Kennwortverschlüsselung gewünscht wird.<br />
Der Server sendet einen Verschlüsselungsschlüssel zurück, den isql zur<br />
Verschlüsselung Ihres Kennworts verwendet, und der Server verwendet den<br />
Schlüssel, um die Zugangserlaubnis Ihres Kennworts zu überprüfen, wenn<br />
es ankommt.<br />
Wenn isql ausfällt, erstellt das System eine Core-Datei, die Ihr Kennwort<br />
enthält. Wenn Sie die Verschlüsselungsoption nicht verwendet haben,<br />
wird Ihr Kennwort als normaler Text in der Datei angezeigt. Wenn Sie<br />
die Verschlüsselungsoption verwenden, ist Ihr Kennwort nicht lesbar.<br />
228 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-Y<br />
weist Adaptive Server an, verkettete Transaktionen zu verwenden.<br />
-Q<br />
stattet Clients mit der Failover-Eigenschaft aus. Weitere Hinweise finden<br />
Sie in der Dokumentation Using <strong>Sybase</strong> Failover in a High Availability<br />
System.<br />
-a Anzeige-Zeichensatz<br />
führt isql von einem Terminal aus, dessen Zeichensatz von dem des<br />
Rechners, auf dem isql läuft, verschieden ist. -a in Verbindung mit -J gibt die<br />
Zeichensatzkonvertierungs-Datei (.xlt-Datei) an, die für die Konvertierung<br />
erforderlich ist. Verwenden Sie -a ohne -J nur dann, wenn der Client-<br />
Zeichensatz mit dem Standardzeichensatz identisch ist.<br />
Hinweis Der ascii_7-Zeichensatz ist mit allen anderen Zeichensätzen<br />
kompatibel. Wenn entweder der Adaptive Server- oder der Clientzeichensatz<br />
auf ascii_7 eingestellt ist, können alle 7-Bit-ASCII-Zeichen unverändert<br />
zwischen Client und Server übermittelt werden. Andere Zeichen erzeugen<br />
Konvertierungsfehler. Weitere Hinweise über Zeichensatz-Konvertierung<br />
finden Sie in der Dokumentation Systemadministration für Adaptive<br />
Enterprise.<br />
-A Paketgröße<br />
gibt die Netzwerk-Paketgröße an, die in dieser isql-Sitzung verwendet<br />
werden soll. Der folgende Befehl zum Beispiel stellt die Paketgröße auf<br />
2048 Byte für die aktuelle isql-Sitzung ein:<br />
isql -A 2048<br />
Um Ihre Netzwerk-Paketgröße zu überprüfen, geben Sie Folgendes ein:<br />
select * from sysprocesses<br />
Der Wert wird unter der Überschrift network_pktsz angezeigt.<br />
Größe muss zwischen den Werten der Konfigurationsparameter default<br />
network packet size und maximum network packet size liegen und ein<br />
Vielfaches von 512 sein.<br />
Verwenden Sie Paketgrößen, die größer als der Standardwert sind,<br />
um I/O-intensive Vorgänge wie zum Beispiel readtext oder writetext<br />
durchzuführen.<br />
Das Einstellen oder das Ändern der Paketgröße von Adaptive Server<br />
wirkt sich auf die Paketgröße eines Remote Procedure Calls nicht aus.<br />
<strong>Dienstprogramme</strong> 229
isql<br />
-c Befehlsende<br />
ändert das Befehlsabschlusszeichen. Standardmäßig sollten Sie Befehle<br />
abschließen und an die Adaptive Server-Installation senden, indem Sie „go“<br />
auf einer eigenen Zeile eingeben. Wenn Sie das Befehlsabschlusszeichen<br />
ändern, dürfen Sie keine reservierten SQL-Wörter oder Steuerungszeichen<br />
verwenden.<br />
-D Datenbank<br />
wählt die Datenbank aus, in der die isql-Sitzung beginnt.<br />
-E Editor<br />
legt einen anderen Editor als den Standard-Editor vi fest.<br />
-h Header<br />
bestimmt die Anzahl der Zeilen, die zwischen den Spaltentiteln gedruckt<br />
werden sollen. Mit der Standardeinstellung werden Überschriften nur<br />
einmal pro Abfrageergebnis ausgegeben.<br />
-H Hostname<br />
legt den Hostnamen des Clients fest.<br />
-i Eingabedatei<br />
gibt den Namen einer Betriebssystemdatei an, die die Eingaben für<br />
isql enthält. Die Datei muss Befehlsabschlusszeichen enthalten<br />
(standardmäßig „go“).<br />
Wenn Sie den Parameter folgendermaßen eingeben, ist er äquivalent zu<br />
< Eingabedatei:<br />
-i Eingabedatei<br />
Wenn Sie -i verwenden und in der Befehlszeile Ihr Kennwort nicht<br />
eingeben, fordert isql Sie zur Eingabe des Kennworts auf.<br />
Wenn Sie < Eingabedatei verwenden und in der Befehlszeile Ihr<br />
Kennwort nicht eingeben, müssen Sie Ihr Kennwort als erste Zeile in<br />
die Eingabedatei einfügen.<br />
-I Interfaces-Datei<br />
gibt den Namen und die Position der Interfaces-Datei an, die durchsucht<br />
werden soll, wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
Wenn Sie für -I keine Angaben machen, sucht isql nach einer Datei namens<br />
interfaces, die sich im von der SYBASE-Umgebungsvariablen<br />
angegebenen Verzeichnis befindet.<br />
230 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. -J Client-<br />
Zeichensatz verlangt, dass Adaptive Server in und von Client-Zeichensatz,<br />
dem auf dem Client verwendeten Zeichensatz, konvertiert. Ein Filter<br />
konvertiert die Eingabe zwischen Client-Zeichensatz und dem Adaptive<br />
Server-Zeichensatz.<br />
-J ohne Argument stellt die Zeichensatzkonvertierung auf NULL. Es findet<br />
keine Konvertierung statt. Verwenden Sie diese Einstellung, wenn Client<br />
und Server denselben Zeichensatz verwenden.<br />
Das Weglassen von -J stellt den Zeichensatz auf einen Standardwert der<br />
Plattform ein. Der Standard ist nicht unbedingt der Zeichensatz, den der<br />
Client verwendet. Weitere Hinweise über Zeichensätze und zugeordnete<br />
Optionen finden Sie in Kapitel 20, „Konfiguration der Client/Server-<br />
Zeichensatzkonvertierung“, in der Dokumentation Systemadministration<br />
für Adaptive Server Enterprise. Die Standardzeichensätze für verschiedene<br />
Plattformen sind folgende:<br />
Plattform Standardzeichensatz<br />
Sun Solaris, Digital UNIX, Pyramid, NCR, RS/6000 iso_1<br />
HP-UX roman8<br />
OS/2, Novell NetWare 386 cp850<br />
Macintosh mac<br />
-K Keytab-Datei<br />
gibt den Pfad zur Keytab-Datei an, die zur Authentifizierung in DCE<br />
verwendet wird.<br />
-l Login-Zeitüberschreitung<br />
legt den maximalen Zeitüberschreitungswert fest, der bei der Verbindung zu<br />
Adaptive Server erlaubt ist. Der Standard beträgt 60 Sekunden. Dieser Wert<br />
wirkt sich nur auf die Zeitspanne aus, in der isql auf den Server wartet, um<br />
auf einen Login-Versuch zu antworten. Um einen Zeitüberschreitungszeitraum<br />
für Prozessverarbeitung festzulegen, verwenden Sie den -t timeout-<br />
Parameter.<br />
-m Fehlerebene<br />
passt die Fehlermeldungsanzeige an. Bei Fehlern mit dem angegebenen<br />
Schweregrad oder höher werden nur die Meldungsnummer, der Status und<br />
die Fehlerebene angezeigt. Der Fehlertext wird weggelassen. Bei Fehlern<br />
unterhalb der angegebenen Fehlerebene erfolgt keine Anzeige.<br />
<strong>Dienstprogramme</strong> 231
isql<br />
-o Ausgabedatei<br />
gibt den Namen einer Betriebssystemdatei an, in der die Eingaben von isql<br />
gespeichert werden sollen. Die Angabe des Parameters als -o Ausgabedatei<br />
entspricht > Ausgabedatei.<br />
-P Kennwort<br />
gibt Ihr Adaptive Server-Kennwort an. Wenn Sie die -P-Option nicht<br />
angeben, fordert isql zur Eingabe eines Kennworts auf. Wenn Ihr Kennwort<br />
NULL ist, verwenden Sie die -P-Option ohne Kennwort.<br />
-R entfernter_Hauptserver<br />
legt den Hauptnamen für den Server fest, wie vom Sicherheitsmechanismus<br />
definiert. Standardmäßig entspricht der Hauptname dem Netzwerknamen<br />
des Servers (der mit dem -S-Parameter oder der DSQUERY-Umgebungsvariablen<br />
angegeben wird). Verwenden Sie den -R-Parameter, wenn der<br />
Hauptname des Servers nicht mit seinem Netzwerknamen übereinstimmt.<br />
-s Spaltentrennzeichen<br />
stellt das Spaltentrennungszeichen neu ein, das standardmäßig leer ist.<br />
Um Zeichen verwenden zu können, die eine spezielle Bedeutung für das<br />
Betriebssystem haben (zum Beispiel „|“, „;“, „&“, „“), schließen Sie<br />
sie in Anführungszeichen ein oder stellen ihnen einen Rückstrich voran.<br />
-S Servername<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll. isql sucht nach diesem Namen in der<br />
Interfaces-Datei. Wenn Sie -S ohne Argument eingeben, sucht ISQL nach<br />
einem Server namens SYBASE. Wenn Sie -S nicht angeben, sucht isql nach<br />
dem Server, der durch Ihre DSQUERY-Umgebungsvariable festgelegt wird.<br />
-t Zeitüberschreitung<br />
legt die Anzahl der Sekunden fest, bevor für den SQL-Befehl eine<br />
Zeitüberschreitung eintritt. Wenn Sie keine Zeitüberschreitung festlegen,<br />
wird ein Befehl ohne Zeitbeschränkung ausgeführt. Das wirkt sich<br />
auf Befehle aus, die von isql ausgegeben werden, und nicht auf die<br />
Verbindungszeit. Die Standard-Zeitüberschreitung zum Anmelden bei<br />
isql beträgt 60 Sekunden.<br />
-U Benutzername<br />
gibt einen Login-Namen an. Login-Namen reagieren auf<br />
Groß/Kleinschreibung.<br />
232 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-V Sicherheitsoptionen<br />
legt eine netzbasierte Benutzer-Authentifizierung fest. Bei dieser Option<br />
muss sich der Benutzer beim Sicherheitssystem des Netzwerks anmelden,<br />
bevor er das Dienstprogramm ausführt. In diesem Fall muss der Benutzer<br />
den Netzwerk-Benutzernamen mit der-U-Option angeben; ein mit der<br />
-P-Option angegebenes Kennwort wird ignoriert.<br />
-V – Auf diesen Parameter kann eine Sicherheitsoptionen-Zeichenfolge<br />
folgen, die Schlüsselzeichen für die Aktivierung zusätzliche<br />
Sicherheitsdienste enthalten. Es gibt folgende Schlüsselzeichen:<br />
c – Datenvertraulichkeitsdienst aktivieren<br />
c – Datenintegritätsdienst aktivieren<br />
m – Gegenseitige Authentifizierung für Verbindungserstellung<br />
aktivieren<br />
c – Abzeichnungsdienst für Datenursprung aktivieren<br />
q – Feststellung von Fehlern in der Sequenzreihenfolge aktivieren<br />
r – Datenwiedergabeermittlung aktivieren<br />
-w Spaltenbreite<br />
stellt die Bildschirmbreite für die Ausgabe ein. Der Standardwert ist<br />
80 Zeichen. Wenn eine Ausgabezeile die maximale Bildschirmbreite<br />
erreicht, wird sie in mehrere Ausgabezeilen umgebrochen.<br />
-z Sprachumgebung-Name<br />
ist der offizielle Name einer Alternativsprache zur Anzeige von isql-<br />
Eingabeaufforderungen und Meldungen. Ohne -z verwendet isql die<br />
Standardsprache des Servers. Sie können einem Adaptive Server-System<br />
während der Installation oder später mit dem langinstall-Dienstprogramm<br />
bzw. mit der gespeicherten Prozedur sp_addlanguage andere Sprachen<br />
hinzufügen.<br />
-Z Sicherheitsmechanismus<br />
legt den Namen eines Sicherheitsmechanismus fest, der bei der Verbindung<br />
verwendet werden soll.<br />
Namen für Sicherheitsmechanismen sind in der Konfigurationsdatei<br />
libtcl.cfg festgelegt, die sich im ini-Unterverzeichnis unterhalb des<br />
<strong>Sybase</strong>-Installationsverzeichnisses befindet. Wenn kein Name für den<br />
Sicherheitsmechanismus angegeben ist, wird der Standardmechanismus<br />
verwendet. Weitere Hinweise zu Namen für den Sicherheitsmechanismus<br />
entnehmen Sie der Beschreibung der libtcl.cfg-Datei in der Dokumentation<br />
Open Client/Server Configuration Guide.<br />
<strong>Dienstprogramme</strong> 233
isql<br />
Beispiele Beispiel 1 Damit wird der Texteditor aufgerufen, in dem Sie die Abfrage<br />
bearbeiten können. Wenn Sie die Datei bearbeitet und gespeichert haben,<br />
kehren Sie zu isql zurück. Die Abfrage wird angezeigt; tippen Sie „go“ auf<br />
eine eigene Zeile, um sie auszuführen:<br />
isql -Ujoe -Pabracadabra<br />
1> select *<br />
2> from authors<br />
3> where city = "Oakland"<br />
4> vi<br />
Beispiel 2 reset löscht den Abfragepuffer. quit bringt Sie zum Betriebssystem<br />
zurück:<br />
isql -Ualma<br />
Password:<br />
1> select *<br />
2> from authors<br />
3> where city = "Oakland"<br />
4> reset<br />
1> quit<br />
Beispiel 3 Gibt an, dass Sie isql auf einem Macintosh gegenüber einem Server<br />
ausführen, der den roman8-Zeichensatz verwendet:<br />
isql -a mac -J roman8<br />
Syntax Verwenden Sie diese Syntax bei isql_r, wenn Sie Thread-Treiber<br />
verwenden.<br />
Verwenden Sie diese Syntax bei isql_dce, wenn Sie Thread-Treiber auf<br />
der IBM-Plattform verwenden.<br />
Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
isql verwenden können.<br />
Die 5701-Servermeldung („changed database“) wird nicht mehr nach<br />
einem Login oder der Ausgabe des use database-Befehls angezeigt.<br />
Das Fehlermeldungsformat unterscheidet sich von den früheren isql-<br />
Versionen. Wenn Sie Skripten haben, die Routinen aufgrund der Werte<br />
dieser Meldungen ausführen, werden Sie sie möglicherweise umschreiben<br />
müssen.<br />
234 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Um isql interaktiv zu verwenden, geben Sie den Befehl isql<br />
(und alle zusätzlichen Parameter) nach der Eingabeaufforderung Ihres<br />
Betriebssystems ein. Das isql-Programm akzeptiert SQL-Befehle und<br />
sendet sie an Adaptive Server. Die Ergebnisse werden formatiert und<br />
als Standardausgabe gesandt. Sie beenden isql mit quit oder exit.<br />
Sie schließen einen Befehl ab, indem Sie das Standard-Befehlsabschlusszeichen<br />
go oder ein anderes Befehlsabschlusszeichen eingeben, wenn der<br />
-c-Parameter verwendet wird. Sie können dem Befehlsabschlusszeichen<br />
eine Gesamtzahl anfügen, um anzugeben, wie oft der Befehl ausgeführt<br />
werden soll. Um den Befehl zum Beispiel 100 Mal auszuführen, geben<br />
Sie Folgendes ein:<br />
select x = 1<br />
go 100<br />
Die Ergebnisse werden am Ende der Ausführung einmal angezeigt.<br />
Wenn Sie eine Option mehr als einmal in der Befehlszeile angeben,<br />
verwendet isql den letzten Wert. Wenn Sie zum Beispiel den folgenden<br />
Befehl eingeben, überschreibt „send“, der zweite Wert für -c, „.“,<br />
den ersten Wert:<br />
isql -c"." -csend<br />
Dadurch können Sie etwaige Aliasnamen aufheben, die Sie<br />
eingerichtet haben.<br />
Um einen Editor für den aktuellen Abfragepuffer aufzurufen, geben Sie<br />
seinen Namen als erstes Wort in einer Zeile ein. Definieren Sie Ihren<br />
bevorzugten aufrufbaren Editor, indem Sie ihn mit der EDITOR-<br />
Umgebungsvariable angeben. Wenn EDITOR nicht definiert ist,<br />
ist der Standardwert vi.<br />
Sie führen Betriebssystembefehle aus, indem Sie eine Zeile mit „!!“,<br />
gefolgt vom Befehl, beginnen. So rufen Sie auch Alternativ-Editoren<br />
auf, ohne EDITOR zu definieren.<br />
Um einen vorhandenen Abfragepuffer zu löschen, geben Sie reset in einer<br />
eigenen Zeile ein. isql verwirft etwaige noch ausstehende Eingaben.<br />
Sie können auch Strg-c an einer beliebigen Stelle in einer Zeile drücken.<br />
Dies bricht die aktuelle Abfrage ab und bringt den Benutzer zur isql-<br />
Eingabeaufforderung zurück.<br />
Mit dem folgenden Befehl lesen Sie eine Betriebssystemdatei ein,<br />
die eine Abfrage zur Ausführung von isql enthält:<br />
isql -U alma -PKennwort < Eingabedatei<br />
<strong>Dienstprogramme</strong> 235
isql<br />
Die Datei muss ein Befehlsabschlusszeichen enthalten. Die Ergebnisse<br />
werden auf Ihrem Terminal angezeigt. Mit dem folgenden Befehl lesen Sie<br />
eine Betriebssystemdatei ein, die eine Abfrage enthält, und übermitteln die<br />
Ergebnisse an eine andere Datei:<br />
isql -U alma -PKennwort < Eingabedatei ><br />
Ausgabedatei<br />
isql-Optionen beachten Groß/Kleinschreibung.<br />
isql zeigt nur 6 Stellen von float- oder real-Daten nach<br />
dem Dezimalzeichen an und rundet den Rest.<br />
Wenn Sie isql interaktiv verwenden, lesen Sie eine Betriebssystemdatei<br />
mit folgendem Befehl in den Befehlspuffer ein:<br />
:r Dateiname<br />
Geben Sie kein Befehlsabschlusszeichen in die Datei ein; sobald Sie mit<br />
der Bearbeitung fertig sind, geben Sie das Abschlusszeichen auf eine<br />
eigene Zeile interaktiv ein.<br />
Sie können Kommentare in eine Transact-SQL-Anweisung einfügen,<br />
die an Adaptive Server von isql übermittelt wird. Leiten Sie einen<br />
Kommentar mit „/*“ ein. Schließen Sie ihn mit „*/“, wie im folgenden<br />
Beispiel gezeigt:<br />
select au_lname, au_fname<br />
/*Zu- und Vorname der Autoren abrufen*/<br />
from authors, titles, titleauthor<br />
where authors.au_id = titleauthor.au_id<br />
and titles.title_id = titleauthor.title_id<br />
/*das ist ein Dreifach-Join, der Autoren<br />
**mit den Büchern verknüpft, die sie geschrieben<br />
haben.*/<br />
Wenn Sie einen go-Befehl kommentieren, sollte er nicht am Anfang der<br />
Zeile stehen. Löschen Sie zum Beispiel den Kommentar aus dem go-<br />
Befehl, indem Sie Folgendes eingeben:<br />
/*<br />
**go<br />
*/<br />
Folgendes dürfen Sie nicht verwenden:<br />
/*<br />
go<br />
*/<br />
236 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Siehe auch In Kapitel 2, „Das isql-Dienstprogramm verwenden“ finden Sie weitere<br />
Hinweise zu isql.<br />
langinstall<br />
In der Dokumentation <strong>Sybase</strong> Adaptive Server Enterprise Reference Manual<br />
finden Sie weitere Hinweise über die Konfigurationsparameter default network<br />
packet size und maximum network packet size.<br />
Befehle create schema, set<br />
Datentyp exact numeric datatypes<br />
System ESP xp_sendmail<br />
Systemprozeduren sp_addlanguage, sp_addlogin, sp_addremotelogin,<br />
sp_add_resource_limit, sp_bindexeclass, sp_configure, sp_defaultlanguage,<br />
sp_droplanguage, sp_helplanguage, sp_processmail, sp_remoteoption,<br />
sp_serveroption, sp_showcontrolinfo, sp_unbindexeclass, sp_volchanged<br />
Beschreibung Installiert eine neue Spracheinstellung in Adaptive Server. Standort ist<br />
$SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt langinst.exe unter<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax langinstall<br />
[-S Server]<br />
[-U Benutzer]<br />
[-I Interfaces-Datei]<br />
[-P Kennwort]<br />
[-R Versionsnummer]<br />
[-I Pfad_zu_Interfaces-Datei]<br />
Sprache<br />
Zeichensatz<br />
Oder<br />
langinstall -v<br />
Parameter -S Server<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll. Wenn Sie -S nicht angeben, verwendet<br />
langinstall den Server, der durch Ihre DSQUERY-Umgebungsvariable<br />
festgelegt wird. Wenn DSQUERY nicht eingestellt ist, versucht langinstall,<br />
mit einem Server namens SYBASE zu verbinden.<br />
<strong>Dienstprogramme</strong> 237
langinstall<br />
-U Benutzer<br />
gibt einen Login-Namen an. Login-Namen reagieren auf Groß/<br />
Kleinschreibung.<br />
-I Interfaces-Datei<br />
gibt den Namen und den Standort der Interfaces-Datei (sql.ini in<br />
Windows NT) an, die langinstall bei der Verbindungsaufnahme mit Adaptive<br />
Server sucht. Wenn Sie für -I keine Angaben machen, sucht langinstall<br />
nach der Interfaces-Datei im von der SYBASE-Umgebungsvariablen<br />
angegebenen Verzeichnis. Wenn SYBASE nicht eingestellt ist,<br />
sucht langinstall nach dem Standard-SYBASE-Verzeichnis.<br />
-P Kennwort<br />
ist das Kennwort des Systemadministrators („sa“-Konto). Wenn Sie<br />
-P weglassen, fordert Sie langinstall zur Eingabe des „sa“-Konto-<br />
Kennworts auf.<br />
-R Versionsnummer<br />
legt die Versionsnummer fest, im Format n.n.n, die verwendet wird, um<br />
Meldungen in master..sysmessages umzustellen. Verwenden Sie -R nur,<br />
wenn Fehler auftreten, wenn beispielsweise langinstall (langinst in<br />
Windows NT) nicht ausgeführt werden kann oder wenn Benutzerfehler<br />
auftreten; oder wenn Sie annehmen, dass die Ursache der Fehler auf<br />
veraltete Meldungen in sysmessages zurückzuführen ist.<br />
Der -R-Parameter teilt langinstall mit, Meldungen aus einer früheren<br />
Version als der aktuellen abzurufen. langinstall vergleicht die vorhandenen<br />
Meldungen mit denen, die installiert werden sollen und ersetzt alle, die sich<br />
geändert haben.<br />
Wenn zum Beispiel die aktuellste Version 12.5 ist und die vorherige 12.0<br />
war, Sie aber glauben, dass sysmessages möglicherweise nicht korrekt ist,<br />
dann können Sie Meldungen aus der vorherigen Version (in diesem<br />
Fall 12.0) in die syslanguages.upgrade-Spalte aufnehmen, indem Sie<br />
-R 12.0 angeben. langinstall installiert dann alle Meldungen aus Adaptive<br />
Server 12.0.<br />
-I Pfad_zu_Interfaces-Datei<br />
gibt den Pfad zur Interfaces-Datei an.<br />
Sprache<br />
ist der offizielle Name der Sprache, die installiert werden soll. Sie müssen<br />
eine Sprache angeben.<br />
238 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Zeichensatz<br />
ist der Name des Standard-Zeichensatzes der Adaptive Server-Installation.<br />
Zeichensatz zeigt den Verzeichnisnamen der Lokalisierungsdateien für die<br />
Sprache an. Die common.loc- und server.loc-Lokalisierungsdateien für eine<br />
offizielle Sprache befinden sich im Zeichensatzverzeichnis $SYBASE/<br />
locales/language/character_set auf UNIX-Plattformen bzw. unter<br />
%sybase%\locales\language\character_set in Windows NT. Sie müssen<br />
einen Zeichensatz angeben.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für langinstall an und<br />
beendet dann.<br />
Syntax Das Adaptive Server-Installationsprogramm führt langinstall automatisch<br />
bei einer neuen Installation sowie für Benutzer aus, die ein Upgrade einer<br />
früheren Version durchführen.<br />
langinstall führt Folgendes durch:<br />
Die spezifischen Sprachinformationen werden in<br />
master..syslanguages mittels sp_addlanguage hinzugefügt. Wenn die<br />
Sprache bereits existiert, aktualisiert langinstall die entsprechende<br />
Zeile in syslanguages.<br />
Falls erforderlich werden Meldungen aus master..sysmessages<br />
hinzugefügt, aktualisiert und gelöscht.<br />
syslanguages.update, wird aktualisiert, indem die neue<br />
Versionsnummer eingefügt wird.<br />
langinstall überprüft die Einträge, die in den verwendeten<br />
Lokalisierungsdateiabschnitten gefunden werden. Wenn etwas fehlt,<br />
gibt langinstall eine Fehlermeldung aus und fügt die Sprache syslanguages<br />
nicht hinzu.<br />
langinstall vergleicht die Versionsnummern der beiden verwendeten<br />
Lokalisierungsdateien common.loc und server.loc. Wenn sie<br />
nicht übereinstimmen, wird eine Warnmeldung ausgegeben.<br />
syslanguages.upgrade ist immer entsprechend der Versionsnummer<br />
in server.loc eingestellt.<br />
<strong>Dienstprogramme</strong> 239
optdiag<br />
Berechtigungen Nur ein Systemadministrator, der das „sa“-Konto verwendet, kann langinstall<br />
ausführen.<br />
Benutzte Tabellen master.dbo.syslanguages, master.dbo.sysmessages<br />
Siehe auch Systemprozeduren sp_addlanguage, sp_addlogin, sp_configure,<br />
sp_defaultlanguage, sp_droplanguage, sp_helplanguage<br />
optdiag<br />
<strong>Dienstprogramme</strong> defncopy, srvbuild<br />
Beschreibung Zeigt Optimiererstatistiken an oder lädt die aktualisierte Statistik in<br />
Systemtabellen. Standort ist $SYBASE/ASE-12_5/bin.<br />
Windows NT Das Dienstprogramm heißt optdiag.exe unter<br />
%SYBASE%\ASE-12_5\bin.<br />
Syntax optdiag [binary] [simulate] statistics<br />
{ -i Eingabedatei |<br />
Datenbank[.Eigentümer[.[Tabelle[.Spalte]]]][-o Ausgabedatei] }<br />
[-U Benutzername]<br />
[-P Kennwort]<br />
[-T Trace-Wert]<br />
[-I Interfaces-Datei]<br />
[-S Server]<br />
[-v]<br />
[-h]<br />
[-s]<br />
[-z Sprache ]<br />
[-J Client-Zeichensatz]<br />
[-a Anzeige-Zeichensatz]<br />
Parameter binary<br />
extrahiert die Statistik in lesbarer Form oder im Binärdatenformat.<br />
Bei Verwendung mit einer Eingabedatei (-i Eingabedatei) wird die binäre<br />
Statistik in Systemtabellen geladen.<br />
simulate<br />
gibt an, dass optdiag eine simulierte Statistik anzeigt oder lädt. Weitere<br />
Hinweise finden Sie in der Dokumentation Performance and Tuning Guide.<br />
-i Eingabedatei<br />
gibt den Namen einer Betriebssystemdatei an, die die Eingaben für<br />
optdiag enthält. Das Angeben einer Eingabedatei bewirkt, dass optdiag die<br />
Optimiererstatistik für die Tabelle oder Spalte aktualisiert, indem die Werte<br />
in der angegebenen Datei verwendet werden (auch „Eingabemodus“<br />
genannt).<br />
240 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Datenbank<br />
ist der Name der Datenbank, deren Statistik Sie anzeigen wollen.<br />
Im Eingabemodus verwendet optdiag den Datenbanknamen, wie er in der<br />
Datei angegeben ist, und akzeptiert nicht den Datenbanknamen von der<br />
Befehlszeile.<br />
Eigentümer<br />
ist der Name eines Tabelleneigentümers.<br />
Wenn Sie im Anzeigen-Modus keinen Eigentümer angeben, aber einen<br />
Tabellennamen angeben, zeigt optdiag die Ausgabe für alle Eigentümer<br />
einer Tabelle an.<br />
Im Eingabemodus ignoriert optdiag den in der Befehlszeile<br />
angegebenen Tabelleneigentümer und verwendet den Wert in der<br />
Eingabedatei.<br />
Tabelle<br />
ist der Name der Tabelle, deren Statistik erstellt wird.<br />
Wenn der Befehl keinen Eigentümer- oder Tabellennamen enthält,<br />
zeigt optdiag die Statistik für alle Tabellen in der Datenbank an.<br />
Wenn der Befehl einen Eigentümernamen aber keinen Tabellennamen<br />
anführt, zeigt optdiag alle Tabellen an, die dem angegebenen<br />
Eigentümer gehören.<br />
Im Eingabemodus ignoriert optdiag den in der Befehlszeile<br />
angegebenen Tabellennamen und verwendet den Wert aus der<br />
Eingabedatei.<br />
Spalte<br />
ist der Name der Spalte, deren Statistik erstellt wird.<br />
Wenn der Befehl keinen Spaltennamen enthält, zeigt optdiag die<br />
gesamte Statistik für eine Tabelle an.<br />
Im Eingabemodus ignoriert optdiag den in der Befehlszeile<br />
angegebenen Spaltennamen und verwendet die Werte aus der<br />
Eingabedatei.<br />
-o Ausgabedatei<br />
gibt den Namen einer Betriebssystemdatei an, in der die Eingaben von<br />
optdiag gespeichert werden sollen. Wenn bereits eine Datei mit diesem<br />
Namen existiert, überschreibt optdiag diese Datei, ohne eine Warnung<br />
auszugeben.<br />
<strong>Dienstprogramme</strong> 241
optdiag<br />
-U Benutzername<br />
gibt einen Adaptive Server-Login-Namen an.<br />
-P Kennwort<br />
gibt Ihr Adaptive Server-Kennwort an. Wenn Sie die -P-Option nicht<br />
angeben, fordert optdiag zur Eingabe eines Kennworts auf.<br />
-T Trace-Wert<br />
setzt Trace-Flags für die optdiag-Sitzung. Die optdiag-Trace-Flags sind die<br />
folgenden:<br />
Optionswert Bedeutung<br />
1 Nicht mit einer Warnmeldung unterbrechen, wenn die optdiag-Version der<br />
verwendeten Adaptive Server-Installation nicht mit der Adaptive Server-Version<br />
in der Eingabedatei übereinstimmt.<br />
2 Statusmeldung „Nächste Tabelle ist Tabellenname“, wenn im Eingabemodus.<br />
4 Konsistenzprüfung der Schrittnummern beim Laden von Histogrammen im<br />
Eingabemodus überspringen.<br />
6 Zeilen der Eingabedatei während des Eingabemodus anzeigen. Diese Option hat im<br />
Anzeigemodus keine Auswirkung.<br />
-I Interfaces-Datei<br />
gibt Namen und Position der Interfaces-Datei an, die verwendet werden soll,<br />
wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
Wenn Sie -I nicht verwenden und einen Interfaces-Dateinamen angeben,<br />
sucht optdiag nach der Interfaces-Datei (interfaces in UNIX), im Verzeichnis,<br />
das durch die SYBASE-Umgebungsvariable festgelegt ist. In Windows NT<br />
sucht optdiag nach einer Datei namens sql.ini im ini-Unterverzeichnis des<br />
<strong>Sybase</strong>-Installationsverzeichnisses (d:\sybase). Wenn SYBASE nicht<br />
eingestellt ist, sucht optdiag nach der Datei im Standard-$SYBASE-<br />
Verzeichnis (%SYBASE% in Windows NT).<br />
-S Server<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die Verbindung<br />
hergestellt werden soll. optdiag sucht nach diesem Name in der interfaces-<br />
Datei (sql.ini in Windows NT).<br />
Wenn Sie -S ohne Angabe eines Servernamens verwenden,<br />
sucht optdiag nach einem Server namens SYBASE.<br />
Wenn Sie -S nicht verwenden, sucht optdiag nach dem Server,<br />
den Ihre DSQUERY-Umgebungsvariable angibt.<br />
242 Adaptive Server Enterprise
-v<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
zeigt die Versionsnummer und Copyright-Meldung für optdiag an und<br />
beendet dann.<br />
-h<br />
zeigt die optdiag-Syntaxhilfe an.<br />
-s<br />
-v<br />
bezieht Systemtabellen in die optdiag-Ausgabe ein. Standardmäßig werden<br />
nur Benutzertabellen aufgenommen.<br />
zeigt die Versionsnummer und Copyright-Meldung für optdiag an und<br />
beendet dann.<br />
-h<br />
zeigt die optdiag-Syntaxhilfe an.<br />
-s<br />
bezieht Systemtabellen in die optdiag-Ausgabe ein. Standardmäßig werden<br />
nur Benutzertabellen aufgenommen.<br />
-z Sprache<br />
ist der offizielle Name einer Alternativsprache, die der Server für<br />
Datumsformate und zur Anzeige von optdiag-Eingabeaufforderungen<br />
und Meldungen verwendet. Ohne die -z-Option verwendet optdiag die<br />
Standardsprache des Servers.<br />
Sie können Adaptive Server-Sprachen während oder nach der Installation<br />
hinzufügen. Nach der Installation des Adaptive Server-Systems verwenden<br />
Sie entweder das langinstall-Dienstprogramm oder die gespeicherte<br />
Prozedur sp_addlanguage, um eine Sprache hinzuzufügen.<br />
-J Client-Zeichensatz<br />
gibt den Zeichensatz an, der auf dem Client verwendet wird. Ein Filter<br />
konvertiert die Eingabe zwischen Client-Zeichensatz und dem Adaptive<br />
Server-Zeichensatz.<br />
Indem Sie -J Client-Zeichensatz verwenden, fordern Sie Adaptive Server<br />
auf, Daten in und von Client-Zeichensatz, dem Zeichensatz des Clients,<br />
zu konvertieren.<br />
Indem Sie -J ohne einen Zeichensatznamen verwenden, geben Sie<br />
Zeichensatzkonvertierung als NULL an, und keine Konvertierung findet<br />
statt. Verwenden Sie -J alleine, wenn der Client und der Server denselben<br />
Zeichensatz verwenden.<br />
<strong>Dienstprogramme</strong> 243
optdiag<br />
Indem Sie -J weglassen, stellen Sie den Zeichensatz auf den Standardwert<br />
der Plattform ein. Ein Filter konvertiert die Eingabe zwischen dem<br />
Standardzeichensatz und dem Adaptive Server-Zeichensatz. Beachten Sie,<br />
dass der Standardwert nicht unbedingt der Zeichensatz ist, den der Client<br />
verwendet.<br />
Weitere Hinweise über Zeichensätze und ihre zugeordnete Optionen finden<br />
Sie in der Dokumentation Systemadministration für Adaptive Server<br />
Enterprise.<br />
-a Anzeige-Zeichensatz<br />
führt optdiag von einem Terminal aus, dessen Zeichensatz von dem des<br />
Rechners, auf dem optdiag läuft, verschieden ist.<br />
-a in Verbindung mit -J gibt die Zeichensatzkonvertierungs-Datei (.xlt)<br />
an, die für die Konvertierung erforderlich ist.<br />
Verwenden Sie -a ohne -J nur dann, wenn der Client-Zeichensatz mit<br />
dem Standardzeichensatz identisch ist.<br />
Hinweis Der ascii_7-Zeichensatz ist mit allen anderen Zeichensätzen<br />
kompatibel. Wenn entweder der Adaptive Server- oder der Clientzeichensatz<br />
auf ascii_7 eingestellt ist, können alle 7-Bit-ASCII-Zeichen unverändert<br />
zwischen Client und Server übermittelt werden. Andere Zeichen erzeugen<br />
Konvertierungsfehler. Weitere Hinweise über Zeichensatzkonvertierung<br />
finden Sie in der Dokumentation Systemadministration für Adaptive<br />
Enterprise.<br />
Beispiele Beispiel 1 Zeigt die Statistik für alle Benutzertabellen in der pubs2-Datenbank<br />
an und platziert die Ausgabe in die pubs2.opt-Datei:<br />
optdiag statistics pubs2 -Usa -Ppasswd -o pubs2.opt<br />
Beispiel 2 Zeigt die Statistik für die titles-Tabelle an:<br />
optdiag statistics pubs2..titles -Usa -Ppasswd -o titles.opt<br />
Beispiel 3 Zeigt die Statistik im roman8-Zeichensatz mit Zeilen-Labels und<br />
Fehlermeldungen auf Französisch an:<br />
optdiag statistics pubs2..titles -Usa -Ppasswd -o titles.opt -J roman8<br />
-z french<br />
Beispiel 4 Zeigt Binärdaten-Statistik für die price-Spalte in der titles-<br />
Tabelle an:<br />
optdiag binary statistics pubs2..titles.price -Usa -Ppasswd -o price.opt<br />
244 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beispiel 5 Lädt eine bearbeitete Statistik aus der price.opt-Datei:<br />
optdiag statistics -i price.opt -Usa -Ppasswd<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
optdiag verwenden können.<br />
Standardmäßig bezieht optdiag nicht die Systemtabellen ein, wenn Sie<br />
die Statistik für eine Datenbank anzeigen. Um die Systemtabellen in die<br />
Ausgabe aufzunehmen, verwenden Sie die -s-Option.<br />
Wenn Sie den binary-Modus verwenden, zeigt optdiag Werte in lesbarer<br />
Form mit Kommentarmarken (#) am Anfang der Ausgabezeilen an,<br />
wie im folgenden Beispiel:<br />
Statistics for column: "price"<br />
Last update of column statistics: Jan 20 1998 7:16PM<br />
Statistics loaded from Optdiag.<br />
Range cell density: 0x3f8b9cfefece26bf<br />
# Range cell density: 0.0134830400000000<br />
Total density: 0x3f8b9cfefece26bf<br />
# Total density: 0.0134830400000000<br />
Range selectivity: default used (0.33)<br />
# Range selectivity: default used (0.33)<br />
In between selectivity: default used (0.25)<br />
# In between selectivity: default used (0.25)<br />
Wenn Sie optdiag mit einer Eingabedatei verwenden, um die Statistik zu<br />
ändern, werden alle Zeichen nach dem „#“ in einer Ausgabezeile ignoriert.<br />
Das Konvertieren von Gleitkomma-Werten führt möglicherweise zu<br />
Rundungsfehlern, wenn Sie Dateien für die Eingabe verwenden.<br />
Wenn Sie die Statistik auf dieselbe Hardware-Plattform laden, sollten Sie<br />
die Statistik bearbeiten, indem Sie die Binärdatenwerte verwenden,<br />
um eine größere Genauigkeit zu erreichen.<br />
<strong>Dienstprogramme</strong> 245
optdiag<br />
Byte-Sortierfolge und binäre optdiag-Dateien<br />
Verwenden Sie nicht die binary-Modusoption, um eine Statistik<br />
zwischen Adaptive Server-Installationen auf Rechner zu verschieben,<br />
die verschiedene Byte-Sortierfolgen verwenden.<br />
Auf einem inkompatiblen Architektur-Server sollten Sie immer die<br />
Binärdaten-Statistik als Kommentar darstellen und die Statistik in<br />
lesbarer Form laden.<br />
Auf einem Server mit kompatibler Architektur können Sie entweder<br />
Binärdaten-Statistik oder Statistik in lesbarer Form laden.<br />
Eingabemodus<br />
Wenn Sie die -i Eingabedatei-Syntax verwenden, liest optdiag die benannte<br />
Datei und aktualisiert die Statistik in sysstatistics.<br />
optdiag-Eingabemodus ändert den Konfigurationsparameter allow update<br />
to system tables, indem der Parameter auf 1 am Anfang der Sitzung<br />
eingestellt wird, und dann auf 0 am Ende der Sitzung.<br />
Während der Histogramm-Eingabe überprüft der Prozess die folgenden<br />
Regeln und zeigt Fehlermeldungen für jede verletzte Regel an:<br />
Die Schrittnummern müssen monoton erhöht werden, außer der<br />
Befehl enthält die -T4-Trace-Flag.<br />
Der Spaltenwert für die Schritte muss monoton ansteigen.<br />
Die Gewichtung für jede Zelle muss zwischen 0.0 und 1.0 liegen.<br />
Die Summe der Gewichtungen bei einer Spalte muss nahe bei<br />
1.0 liegen.<br />
Die erste Zelle stellt Nullwerte dar und muss vorhanden sein, sogar<br />
bei Spalten, die keine Nullwerte zulassen. Es muss eine Zelle geben,<br />
um den Nullwert darzustellen.<br />
Zwei benachbarte Zellen dürfen nicht beide den
pwdcrypt<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Erstellt und schreibt ein verschlüsseltes LDAP-Kennwort in der Datei<br />
libtcl.cfg. pwdcrypt befindet sich unter $SYBASE/$SYBASE_OCS/bin.<br />
Syntax pwdcrypt<br />
Parameter Keine<br />
Windows NT Das Dienstprogramm befindet sich unter<br />
%SYBASE%\%SYBASE_OCS%\bin.<br />
Beispiele Die Eingabe von pwdcrypt an der Eingabeaufforderung gibt die Anforderung<br />
zurück, Ihr Kennwort zweimal einzugeben, woraufhin pwdcrypt das LDAP-<br />
Kennwort zurückgibt:<br />
pwdcrypt<br />
Enter password please: Kennwort<br />
Enter password again : Kennwort<br />
The encrypted password:<br />
0x01312a775ab9d5c71f99f05f7712d2cded288d0ae1ce79268d0e8669313d1bc4c706<br />
Ersetzen Sie den letzten Teil der LDAP-URL in libtcl.cfg mit diesem<br />
verschlüsselten Kennwort:<br />
ldap=libdldap.so<br />
ldap://dolly:389/dc=sybase,dc=com????bindname=cn=Manager,dc=sybase,dc=com?<br />
0x01312a775ab9d5c71f99f05f7712d2cded288d0ae1ce79268d0e8669313d1bc4c706<br />
Ein nicht-verschlüsseltes Kennwort sieht folgendermaßen aus:<br />
ldap=libdldap.so<br />
ldap://dolly:389/dc=sybase,dc=com????bindname=cn=Manager,dc=sybase,dc=com?<br />
secret<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der aktuellen<br />
Version der Adaptive Server-Installation einstellen, bevor Sie pwdcrypt<br />
verwenden können.<br />
Berechtigungen Sie müssen Datei-Systemberechtigungen verwenden, um den nicht<br />
autorisierten Zugriff auf das verschlüsselte Kennwort in Ihrer libtcl.cfg-Datei<br />
zu verhindern.<br />
<strong>Dienstprogramme</strong> 247
showserver<br />
showserver<br />
Beschreibung Nur UNIX-Plattformen Zeigt die Adaptive Server- und Backup Server-<br />
Installationen an, die derzeit auf dem lokalen Rechner ausgeführt werden;<br />
steht nur für UNIX-Plattformen zur Verfügung. showserver befindet sich<br />
unter $SYBASE/ASE-12_5/install.<br />
Syntax showserver<br />
Parameter Keine<br />
Beispiele<br />
showserver<br />
USER PID %CPU %MEM SZ RSS TT STAT START TIME COMMAND<br />
user114276 0.0 1.7 712 1000 ? S Apr 5514:05 dataserver<br />
-d greensrv.dat -sgreensrv -einstall/greensrv+_errorlog<br />
sybase 1071 0.0 1.4 408 820 ? S Mar 28895:38<br />
/usr/local/sybase/bin/dataserver -d/dev/rsd1f -e/install/errorlog<br />
user128493 0.0 0.0 3692 0 ? IW Apr 1 0:10 backupserver -SSYB_BACKUP<br />
-e/install/backup.log -Iinterfaces -Mbin/sybmultbuf -Lus_english -Jiso_1<br />
Syntax showserver gibt Prozessinformationen über Adaptive Server oder Backup<br />
Server aus. Wenn keine Server laufen, wird nur der Header angezeigt.<br />
Siehe auch Befehle dataserver, startserver<br />
Funktion – host_name<br />
<strong>Dienstprogramme</strong> langinstall<br />
248 Adaptive Server Enterprise
sqldbgr<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung sqldbgr ist ein Befehlszeilenprogramm, das gespeicherte Prozeduren und<br />
Trigger auf Fehler untersucht. Wie mit vielen Fehlersuchprogrammen können<br />
Sie Folgendes durchführen:<br />
sqldbgr an eine Aufgabe anhängen<br />
Breakpoints festlegen, aktivieren und deaktivieren<br />
Eine Aufgabe zeilenweise abarbeiten<br />
Prozeduren starten und verlassen<br />
sqldbgr aus gespeicherten Prozeduren oder Triggern lösen, wenn die<br />
Fehlersuche beendet ist.<br />
UNIX-Plattformen sqldbgr befindet sich unter $SYBASE/ASE-12_5/bin.<br />
Windows NT sqldbgr befindet sich unter %SYBASE%\ASE-12_5\bin.<br />
Syntax sqldbgr<br />
-U Benutzername<br />
-PKennwort<br />
-S Host:Port<br />
Parameter -U Benutzername<br />
gibt den Benutzernamen an. Sie müssen eine Leerstelle zwischen -U und<br />
Benutzername einfügen.<br />
-P Kennwort<br />
gibt das Kennwort des Benutzers an. Sie müssen eine Leerstelle zwischen -P<br />
und Kennwort einfügen.<br />
-S Host:Port<br />
gibt den Rechnernamen und die Portnummer an. Sie müssen eine Leerstelle<br />
zwischen -S und Host:Port einfügen.<br />
Beispiele Beispiel 1 Dieses Beispiel zeigt sqldbgr bei der Fehlersuche in gespeicherten<br />
Prozeduren und Triggern auf Host MERCURY:<br />
$SYBASE/ASE-12_5/bin/sqldbgr -U sa -P -S MERCURY:16896<br />
(sqldbg) stop in sp_who<br />
Breakpoint moved to line 20<br />
(sqldbg) run sp_who<br />
(sp_who::20)if @@trancount = 0<br />
(sqldbg) next<br />
(sp_who::22) set chained off<br />
(sqldbg) cont<br />
<strong>Dienstprogramme</strong> 249
sqldbgr<br />
fid spid status loginame origname hostname blk_spid dbname cmd block_xloid<br />
0 2 sleeping NULL NULL 0 master NETWORK HANDLER 0<br />
0 3 sleeping NULL NULL 0 master NETWORK HANDLER 0<br />
0 4 sleeping NULL NULL 0 master DEADLOCK TUNE 0<br />
0 5 sleeping NULL NULL 0 master MIRROR HANDLER 0<br />
0 6 sleeping NULL NULL 0 master ASTC HANDLER 0<br />
0 7 sleeping NULL NULL 0 master ASTC HANDLER 0<br />
0 8 sleeping NULL NULL 0 master CHECKPOINT SLEEP 0<br />
0 9 sleeping NULL NULL 0 master HOUSEKEEPER 0<br />
0 10 running sa sa 0 master SELECT 0<br />
0 11 sleeping sa sa<br />
(sqldbg) show breakpoints<br />
1 stop in sp_who<br />
(sqldbg)<br />
Beispiel 2 Hier meldet sich der Systemadministrator bei Adaptive Server<br />
mittels isql an und startet sqldbgr von der Befehlszeile aus, um bei einer<br />
gespeicherten Prozedur Fehler zu suchen, die in einer anderen Task läuft:<br />
$SYBASE/$SYBASE_OCS/bin/isql -U sa -P<br />
1> select @@spid<br />
2> go<br />
------<br />
12<br />
1><br />
$SYBASE/ASE-12_5/bin/sqldbgr -U sa -P -S MERCURY:16896<br />
(sqldbg) attach 13<br />
The spid is invalid<br />
(sqldbg) attach 12<br />
(sqldbg) show breakpoints<br />
(sqldbg) stop in sp_who<br />
Breakpoint moved to line 20<br />
(sqldbg) /* jetzt führen Sie die sp_who-Prozedur von spid 12 aus */<br />
(sqldbg) where<br />
(sp_who::20::@loginname = )<br />
(ADHOC::1::null)<br />
(sqldbg) next<br />
(sp_who::22) set chained off<br />
(sqldbg) next<br />
(sp_who::25)set transaction isolation level 1<br />
(sqldbg) cont<br />
(sqldbg) /* jetzt wird das sp_who-Ergebnis auf dem isql-Bildeschirm<br />
angezeigt */<br />
(sqldbg) detach 12<br />
(sqldbg)<br />
250 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Syntax Der sql-Befehl wird im Kontext der auf Fehler behandelten Aufgabe<br />
durchgeführt, während der mysql-Befehl im Kontext der Fehlersuchaufgabe<br />
ausgeführt wird. Die Einstellung von sitzungsspezifischen<br />
Informationen, beispielsweise für set quoted_identifier on über sql<br />
funktioniert nicht.<br />
Der <strong>Sybase</strong> jConnect JDBC-Treiber verwendet standardmäßig set<br />
quoted_identifier on. Da das sqldbgr-Dienstprogramm mit jConnect-<br />
Argumenten, die Anführungszeichen erfordern, aufgebaut ist,<br />
verwenden Sie bei der Eingabe von Optionen Apostrophe anstelle<br />
von Anführungszeichen. Verwenden Sie beispielsweise sp_configure<br />
'allow update' anstelle von sp_configure "allow update".<br />
Bevor Sie sqldbgr ausführen können, müssen Sie die Umgebung<br />
SYBASE_JRE oder JAVA_HOME auf den Standort einstellen,<br />
der die Java-Ausführungsumgebung enthält.<br />
Wenn Sie sqldbgr an der Befehlseingabeaufforderung aufrufen, startet das<br />
Dienstprogramm und die Eingabeaufforderung ändert sich in eine sqldbgr-<br />
Eingabeaufforderung:<br />
(sqldbgr)<br />
Sobald die (sqldbgr)-Eingabeaufforderung angezeigt wird, können Sie<br />
die folgenden sqldbgr-Befehle eingeben, um die gewünschten Aufgaben<br />
durchzuführen:<br />
Tabelle 8-4: sqldbgr-Befehle und ihre Beschreibung<br />
Befehl Beschreibung<br />
attach spid Hängt an sqldbgr eine Aufgabe an, wenn Sie bereits bei Adaptive Server<br />
angemeldet sind.<br />
Hinweis Sie können attach spid nicht verwenden, um an eine Prozedur anzuhängen,<br />
die nicht läuft.<br />
sqldbgr kann nicht in einer Sitzung bei mehreren Aufgaben Fehler beheben. Wenn Sie<br />
versuchen, das Dienstprogramm an mehrere Aufgaben anzuhängen, bleibt die erste<br />
spid weiterhin als angehängt markiert. Da Sie nicht an eine bereits angehängte spid<br />
anhängen können, müssen Sie den detach-Befehl verwenden und dann an eine andere<br />
spid anhängen.<br />
run Prozedurname Fehlerbehebung bei gespeicherten Prozeduren und Triggern, ohne sqldbgr an eine<br />
vorhandene Aufgabe anzuhängen.<br />
Wenn Sie versuchen, run Prozedurname auszuführen, während Sie bereits bei einer<br />
vorhandenen Aufgabe mit attach spid Fehler beheben, schlägt run Prozedurname<br />
fehl und Sie erhalten folgende Meldung:<br />
Cannot run a procedure while debugging another task<br />
<strong>Dienstprogramme</strong> 251
sqldbgr<br />
Befehl Beschreibung<br />
stop in Prozedurname<br />
[at line #]<br />
Setzt einen Breakpoint, um die Fehlerbehebung der gespeicherten Prozedur oder des<br />
Triggers am Beginn des angegebenen Prozedurnamens zu stoppen.<br />
stop in Prozedurname at line # setzt einen Breakpoint, um die Fehlerbehebung der<br />
gespeicherten Prozedur oder des Triggers an der festgelegten Zeile innerhalb der<br />
angegebenen Prozedur zu stoppen.<br />
Wenn Sie eine ungültige Zeilennummer eingeben, verschiebt sqldbgr den Breakpoint<br />
an die nächste gültige Nummer und zeigt Folgendes an:<br />
Invalid line number<br />
Sie können diesen Befehl auch verwenden, um mehrere Breakpoints zu setzen.<br />
show breakpoints Zeigt den Breakpoint-Handle in der Form einer eindeutigen Zahl an, wie auch die<br />
Breakpoint-Anweisungen, die vom Benutzer während der sqldbgr-Sitzung<br />
eingegeben wurde.<br />
Wenn Sie eine Breakpoint-Zeilennummer angeben, die keine gültige SQL-<br />
Anweisung enthält, verschiebt Adaptive Server den Breakpoint an die nächste gültige<br />
Zeilennummer. Adaptive Server ändert allerdings nicht den von Ihnen eingegebenen<br />
Befehl. Daher kann show breakpoints einen in der sqldbgr-Sitzung eingegeben<br />
Breakpoint-Handle und eine Breakpoint-Anweisung zurückgeben,<br />
die verschieden sind.<br />
Ein Sternchen (*) in der Breakpoint-Zeile bedeutet, dass der Breakpoint gesetzt aber<br />
derzeit deaktiviert ist.<br />
use dbName Teilt sqldbgr mit, welche Datenbank verwendet werden soll, um die Fehler bei<br />
gespeicherten Prozeduren und Triggern dieser Datenbank zu beheben.<br />
show variables [at level #]<br />
show @varName [at level #]<br />
show variables zeigt alle Variablen und ihre Werte in der aktuellen gespeicherten<br />
SQL-Prozedur oder Trigger an.<br />
show variables at level # zeigt Variablen und ihre Werte in der aktuellen gespeicherten<br />
SQL-Prozedur oder Trigger an der angegebenen Stufe an.<br />
show @varName zeigt die angegebene Variable und ihren Wert in der aktuellen<br />
gespeicherten SQL-Prozedur oder Trigger an.<br />
show @varName at level # zeigt die angegebene Variable und ihren Wert in der<br />
aktuellen gespeicherten SQL-Prozedur oder Trigger an der angegebenen Stufe an.<br />
Hinweis sqldbgr unterstützt nicht Java-Variablen.<br />
show where Zeigt den Aufruf-Stack der gespeicherten Prozeduren und Trigger an, die in der<br />
Aufgabe vorhanden sind, deren Fehler behoben werden.<br />
step oder next step oder next fordert sqldbgr auf, zur nächsten Anweisung in der aktuellen<br />
gespeicherten Prozedur oder Trigger zu gehen.<br />
step into Fordert sqldbgr auf, in eine Prozedur zu wechseln, wenn die aktuelle Anweisung eine<br />
execute-Anweisung ist. Wenn die aktuelle Anweisung eine update-, delete- oder<br />
insert-Anweisung ist und Trigger enthält, fordert step into sqldbgr auf, in die update-,<br />
delete- oder insert-Trigger zu gehen.<br />
252 Adaptive Server Enterprise
Befehl Beschreibung<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
step out Fordert sqldbgr auf, die aktuelle gespeicherte Prozedur oder Trigger zu verlassen und<br />
an der nächsten Zeile in der aufrufenden Prozedur zu stoppen.<br />
set @varName = VALUE Setzt den Wert der angegebenen Variablen auf den im Befehl angegebenen<br />
Variablenwert in der aktuellen gespeicherten Prozedur oder Trigger. Die Werte der<br />
Variablen, die mit set @varName = VALUE eingestellt wurden, gelten nur für die<br />
aktuelle sqldbgr-Sitzung.<br />
cont[inue] Fordert sqldbgr auf, mit der Fehlerbehebung fortzufahren und am nächsten<br />
Breakpoint (falls vorhanden) zu stoppen.<br />
delete # Löscht den angegebenen Breakpoint, der in der aktuellen Instanz von sqldbgr<br />
gesetzt wurde.<br />
enable # und disable # Aktiviert die angegebenen Breakpoints. disable # deaktiviert sie.<br />
sql jede_sql-Anweisung Führt Ad-hoc-SQL-Anweisungen aus. Mit diesem Befehl können Sie Daten aus<br />
temporären Tabellen auswählen und analysieren, die durch die Aufgabe erstellt<br />
werden, deren Fehler behoben werden.<br />
sql jede_sql-Anweisung gibt eine Ergebnismenge sowie alle aufgetretenen Fehler<br />
zurück.<br />
detach spid Löst sqldbgr von der angegebenen spid und gibt die auf Fehler behandelte<br />
Aufgabe frei.<br />
Die Breakpoints werden gelöscht, die für die auf Fehler behandelte Aufgabe während<br />
der aktuellen sqldbgr-Sitzung gesetzt wurden.<br />
help [all] Zeigt sqldbgr-Befehle an.<br />
Fehlermeldung Beschreibung<br />
Cannot allocate resource<br />
in ASE<br />
Cannot create Debugger<br />
handle in ASE<br />
Tabelle 8-5 listet alle sqldbgr-Fehlermeldungen auf:<br />
Tabelle 8-5: sqldbgr-Fehlermeldungen und ihre Bedeutung<br />
Zeigt an, dass Adaptive Server nicht genügend Speicher-Ressourcen hat,<br />
um sqldbgr auszuführen. Erhöhen Sie procedure cache size und starten Sie<br />
sqldbgr erneut.<br />
Zeigt an, dass Adaptive Server nicht genügend Speicher-Ressourcen hat,<br />
um einen Debugger-Handle zu erstellen. Erhöhen Sie procedure cache size<br />
und starten Sie sqldbgr erneut.<br />
The spid is invalid Wird angezeigt, wenn Sie versuchen, sqldbgr an eine ungültige spid<br />
anzuhängen. Überprüfen Sie nochmals die spid und versuchen Sie es erneut.<br />
You cannot debug a task<br />
that is not owned by you<br />
Spid is already being<br />
debugged<br />
Spid is not debugged<br />
currently<br />
Wird angezeigt, wenn Sie versuchen, eine Aufgabe auf Fehler zu behandeln,<br />
die nicht Ihnen gehört. Sie müssen sich als der Eigentümer der zu<br />
behandelnden Aufgabe beim Server anmelden.<br />
Wird angezeigt, wenn Sie attach spid ausführen und versuchen, an ein spid<br />
anzuhängen, das bereits behandelt wird.<br />
Wird angezeigt, wenn Sie detach spid ausführen und versuchen, von einer<br />
spid zu lösen, die nicht an sqldbgr angehängt ist.<br />
<strong>Dienstprogramme</strong> 253
sqldbgr<br />
Fehlermeldung Beschreibung<br />
Invalid command Wird angezeigt, wenn Sie einen ungültigen Befehl eingeben.<br />
Invalid procedure name Wird angezeigt, wenn Sie einen ungültigen Prozedurnamen bei stop in<br />
Prozedurname eingeben.<br />
Invalid line number Wird angezeigt, wenn Sie eine ungültige Zeilennummer bei stop in<br />
Prozedurname at line # eingeben.<br />
Variable not found Wird angezeigt, wenn Sie eine ungültige Variable bei show @varName,<br />
show @varName at level # oder set @varName = VALUE eingeben.<br />
Illegal conversion<br />
attempted<br />
Conversion from text to<br />
datatype failed<br />
Cannot run a procedure<br />
while debugging another<br />
task<br />
Wird angezeigt, wenn Sie set @varName = VALUE ausführen und versuchen,<br />
die Variable in einen ungültigen Wert zu konvertieren.<br />
Wird angezeigt, wenn set @varName = VALUE scheitert.<br />
Wird angezeigt, wenn Sie run Prozedurname verwenden, während das<br />
Debug-Programm bereits eine vorhandene Aufgabe mit attach spid<br />
untersucht.<br />
254 Adaptive Server Enterprise
sqlloc<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Installiert und modifiziert Sprachen-, Zeichensatz-<br />
und Sortierreihenfolge-Standardwerte für Adaptive Server auf UNIX-<br />
Plattformen, wobei eine auf X11/Motif basierende grafische<br />
Benutzeroberfläche verwendet wird. sqlloc befindet sich unter<br />
$SYBASE/ASE-12_5/bin.<br />
Syntax sqlloc<br />
[-S Server]<br />
[-U Benutzer]<br />
[-P Kennwort]<br />
[-s <strong>Sybase</strong>-Verzeichnis]<br />
[-I Interfaces-Datei]<br />
[-r Ressourcendatei]<br />
Oder<br />
sqlloc -v<br />
Parameter -S Server<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll.<br />
-U Benutzer<br />
gibt einen Login-Namen an. Login-Namen reagieren auf<br />
Groß/Kleinschreibung.<br />
-P Kennwort<br />
gibt das Kennwort des mit -U eingegebenen Benutzers an.<br />
-s <strong>Sybase</strong>-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht<br />
werden soll, wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für sqlloc an und<br />
beendet dann.<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position<br />
der aktuellen Version der Adaptive Server-Installation einstellen,<br />
bevor Sie sqlloc verwenden können.<br />
<strong>Dienstprogramme</strong> 255
sqlloc<br />
Sie müssen die DISPLAY-Umgebungsvariable einstellen, bevor Sie sqlloc<br />
aufrufen, außer Sie verwenden den -v-Parameter, um die Versionsnummer<br />
anzuzeigen.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um sqlloc auszuführen.<br />
Siehe auch In der Dokumentation Installation Guide for UNIX Platforms finden Sie<br />
weitere Hinweise über das sqlloc-Dienstprogramm.<br />
<strong>Dienstprogramme</strong> – langinstall, sqllocres<br />
256 Adaptive Server Enterprise
sqllocres<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Installiert und modifiziert Sprachen-, Zeichensatz-<br />
und Sortierreihenfolge-Standardwerte für Adaptive Server unter Verwendung<br />
einer Ressourcendatei. sqllocres befindet sich unter $SYBASE/CS-12_5/bin.<br />
Syntax sqllocres<br />
[-S Server]<br />
[-U Benutzer]<br />
[-P Kennwort]<br />
[-s <strong>Sybase</strong>-Verzeichnis]<br />
[-I Interfaces-Datei]<br />
[-r Ressourcendatei]<br />
Oder<br />
sqllocres -v<br />
Parameter -S Server<br />
gibt den Namen der Adaptive Server-Installation an, mit dem die<br />
Verbindung hergestellt werden soll.<br />
-U Benutzer<br />
gibt einen Login-Namen an.<br />
-P Kennwort<br />
gibt das Kennwort des mit -U eingegebenen Benutzers an.<br />
-s <strong>Sybase</strong>-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für sqllocres an und<br />
beendet dann.<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der aktuellen<br />
Version der Adaptive Server-Installation einstellen, bevor Sie sqllocres<br />
verwenden können.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um sqllocres auszuführen<br />
Siehe auch Weitere Hinweise über das sqllocres-Dienstprogramm finden Sie in der<br />
Dokumentation Installation Guide for UNIX Platforms.<br />
<strong>Dienstprogramme</strong> 257
sqllocres<br />
<strong>Dienstprogramme</strong> langinstall, sqlloc<br />
258 Adaptive Server Enterprise
sqlsrvr<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur Windows-Plattformen Die Adaptive Server-Programmdatei befindet<br />
sich unter %SYBASE%\ASE-12_5\bin.<br />
Syntax sqlserver [-f] [-g] [-G] [-h] [-H] [-m] [-P] [-q] [-v] [-X]<br />
[-a Pfad_zu_CAP-Direktivendatei]<br />
[-b Master-Device-Größe]<br />
[-c Konfig-Datei_für_Server]<br />
[-d Devicename]<br />
[-e Pfad_zu_Fehler-Log]<br />
[-i Interfaces-Datei-Verzeichnis]<br />
[-K Keytab-Datei]<br />
[-L Konfig-Dateiname_für_Connectivity]<br />
[-M gemeinsam_genutzer_Speicher-Repository-Verzeichnis]<br />
[-p SA-Loginname]<br />
[-r Spiegel-Plattenspeichername]<br />
[-s Servername]<br />
[-T Trace-Flag]<br />
[-u SA/SSO-Name]<br />
[-w Master- | Modelldatenbank]<br />
[-y [Kennwort] ]<br />
[-z Seitengröße [ k | K ] ]<br />
Parameter -f<br />
erzwingt die Initialisierung eines Devices oder einer Datenbank. Sie müssen<br />
sowohl -b als auch -w angeben, um -f verwenden zu können.<br />
-g<br />
schaltet das Protokollieren von Ereignissen aus.<br />
-G<br />
legt den Namen des Ereignislog-Servers fest.<br />
-h<br />
druckt die Hilfemeldung und beendet dann.<br />
-H<br />
startet den HA-Server (High Availability, Hohe Verfügbarkeit), wenn Sie<br />
die HA-Funktion in Ihrer Adaptive Server-Installation installiert haben.<br />
-m<br />
startet Adaptive Server im Einzelbenutzer-Modus.<br />
-q<br />
behandelt Datenbanken im Ruhezustand wie „in Wiederherstellung“.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für sqlsrvr an und<br />
beendet dann.<br />
<strong>Dienstprogramme</strong> 259
sqlsrvr<br />
-X<br />
startet diesen Server als sybmon, und nicht als dataserver.<br />
-a Pfad_zu_CAP-Direktivendatei<br />
gibt den Pfad zur CAP-Direktivendatei an.<br />
-b Master-Device-Größe<br />
legt die Größe des Master-Devices fest.<br />
-c Konfig-Datei_für_Server<br />
gibt den vollständigen Pfadnamen einer Adaptive Server-Konfigurationsdatei<br />
an. Verwenden Sie diesen Parameter, um Adaptive Server mit den<br />
Konfigurationswerten in der angegebenen Konfigurationsdatei zu starten.<br />
Wenn Sie eine Konfigurationsdatei mit dem sqlsrvr -c-Parameter angeben,<br />
stellen Sie sicher, dass alle Parameter in dieser Konfigurationsdatei<br />
kompatibel sind, bevor Sie den Server neu starten. Wenn einige<br />
Konfigurationsparameter nicht kompatibel sind, startet der Server<br />
möglicherweise nicht neu. Um das zu vermeiden, geben Sie keine<br />
Konfigurationsdatei an, wenn Sie das Master-Device einrichten.<br />
Die Einrichtphase verwendet alle Standardeinstellungen, wenn Sie<br />
keine Konfigurationsdatei angeben.<br />
Weitere Hinweise finden Sie in der Dokumentation Systemadministration<br />
für Adaptive Server Enterprise.<br />
-d Devicename<br />
ist der vollständige Pfadname des Devices für die master-Datenbank.<br />
Das Master-Datenbankdevice muss für den Benutzer beschreibbar sein,<br />
der Adaptive Server startet. Das Standard-master-Datenbankdevice ist<br />
d_master.<br />
-e Fehlerlogdatei<br />
ist der vollständige Pfadname der Fehlerlogdatei für Fehlermeldungen der<br />
Adaptive Server-Systemebene.<br />
-i Interfaces-Datei-Verzeichnis<br />
gibt den Namen und den Standort der Interfaces-Datei an, die durchsucht<br />
werden soll, wenn die Verbindung mit der Adaptive Server-Installation<br />
eingerichtet wird. Wenn -I weggelassen wird, sucht sqlsrvr nach einer Datei<br />
namens interfaces in dem Verzeichnis, auf das von Ihrer <strong>Sybase</strong>-<br />
Umgebungsvariablen gezeigt wird.<br />
-K Keytab-Datei<br />
gibt den Pfad zur Keytab-Datei an, die zur Authentifizierung in DCE<br />
verwendet wird.<br />
260 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-L Konfig-Dateiname_für_Connectivity<br />
gibt den Namen der Konfigurationsdatei für Connectivity an.<br />
-M gemeinsam_genutzer_Speicher-Verzeichnis<br />
platziert Shared-Memory-Dateien in das angegebene Verzeichnis und nicht<br />
an den Standardstandort, $SYBASE%. Wenn gemeinsam_genutzter_<br />
Speicher-Verzeichnis mit „\“ startet, wird angenommen, dass der<br />
Verzeichnisname absolut ist. Ansonsten wird der Verzeichnisname relativ<br />
zu $SYBASE% interpretiert.<br />
-p SSO-Loginname<br />
gibt den Login-Namen eines Sicherheitsadministrators an, wenn Adaptive<br />
Server gestartet wird, damit für das neue Konto ein neues Kennwort<br />
eingerichtet werden kann. Adaptive Server erzeugt ein Zufallskennwort,<br />
zeigt es an, verschlüsselt es und speichert es in master..syslogins als das<br />
neue Kennwort für das Konto.<br />
-r Master-Spiegel<br />
startet den Spiegel für das Master-Device. Verwenden Sie diesen Parameter,<br />
um Adaptive Server zu starten, falls das Master-Device beschädigt wurde.<br />
-s Servername<br />
gibt den Namen der Adaptive Server-Installation an, die gestartet werden<br />
soll. Wenn -s weggelassen wird, wird ein Server mit Namen SYBASE<br />
gestartet.<br />
-T Trace-Flag<br />
-u SA/SSO-Name<br />
gibt den Namen des Systemadministrators oder Sicherheitsadministrators<br />
an, den Sie freigeben wollen.<br />
-w Master- | Modelldatenbank<br />
legt fest, ob Sie eine Master- oder eine Modelldatenbank schreiben wollen.<br />
-y [Kennwort]<br />
mit diesem Parameter können Sie ein Kennwort für den verschlüsselten<br />
privaten Schlüssel zuordnen, damit der Server den Benutzer zur Eingabe<br />
eines Kennworts auffordert. Dieses Kennwort sollte jenem entsprechen,<br />
mit dem Sie den privaten Schlüssel verschlüsselt haben, als er erstellt<br />
wurde. Sie können diesen Parameter nicht verwenden, wenn Sie den<br />
Server im Hintergrund ausführen.<br />
<strong>Dienstprogramme</strong> 261
sqlsrvr<br />
Hinweis Auch wenn Sie ein Kennwort mit -y, setzen können, empfiehlt <strong>Sybase</strong><br />
ausdrücklich, dies aus Sicherheitsgründen zu unterlassen.<br />
Ein privater Schlüssel ist im digitalen Zertifikat Ihres Servers enthalten.<br />
Standardmäßig finden Sie die Zertifikatsdatei unter:<br />
%SYBASE%\%SYBASE_ASE%\certificates\Servername.crt<br />
Der Standort der Zertifikatsdatei ändert sich, wenn Sie den sp_ssladmin<br />
addcert-Befehl aufrufen.<br />
-z Seitengröße<br />
legt die Seitengröße für den Server fest. Sie müssen -b und -w verwenden,<br />
um diese Option zu nutzen, und eine gerade Zweierpotenz zwischen<br />
2 KByte und 16 KByte angeben, da sonst der Server nicht neu startet.<br />
Beispiele Beispiel 1 Erstellt eine neue Installation mit einem 100-MByte-Master-<br />
Device und einer 4-KByte-Seite:<br />
sqlsrvr -d d_master -z 4k -b 100.02M<br />
Die Leerstellen zwischen den Optionen und den nachfolgenden Argumenten<br />
sind fakultativ und werden akzeptiert. In diesem Beispiel werden „100.02M“<br />
für ein 100-MByte-Master-Device festgelegt, da der Server einen 16-KByte-<br />
Overhead für seinen Konfigurationsbereich benötigt.<br />
Beispiel 2 Schreibt eine fehlerhafte model-Datenbank neu:<br />
sqlsrvr -d d_master -w model<br />
Beispiel 3 Schreibt eine fehlerhafte master-Datenbank neu, wobei die<br />
Devicegröße angegeben wird:<br />
sqlsrvr -d d_master -w master -z 4k<br />
Beispiel 4 Schreibt eine fehlerhafte master-Datenbank neu, indem Deviceund<br />
Seitengrößen festgelegt werden und der Server gezwungen wird, diese<br />
Werte anstelle von solchen, die er möglicherweise im Konfigurationsblock<br />
findet, zu akzeptieren:<br />
sqlsrvr -d d_master -w master -z 4k -b 100.02M -f<br />
Beispiel 5 Schreibt eine fehlerhafte master-Datenbank, wobei eine<br />
Seitengröße angegeben wird, die nicht der entspricht, die der Server in<br />
seinem Konfigurationsblock findet. Das erzeugt einen Fehler:<br />
sqlsrvr -d d_master -w master -z 8k<br />
00:00000:00000:2001/01/19 12:01:26.94 server Die<br />
konfigurierte Seitengröße des Servers entspricht nicht<br />
262 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
der, die auf der Befehlszeile angegeben ist. Um die<br />
konfigurierte Größe zu verwenden, lassen Sie die<br />
Größenangabe in der Befehlszeile weg. Um den Wert in der<br />
Befehlszeile zu verwenden, geben Sie 'force' (-f) ein.<br />
Beispiel 6 Schreibt eine fehlerhafte master-Datenbank neu, wobei eine<br />
inkorrekte Seitengröße angegeben ist, sogar bei einem normalen Neustart.<br />
Das erzeugt einen Fehler:<br />
sqlsrvr -d d_master -z4000<br />
sqlsrvr: Die 'z'-Option darf nicht ohne 'b' oder 'w'<br />
verwendet werden. sqlsrvr: Server wird die 'z'-Option<br />
ignorieren. sqlsrvr: die 'z'-Option enthält eine<br />
ungültige Seitengröße. sqlsrvr: Die Seitengröße<br />
muss eine gerade Zweierpotenz zwischen 2048 und<br />
16384 Byte sein.<br />
Syntax Das sqlsrvr-Dienstprogramm wird in anderen <strong>Sybase</strong>-Dokumenten als<br />
dataserver bezeichnet.<br />
Starten Sie Adaptive Server mit dem services manager-Dienstprogramm<br />
und nicht, indem Sie direkt das sqlsrvr-Programm ausführen. Wenn Sie<br />
Standardparameter ändern wollen, bearbeiten Sie die Registerschlüssel<br />
von Adaptive Server. Weitere Hinweise finden Sie im Konfigurationshandbuch<br />
für Ihre Plattform.<br />
Adaptive Server leitet seine Ausführungsumgebung aus Werten in der<br />
sysconfigures-Systemtabelle ab. Führen Sie die Systemprozedur<br />
sp_configure aus, um die Konfigurationswerte anzuzeigen;<br />
mit sp_configure und reconfigure ändern Sie die Konfiguration.<br />
Da Adaptive Server-Kennwörter verschlüsselt sind, können<br />
Sie vergessene Kennwörter nicht wiederherstellen. Wenn alle<br />
Sicherheitsadministratoren ihre Kennwörter verlieren, erzeugt der<br />
-p-Parameter ein neues Kennwort für ein Sicherheitsadministrator-Konto.<br />
Starten Sie Adaptive Server mit -p, melden Sie sich sofort bei Adaptive<br />
Server mit einem neuen Zufalls-Kennwort an und führen Sie sp_password<br />
aus, um Ihr Kennwort durch ein sichereres zu ersetzen.<br />
<strong>Dienstprogramme</strong> 263
sqlsrvr<br />
Standardmäßig protokolliert Adaptive Server Fehlermeldungen in der<br />
lokalen Fehlerlogdatei und dem lokalen Windows NT-Ereignis-Log. Sie<br />
können das Windows NT-Ereignis-Log deaktivieren, indem Sie den -g-<br />
Parameter einbeziehen und einen anderen Rechner für das Ereignislog mit<br />
-G Rechnername angeben. Bei der Eingabe des Arguments Rechnername<br />
müssen Sie die Standard-Windows NT-Konventionen benutzen. Beispiel:<br />
Um einen PC mit der Bezeichnung „LOGSITE“ anzugeben, geben Sie<br />
„\\LOGSITE“ als Rechnername-Argument ein. Hinweise über das<br />
Protokollieren von Fehlermeldungen finden Sie im Konfigurationshandbuch<br />
für Ihre Plattform.<br />
Nachdem Sie das Installationsprogramm fertig ausgeführt haben, stellen<br />
Sie die Dateiberechtigungen in der ausführbaren sqlsrvr-Datei ein, um den<br />
Zugriff auf ihre Ausführung zu beschränken.<br />
Wenn Sie einen Adaptive Server-Namen ohne den -s-Parameter<br />
angeben und nicht die Umgebungsvariable DSLISTEN eingestellt<br />
haben, verwendet sqlsrvr den Adaptive Server-Standardnamen SYBASE.<br />
Der Wert der Umgebungsvariablen DSLISTEN setzt diesen Standardwert<br />
außer Kraft. Der -s-Parameter setzt den Standardwert und die DSLISTEN-<br />
Umgebungsvariable außer Kraft.<br />
Automatische Login-Sperren können dazu führen, dass auf einem Rechner<br />
alle Logins gesperrt sind, die dazu berechtigt sind, Logins freizugeben<br />
(Systemadministratoren und Sicherheitsadministratoren). Wenn<br />
das passiert, verwenden Sie das sqlsrvr-Dienstprogramm mit dem<br />
-u-Parameter, um das angegebene Login auf Systemadministrator- oder<br />
Sicherheitsadministrator-Berechtigungen zu überprüfen, geben Sie das<br />
Konto frei und setzen Sie den Zählerwert für aktuelle fehlgeschlagene<br />
Logins auf Null.<br />
-f ist nur gültig, wenn der Parameter mit-b und/oder -w verwendet wird.<br />
Der Server startet nicht neu, wenn Sie -f ohne -b oder -w verwenden.<br />
-f wirkt sich auf den Server unterschiedlich aus, abhängig davon, ob -w<br />
vorhanden ist. Weitere Hinweise finden Sie unter -b und -w weiter unten.<br />
Adaptive Server starten<br />
Sie können eine der beiden nachstehenden Methoden verwenden, um Adaptive<br />
Server mit einer bezeichneten Konfigurationsdatei zu starten:<br />
Verwenden Sie Server Config, um den Server dahingehend<br />
zu konfigurieren, dass er den -c-Parameter aufweist. Im Fenster<br />
„Adaptive Server konfigurieren“ wählen Sie die Option „Befehlszeile“,<br />
und im Fenster „Befehlszeilenparameter“ geben Sie Folgendes ein:<br />
-CKonfigurationsdatei-Pfadname<br />
264 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Wenn Sie beispielsweise „-chaze.cfg“ eingeben, wird der Server mit der<br />
Konfigurationsdatei haze.cfg hochgefahren.<br />
Starten Sie Adaptive Server von der Befehlszeile und verwenden Sie den<br />
-c-Parameter.<br />
Abhängigkeiten und Bedingungen der -b- und -w-Optionen<br />
Die Auswirkung von -b ist abhängig davon, ob -w vorhanden ist:<br />
-b ohne -w erstellt ein Master-Device, benannt durch -d<br />
(der Standardwert ist d_master) und mit einer in -z angegebenen<br />
Seitengröße (der Standardwert ist 2048):<br />
Wenn das benannte Device bereits als eine OS-Datei vorhanden ist,<br />
schlägt der Versuch fehl und Sie müssen die vorhandene Datei<br />
entfernen und es nochmals versuchen.<br />
Wenn das benannte Device eine vorhandene unformatierte Partition<br />
benennt, schlägt der Versuch fehl, außer Sie beziehen die -f-Option<br />
ein. Das reinitialisiert die unformatierte Partition als ein Server-<br />
Master-Device.<br />
-b mit -w master fordert dataserver dazu auf, die in -z angegebene Größe<br />
zu verwenden, wenn die Master-Datenbank neu erstellt wird. Diese<br />
Einstellung bezieht sich nicht auf das Erstellen eines neuen Devices.<br />
-w erfordert möglicherweise zusätzliche Optionen:<br />
Wenn Sie -w model verwenden, werden die -z- und -b-Optionen akzeptiert,<br />
aber ignoriert.<br />
Wenn Sie -w master bei neuen Installationen verwenden, werden -z und -b<br />
nicht benötigt, weil die Device-Größeninformationen im config_block<br />
gespeichert sind.<br />
Wenn Sie -w master zum Upgrade alter Installationen verwenden,<br />
beachten Sie Folgendes:<br />
Der Server benötigt -b und/oder -z, wenn der config_block keinen<br />
gültigen Eintrag für die zugeordneten Größen enthält. Der Befehl<br />
schlägt fehl, wenn er keine gültigen Daten für die Seitengröße oder<br />
die Devicegröße erhält.<br />
Sie können -b und/oder -z angeben, wenn config_block gültige<br />
Einträge für die Größen, die sie darstellen, enthält. Wenn die Größen<br />
allerdings nicht mit denen im config_block übereinstimmen, müssen<br />
Sie -f hinzufügen, um Ihre neuen Größenwerte durchzusetzen.<br />
<strong>Dienstprogramme</strong> 265
sqlsrvr<br />
-f kann ohne -b oder -z auftreten, da -f den Server auch anweist,<br />
beschädigte Zuordnungsseiten als zur master-Datenbank gehörend<br />
zu akzeptieren. Das ist nützlich, wenn Sie schwer beschädigte<br />
Datenbanken wiederherstellen. Wenn Sie-w master -f angeben,<br />
ordnet der Server der master-Datenbank jede Zuordnungsseite auf<br />
dem benannten Master-Device zu, die zu keiner anderen Datenbank<br />
als master gehört.<br />
Berechtigungen Jeder mit Ausführungsberechtigung auf die Binärdaten, der Lese/Schreib-<br />
Zugriff auf alle Dateien hat.<br />
Benutzte Tabellen sysconfigures<br />
Siehe auch Befehle disk mirror, disk remirror, reconfigure<br />
Systemprozeduren sp_configure, sp_password<br />
<strong>Dienstprogramme</strong> startserver<br />
266 Adaptive Server Enterprise
sqlupgrade<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Stellt Ihre derzeit installierte Adaptive Server-<br />
Version auf die neueste Version um, wobei eine auf X11/Motif basierende<br />
grafische Benutzeroberfläche (GUI) verwendet wird. sqlupgrade befindet sich<br />
unter $SYBASE/ASE-12_5/bin.<br />
Syntax sqlupgrade<br />
[-s <strong>Sybase</strong>-Verzeichnis]<br />
[-r Ressourcendatei]<br />
Oder<br />
sqlupgrade -v<br />
Parameter -s <strong>Sybase</strong>-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für sqlupgrade an und<br />
beendet dann.<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der<br />
aktuellen Version der Adaptive Server-Installation einstellen, bevor Sie<br />
sqlupgrade verwenden können.<br />
Sie müssen die DISPLAY-Umgebungsvariable einstellen, bevor Sie<br />
sqlupgrade aufrufen, außer Sie verwenden den -v-Parameter, um die<br />
Versionsnummer anzuzeigen.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um sqlupgrade auszuführen<br />
Siehe auch Weitere Hinweise über das sqlupgrade-Dienstprogramm finden Sie in der<br />
Dokumentation Installation Guide for UNIX Platforms.<br />
<strong>Dienstprogramme</strong> sqlupgraderes<br />
<strong>Dienstprogramme</strong> 267
sqlupgraderes<br />
sqlupgraderes<br />
Beschreibung Nur UNIX-Plattformen Stellt auf UNIX-Plattformen Ihre derzeit installierte<br />
Adaptive Server-Version auf die neueste Version um, wobei Ressourcendateien<br />
verwendet werden. sqlupgraderes befindet sich unter $SYBASE/<br />
$SYBASE_OCS/bin.<br />
Syntax sqlupgraderes<br />
[-s <strong>Sybase</strong>-Verzeichnis]<br />
[-r Ressourcendatei]<br />
Oder<br />
sqlupgraderes -v<br />
Parameter -s <strong>Sybase</strong>-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für sqlupgraderes an und<br />
beendet dann.<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der aktuellen<br />
Version der Adaptive Server-Installation einstellen, bevor Sie sqlupgraderes<br />
verwenden können.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um sqlupgraderes auszuführen.<br />
Siehe auch In der Dokumentation Installation Guide for UNIX Platforms finden Sie<br />
weitere Hinweise über das sqlupgraderes-Dienstprogramm.<br />
<strong>Dienstprogramme</strong> sqlupgrade<br />
268 Adaptive Server Enterprise
srvbuild<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Erstellt neue Adaptive Server, Backup Server,<br />
Monitor Server oder XP Server mit den Standard- oder benutzerdefinierten<br />
Werten für wichtige Konfigurationsattribute, wobei eine auf X11/Motif<br />
basierende grafische Benutzeroberfläche verwendet wird. srvbuild befindet<br />
sich unter $SYBASE/ASE-12_5/bin.<br />
Syntax srvbuild<br />
[-s sybase-Verzeichnis]<br />
[-I Interfaces-Datei]<br />
[-r Ressourcendatei]<br />
Oder<br />
srvbuild -v<br />
Parameter -s sybase-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für srvbuild an und<br />
beendet dann.<br />
Syntax So müssen Sie die SYBASE-Umgebungsvariable einstellen:<br />
Auf die Position der aktuellen Version von Adaptive Server, bevor Sie<br />
srvbuild verwenden können.<br />
Bevor Sie srvbuild aufrufen, außer Sie verwenden den -v-Parameter,<br />
um die Versionsnummer anzuzeigen.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um srvbuild auszuführen.<br />
Siehe auch Weitere Hinweise über das srvbuild-Dienstprogramm finden Sie in der<br />
Dokumentation Installation Guide for UNIX Platforms.<br />
<strong>Dienstprogramme</strong> srvbuildres<br />
<strong>Dienstprogramme</strong> 269
srvbuildres<br />
srvbuildres<br />
Beschreibung Nur UNIX-Plattformen Erstellt neue Adaptive Server, Backup Server,<br />
Monitor Server oder XP Server mit den Standard- oder benutzerdefinierten<br />
Werten für wichtige Konfigurationsattribute, wobei Ressourcendateien<br />
verwendet werden. srvbuildres befindet sich unter $SYBASE/ASE-12_5/bin.<br />
Syntax srvbuildres<br />
[-s sybase-Verzeichnis]<br />
[-I Interfaces-Datei]<br />
[-r Ressourcendatei]<br />
Oder<br />
srvbuildres -v<br />
Parameter -s sybase-Verzeichnis<br />
gibt den Wert für die SYBASE-Umgebungsvariable an.<br />
-I Interfaces-Datei<br />
gibt den Namen und Position der Interfaces-Datei an, die durchsucht werden<br />
soll, wenn eine Verbindung mit Adaptive Server hergestellt wird.<br />
-r Ressourcendatei<br />
führt die angegebene Ressourcendatei aus.<br />
-v<br />
gibt die Versionsnummer und Copyright-Meldung für srvbuildres an und<br />
beendet dann.<br />
Syntax Sie müssen die SYBASE-Umgebungsvariable auf die Position der aktuellen<br />
Version der Adaptive Server-Installation einstellen, bevor Sie srvbuildres<br />
verwenden können.<br />
Berechtigungen Sie müssen <strong>Sybase</strong>-Systemadministrator sein, um srvbuildres auszuführen.<br />
Siehe auch In der Dokumentation Installation Guide for UNIX Platforms finden Sie<br />
weitere Hinweise über das srvbuildres-Dienstprogramm.<br />
<strong>Dienstprogramme</strong> srvbuild<br />
270 Adaptive Server Enterprise
startserver<br />
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
Beschreibung Nur UNIX-Plattformen Startet eine Adaptive Server- oder Backup Server-<br />
Installation. startserver befindet sich unter $SYBASE/ASE-12_5/bin.<br />
Syntax startserver [[-f Runserver-Datei] [-m]] ...<br />
Parameter -f Runserver-Datei<br />
legt den Namen einer ausführbaren Serverdatei unter Verwendung relativer<br />
Pfadangaben fest, die jedes Mal referenziert wird, wenn Sie Adaptive Server<br />
oder Backup Server starten. Standardmäßig befindet sich die diese Datei im<br />
aktuellen Verzeichnis und heißt RUN_Servername. Wenn Sie ein zweites<br />
Adaptive Server-System auf demselben Rechner starten, erstellt startserver<br />
eine neue Datei namens RUN_Servername.<br />
-m<br />
startet Adaptive Server im Einzelbenutzer-Modus, in dem sich nur der<br />
System-Administrator anmelden kann, und schaltet den allow updates to<br />
system tables-Konfigurationsparameter auf on. Verwenden Sie diesen<br />
Modus, um die master-Datenbank wiederherzustellen. Der System-<br />
Administrator kann den dbo use only-Parameter von sp_dboption für<br />
System-Administrationsaktivitäten verwenden, die mehr als einen Prozess<br />
erfordern, wie das Kopieren mit dem Massenexport/-import oder die<br />
Verwendung von Data Dictionary. startserver normally starts up only<br />
one server per node.<br />
Der -m-Parameter erstellt eine m_RUNSERVER-Datei und überschreibt alle<br />
vorhandenen m_RUNSERVER-Dateien.<br />
Beispiele Beispiel 1 Startet ein Adaptive Server-System namens SYBASE von der<br />
Runserver-Datei RUN_Servername im aktuellen Verzeichnis:<br />
startserver<br />
Beispiel 2 Startet ein Adaptive Server-System namens MYSERVER und<br />
einen Backup Server namens SYB_BACKUP:<br />
startserver -f RUN_MYSERVER -f RUN_SYB_BACKUP<br />
Beispiel 3 Startet nur das Backup Server-System SYB_BACKUP:<br />
startserver -f RUN_SYB_BACKUP<br />
Syntax startserver verwendet die Information in der Runserver-Datei,<br />
um Adaptive Server oder Backup Server zu starten. Das Master-Device<br />
muss für den Benutzer beschreibbar sein, der Adaptive Server startet.<br />
<strong>Dienstprogramme</strong> 271
startserver<br />
Der startserver-Befehl erstellt eine Adaptive Server-Fehlerlogdatei<br />
(errorlog genannt) in dem Verzeichnis, in dem Sie den Server starten,<br />
und fügt diese Information als Teil des -e-Parameters in die ausführbare<br />
Adaptive Server-Zeile der Runserver-Datei hinzu. Wenn ein zweites<br />
Adaptive Server-System auf demselben Rechner gestartet wird, wird ein<br />
neues Error-Log namens errorlog_Servername erstellt; diese Information<br />
wird der Runserver-Datei dieses Servers hinzugefügt. Der Benutzer muss<br />
Ausführungsberechtigung für die angegebene Runserver-Datei haben.<br />
Sie können mehrere Server starten, indem Sie mehr als eine Runserver-<br />
Datei anführen, wie in Beispiel 2 gezeigt. Sie können -m nach jedem<br />
-f Runserverdatei angeben.<br />
Adaptive Server leitet seine Ausführungsumgebung aus Werten in der<br />
config-Datei ab. Führen Sie sp_configure aus oder bearbeiten Sie die<br />
config-Datei, um Konfigurationsparameter anzuzeigen oder zu ändern.<br />
Um die Integrität Ihres Adaptive Server-Systems sicherzustellen ist es<br />
wichtig, dass Sie entsprechende Betriebssystem-Sicherheitsmaßnahmen<br />
für die ausführbare startserver-Datei und die Runserver-Datei anwenden.<br />
Die Runserver-Datei<br />
Die Runserver-Datei, die von srvbuild während der Installation erstellt<br />
wird, enthält den dataserver-Befehl, um Adaptive Server, oder den<br />
backupserver-Befehl, um Backup Server zu starten. Standardmäßig<br />
befindet sich die diese Datei im aktuellen Verzeichnis und heißt<br />
RUN_Servername. Sie können die Runserver-Datei bearbeiten, um die<br />
Optionen und Parameter für die Befehle zu korrigieren. Das folgende<br />
Beispiel zeigt zwei Muster-Runserver-Dateien.<br />
Runserver-Datei für Server MYSERVER:<br />
#!/bin/sh<br />
#<br />
# Adaptive Server Information:<br />
# name: /MYSERVER<br />
# master device: /remote/Masters/myserver_dat<br />
# master device size: 10752<br />
# errorlog: /remote/serverdev/install/errorlog<br />
# interfaces: /remote/serverdev/interfaces<br />
#<br />
#<br />
/remote/serverdev/bin/dataserver -d/remote/Masters/myserver_dat \<br />
-sMYSERVER -e/remote/serverdev/install/MYSERVER_errorlog \<br />
-i/remote/serverdev &<br />
Runserver-Datei für Backup Server SYB_BACKUP:<br />
272 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
#!/bin/sh<br />
#<br />
# Backup Server Information:<br />
# name: SYB_BACKUP<br />
# errorlog: /remote/serverdev/install/backup.log<br />
# interfaces: /remote/serverdev/interfaces<br />
# location of multibuf: /remote/serverdev/bin/sybmultbuf<br />
# language: us_english<br />
# character set: iso_1<br />
# tape configuration file: /remote/serverdev/backup_tape.cfg<br />
#<br />
#<br />
/remote/serverdev/bin/backupserver -SSYB_BACKUP \<br />
-e/remote/serverdev/install/backup.log \<br />
-I/remote/serverdev/interfaces \<br />
-M/remote/serverdev/bin/sybmultbuf -Lus_english -Jiso_1 \<br />
-c/remote/serverdev/backup_tape.cfg<br />
Siehe auch Befehle disk mirror, disk remirror, disk unmirror<br />
<strong>Dienstprogramme</strong> backupserver, dataserver<br />
<strong>Dienstprogramme</strong> 273
sybmigrate<br />
sybmigrate<br />
Beschreibung sybmigrate ermöglicht es, eine Adaptive Server-Installation von einer<br />
Seitengröße zu einer anderen Seitengröße zu konvertieren und zwischen<br />
Plattformen zu migrieren. Die Programmdatei befindet sich im Verzeichnis<br />
$SYBASE/$SYBASE_ASE/bin/sybmigrate.<br />
Windows NT Die Programmdatei befindet sich im Verzeichnis<br />
%SYBASE%\%SYBASE_ASE%\bin\sybmigrate.bat.<br />
Syntax sybmigrate [-v ] [-h ] [-f]<br />
[-D 1 | 2 | 3 | 4]<br />
[-I Interfaces-Datei ]<br />
[-r Eingabe-Ressourcendatei]<br />
[-m setup | migrate | validate | report]<br />
[-rn status | space_est | repl | diff | password]<br />
[-l Logdatei]<br />
[-t Ausgabe-Vorlage-Ressourcendatei]<br />
[-J Client-Zeichensatz]<br />
[-z Sprache]<br />
[-T Trace-Flags]<br />
[-Tase Trace-Flags]<br />
[-f ]<br />
Parameter -v<br />
druckt die Versionszeichenfolge und beendet dann.<br />
-h<br />
-f<br />
druckt die Hilfeinformationen und Hinweise zur Syntaxverwendung und<br />
beendet dann.<br />
hebt die Sperrsitzung auf.<br />
-D<br />
stellt die Ebene der Fehlerbehebung für sybmigrate ein.<br />
Die Standardebene ist 2.<br />
-I<br />
-r<br />
bezeichnet eine bestimmte interfaces-Datei zum Suchen von Servernamen.<br />
Wenn Sie keinen Speicherort für die interfaces-Datei angeben, wird in<br />
Windows $SYBASE/interfaces bzw. UNIX %SYBASE%\ini\sql.ini<br />
verwendet.<br />
gibt an, dass der Ressourcendatei-Modus beim Migrationsverfahren<br />
verwendet werden soll. Wenn Sie die Eingabe-Ressourcendatei nicht unter<br />
Verwendung des -r-Parameters angeben, wird sybmigrate im GUI-Modus<br />
ausgeführt.<br />
274 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-m<br />
bestimmt die Art der Vorgänge, die durchgeführt werden:<br />
setup – Einrichten des Repository und der aktiven Migrationsdatenbank<br />
und Migration der serverweiten Daten.<br />
migrate – Ausführung der Daten- und Objektmigration.<br />
validate – Validierung der migrierten Objekte.<br />
report – Ausführung eines der fünf möglichen Berichten. Die Berichte<br />
können im GUI- und Ressourcendatei-Modus ausgeführt werden.<br />
Die verfügbaren Berichte sind:<br />
status – Der Objektmigration-Statusbericht enthält Informationen<br />
über Objekte, die migriert wurden.<br />
space_est – Verwenden Sie den Zieldatenbank-<br />
Speicherschätzungsbericht, um zu überprüfen, ob Sie Ihrer<br />
Zieldatenbank genügend Ressourcen zugewiesen haben.<br />
repl – Mit dem Replikationsbericht überprüfen Sie explizit<br />
replizierte Objekte, die migriert wurden, bestimmen den Typ des<br />
Replikationssystems und erstellen SQL-Befehle für Benutzer zur<br />
Ausführung auf der Adaptive Server-Zielinstallation und<br />
Replication Server.<br />
diff – Überprüft die Objekte zwischen Quell- und Zieldatenbanken.<br />
Der diff-Bericht enthält folgende Informationen für folgende<br />
Objekttypen:<br />
Serverinformationen<br />
Datenbankinformationen<br />
DDL-Objekte<br />
Benutzertabellendaten<br />
password – Erstellt eine Datei für die geänderten Kennwörter.<br />
-rn<br />
gibt an, welche Art von Bericht erzeugt werden soll. Wenn -rn nicht<br />
angegeben wird, werden alle fünf Berichte ausgeführt.<br />
-l<br />
bestimmt eine benutzerdefinierte Logdatei, in der die Ausgabe des<br />
Migrationsprozesses gespeichert wird. Ohne Angabe von -l werden die<br />
Logs unter $SYBASE/$SYBASE_ASE/init/logs oder im Arbeitsverzeichnis<br />
gespeichert.<br />
<strong>Dienstprogramme</strong> 275
sybmigrate<br />
-t<br />
-J<br />
weist sybmigrate an, eine Ausgabe-Vorlage-Ressourcendatei zu generieren,<br />
die für nachfolgende Migrationen im Ressourcendatei-Modus verwendet<br />
werden soll.<br />
gibt den für die Adaptive Server-Verbindung zu verwendenden<br />
Zeichensatz an.<br />
-z<br />
gibt die für die Adaptive Server-Verbindung zu verwendende Sprache an.<br />
-T<br />
legt Befehlszeilen-Trace-Flags fest.<br />
-Tase<br />
wird verwendet, um Adaptive Server-Trace-Flags (eingeschaltet mit dbcc<br />
traceon) für alle von sybmigrate geöffneten Adaptive Server-Verbindungen<br />
auszuführen. Die Trace-Flags müssen in einer durch Kommas getrennten<br />
Listen angegeben werden.<br />
Beispiele Beispiel 1 Führt den status-Bericht aus:<br />
sybmigrate -r Ressourcendatei -m report -rn status<br />
Beispiel 2 Führt den space_est-Bericht im Ressourcendatei-Modus aus:<br />
sybmigrate -r Ressourcendatei -m report -rn space_est<br />
Beispiel 3 Führt den repl-Bericht aus:<br />
sybmigrate -r Ressourcendatei -m report -rn repl<br />
Syntax Wenn sybmigrate eine Sitzung nicht ordnungsgemäß beendet hat, heben<br />
Sie mit -f die geschaffene Verbindung zwischen Quell- und Zieldatenbank<br />
auf, so dass nur eine Sitzung von sybmigrate in einem Quell- und<br />
Zieldatenbankpfad ausgeführt werden kann.<br />
Wenn Sie den -r-Parameter verwenden, müssen Sie auch das -m-Argument<br />
benutzen, um die Art des durchzuführenden Vorgangs anzugeben: setup,<br />
migrate, validate oder report. Sie können den gesamten Migrationsprozess<br />
im Ressourcendatei-Modus ausführen oder ihn wahlweise auch nur<br />
teilweise auf diese Art ausführen.<br />
Sie können -t nur im Ressourcendatei-Modus ausführen.<br />
276 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-t erfordert, dass Sie sybmigrate unter Verwendung des -r-Arguments<br />
starten, wobei die Login-Informationen angegeben werden.<br />
Die Verwendung dieses Arguments macht es auch erforderlich, -<br />
m zu verwenden, um anzugeben, welche Art von Ressourcendatei<br />
erzeugt werden soll.<br />
Sie können sybmigrate außer Kraft setzen und die interfaces-Datei<br />
verwenden, indem Sie das -I-Argument angeben, wenn der LDAP-<br />
Eintrag in $SYBASE/$SYBASE_OCS/config/libtcl.cfg (in Unix) oder<br />
in %SYBASE%\%SYBASE_OCS%\ini\libtcl.cfg (in NT) definiert ist.<br />
Berichte<br />
status – Der Objektmigration-Statusbericht enthält Informationen über<br />
Objekte, die migriert wurden.<br />
space_est – Verwenden Sie den Zieldatenbank-Speicherschätzungsbericht,<br />
um zu überprüfen, ob Sie Ihrer Zieldatenbank genügend<br />
Ressourcen zugewiesen haben.<br />
repl – Mit dem Replikationsbericht überprüfen Sie explizit replizierte<br />
Objekte, die migriert wurden, bestimmen den Typ des Replikationssystems<br />
und erstellen SQL-Befehle für Benutzer zur Ausführung<br />
auf der Adaptive Server-Zielinstallation und Replication Server.<br />
diff – Überprüft die Objekte zwischen Quell- und Zieldatenbanken.<br />
Die Benutzer können den Bericht an einzelnen Objekten oder der<br />
ganzen Datenbank ausführen, mit Ausnahme von Server- und<br />
Datenbankinformationen oder Metadaten. Sie können den diff-Bericht<br />
jederzeit ausführen. Zur Ausführung des diff-Berichtes müssen Sie keine<br />
Einrichtungssitzung ausführen. Der Name der Quell- und Zieldatenbank<br />
muss bei Ausführung des diff-Berichtes nicht derselbe sein.<br />
Der diff-Bericht enthält folgende Informationen für folgende Objekttypen:<br />
Serverinformationen – Vergleich der Zeilenanzahl der<br />
Systemkataloge in der Master-Datenbank zwischen der<br />
Adaptive Server-Quell- und Zielinstallation. Diese Aufgabe<br />
ähnelt der Validierungssitzung.<br />
Datenbankinformationen – Vergleich der Zeilenanzahl der Systemkataloge<br />
in der Benutzerdatenbank zwischen der Adaptive Server-<br />
Quell- und Zielinstallation. Diese Aufgabe ähnelt der Validierungssitzung.<br />
<strong>Dienstprogramme</strong> 277
xpserver<br />
DDL-Objekte – Der Bericht zeigt, ob die Objekte in der Adaptive<br />
Server-Quell- oder Zielinstallation vorhanden sind. Wenn die Objekte<br />
in beiden Datenbanken vorhanden sind, wird das Objekt nicht in dem<br />
Bericht angezeigt.<br />
Benutzertabellendaten – Vergleich der Zeilenzahl der Benutzertabellen<br />
in der Adaptive Server-Quell- und Zielinstallation. Wenn die<br />
Tabelle nur in der Quell- oder Zieldatenbank vorhanden ist, wird die<br />
Tabelle nicht in dem Bericht angezeigt.<br />
Berechtigungen Sie müssen <strong>Sybase</strong> Systemadministrator sein oder sich mit „sa_role“<br />
anmelden, um sybmigrate verwenden zu können.<br />
Siehe auch Kapitel 6, „Migrations-Dienstprogramm“ enthält ausführliche Informationen<br />
zum sybmigrate-Dienstprogramm.<br />
xpserver<br />
Beschreibung Startet XP Server manuell.<br />
Syntax xpserver -S XP-Server<br />
xpserver<br />
-SXP-Server<br />
[-I Interfaces-Datei]<br />
[-pPriorität]<br />
[-sStack-Größe]<br />
[-u]<br />
[-v]<br />
[-x]<br />
Parameter -S XP-Server<br />
gibt den Namen der XP Server-Installation an, die gestartet werden soll.<br />
Das Format des XP Server-Namens ist SQLSERVERNAME_XP, wobei<br />
SQLSERVERNAME der Name der Adaptive Server-Installation ist, für den<br />
das XP Server-System dediziert ist. So würde zum Beispiel das XP Server-<br />
System für eine Adaptive Server-Installation namens SMOKE SMOKE_XP<br />
genannt werden. Der XP Server-Name muss in Großbuchstaben sein.<br />
-I Interfaces-Datei<br />
gibt den Namen und den Standort des Verzeichnisses an, das die Interfaces-<br />
Datei (sql.ini) enthält, nach der Adaptive Server bei der Verbindungsaufnahme<br />
mit XP Server sucht. Wenn Sie -I nicht festlegen, benutzt xpserver<br />
das ini-Unterverzeichnis des %SYBASE%-Versionsverzeichnisses.<br />
278 Adaptive Server Enterprise
Kapitel 8 Übersicht über die Dienstprogrammbefehle<br />
-p Priorität<br />
legt die Priorität für den Open Server-Prozess fest. Werte zwischen 0<br />
(Minimum) und 15 (Maximum) sind gültig. Damit wird der esp execution<br />
priority-Konfigurationsparameter aufgehoben. Der Standardwert ist 8.<br />
-s Stack-Größe<br />
legt (in Byte) die Stack-Größe des Prozesses fest, mit dem eine erweiterte<br />
gespeicherte Prozedur (ESP) ausgeführt wird. Damit wird der esp execution<br />
stacksize-Konfigurationsparameter aufgehoben, falls er eingestellt ist.<br />
Der Standardwert ist 34816 Byte.<br />
-u<br />
-v<br />
-x<br />
legt fest, dass die Funktionen automatisch vom XP Server-Speicher entladen<br />
werden, nachdem die ESP-Anforderung beendet ist. Damit wird der esp<br />
unload dll-Konfigurationsparameter aufgehoben, falls er eingestellt ist.<br />
Der Standardwert ist, die Funktion nicht zu entladen.<br />
gibt die Versionsnummer und Copyright-Meldung für XP Server an und<br />
beendet dann.<br />
legt fest, dass der Client-Sicherheitskontext verwendet werden soll, um<br />
Betriebssystem-Befehle mittels der System-ESP xp_cmdshell auszuführen.<br />
Damit wird der xp_cmdshell context-Konfigurationsparameter aufgehoben,<br />
falls er eingestellt ist. Der Standardwert ist die Verwendung des<br />
Sicherheitskontextes vom Betriebssystemkonto der Adaptive Server-<br />
Sitzung.<br />
Syntax XP Server wird normalerweise automatisch von Adaptive Server gestartet.<br />
Verwenden Sie den manuellen Befehl zum Starten von XP Server nur<br />
dann, wenn Sie in einer „XP Server nicht gestartet“-Fehlermeldung dazu<br />
aufgefordert werden.<br />
Es darf nur ein XP Server-System pro Adaptive Server-Installation geben.<br />
Eine Adaptive Server-Installation, die ESP ausführt, kommuniziert mit<br />
einem einzigen XP Server-System, und die ESP werden synchron<br />
ausgeführt.<br />
<strong>Dienstprogramme</strong> 279
xpserver<br />
Der -p-Parameter wirkt sich auf die Priorität aus, die der Open Server-<br />
Scheduler verwendet. Wenn -p einen hohen Wert hat, kann der Scheduler<br />
XP Server ausführen, bevor er die anderen Threads in seiner Task-Liste<br />
ausführt. Wenn -p einen niedrigen Wert hat, kann der Scheduler XP<br />
Server nur dann ausführen, wenn es keine weiteren Open Server-Threads<br />
in seiner Task-Liste gibt. Dieser Parameter ist unabhängig von den<br />
Anwendung-Warteschlangen-Prioritäten in Adaptive Server, die von<br />
sp_bindexeclass eingestellt werden.<br />
Siehe dazu die Erörterung der Mehrfach-Thread-Programmierung in der<br />
Dokumentation Open Server Server Library/C Reference Manual. Dort<br />
finden Sie Hinweise zur Abfolgeplanung von Open Server-Threads.<br />
Wenn das automatische Entladen von ESP-Funktionen nicht durch den -u-<br />
Parameter oder den esp unload dll-Konfigurationsparameter eingestellt ist,<br />
können Sie sie jederzeit während der Laufzeit mit sp_freedll entladen.<br />
Im Unterschied zu Adaptive Server und Backup Server hat XP Server<br />
keine Runserver-Datei.<br />
Bei der Konfiguration einer XP Server-Installation muss der Name<br />
des Verzeichnisdiensteintrags mit „_XP“ in Großbuchstaben enden,<br />
beispielsweise „abcdef_XP“ oder „ABCDEF_XP“.<br />
Berechtigungen Zum Ausführen von xpserver sind keine besonderen Berechtigungen<br />
erforderlich.<br />
Siehe auch System ESP xp_cmdshell<br />
Systemprozeduren sp_configure, sp_freedll<br />
280 Adaptive Server Enterprise
Index<br />
Symbols<br />
!! (Ausrufezeichen), Betriebssystembefehls-<br />
Präfix (isql) 234<br />
\ (Rückstrich)<br />
Escape-Zeichen für Sonderzeichen 152<br />
\ (Rückstrich), Datenfeldabschlusszeichen in<br />
interaktivem bcp 47<br />
\\0 (Null), Zeichenabschlusszeichen in<br />
interaktivem bcp 47<br />
\gt (Umleitung hinaus) in isql 16<br />
\isql 16<br />
\xd2 \xd3 (Anführungszeichen) zum Umschließen<br />
von Sonderzeichen 152<br />
“ ” (Anführungszeichen) zum Umschließen von<br />
Sonderzeichen 152<br />
A<br />
Abfragepuffer, zurücksetzen 12<br />
Abschlusszeichen (bcp) 53<br />
andere Programme, verwenden für 47<br />
ändern 38<br />
definiert 19<br />
Feld und Zeile, und 46, 48<br />
Adaptive Server<br />
ausführen (dataserver) 187<br />
ausführen (sqlsrvr) 255<br />
Konfiguration, Migration 108<br />
Upgrade (sqlupgrade) 263<br />
Upgrade mit Ressourcendateien<br />
(sqlupgraderes) 264<br />
Zurücksetzen von Prozessen 63<br />
Adaptive Server (Quelle), Migration 95<br />
Adaptive Server (Ziel), Migration 95<br />
additional network memory, Parameter 105<br />
allow_dup_row, Option von create index, und bcp 66<br />
andere <strong>Dienstprogramme</strong> von Adaptive Server<br />
und bcp 68<br />
Ändern<br />
Servereinträge (dscp) 89<br />
Servereinträge mit dsedit 77, 80<br />
Sortierreihenfolgen (sqllocres) 254, 255<br />
Sortierreihenfolgen, in GUI (sqlloc) 253, 254<br />
Sprachen (sqllocres) 254, 255<br />
Sprachen, in GUI (sqlloc) 253, 254<br />
Zeichensätze (sqllocres) 254, 255<br />
Zeichensätze, in GUI (sqlloc) 253, 254<br />
Anführungszeichen (\xd2 \xd3) zum Umschließen<br />
von Sonderzeichen 152<br />
Anführungszeichen (‘ ’) zum Umschließen von<br />
Sonderzeichen 152<br />
Ansichten, kopieren mit defncopy 209<br />
Anwendungsprogramme, Daten kopieren von 54<br />
Anzahl<br />
Serververbindungen zu backupserver 158<br />
ascii_7, Zeichensatz<br />
defncopy und 210<br />
ASCII-Format, bcp und 36<br />
Auffüllen mit Zeichen und bcp 46<br />
Aufgaben nach der Migration, für sybmigrate 130<br />
Ausführen von Adaptive Server 187, 255<br />
Siehe auch dataserver, Dienstprogrammbefehl 187<br />
Siehe auch sqlsrvr, Dienstprogrammbefehl 255<br />
Ausgabeformate, Daten Siehe Exportieren von Daten mit<br />
interaktivem bcp 54<br />
Ausrufezeichen (!!) Betriebssystembefehls-<br />
Präfix (isql) 234<br />
Auswählen eines Verzeichnisdienst-Bildschirms 72<br />
B<br />
Backup Server 158<br />
Siehe auch backupserver, Dienstprogrammbefehl<br />
158<br />
backupserver, Dienstprogrammbefehl 158<br />
Berechtigungen, erforderliche 162<br />
Definition 158<br />
<strong>Dienstprogramme</strong> 281
Index<br />
Fehlerlogdatei 159<br />
Fehlermeldungen in 162<br />
Interfaces-Datei 162<br />
Interfaces-Datei, Name und Position von 158<br />
LC_ALL, Umgebungsvariable 159<br />
Server starten und 161<br />
Servernamen angeben 158<br />
Serververbindungen, Anzahl von 158<br />
Sprache, Standardwert 159<br />
Trace Flags 162<br />
vollständige Pfadnamen angeben 159<br />
Zeichensatz, Standardwert 160<br />
-bbatch_size, Parameter 62<br />
bcp für die Migration 96<br />
bcp, Dienstprogrammbefehl 69, 163<br />
Abschlusszeichen verwendet in 19<br />
allow_dup_row, Option von create index 66<br />
andere <strong>Dienstprogramme</strong> von Adaptive Server und 68<br />
Anweisungsfolgen in 62<br />
Anweisungsfolgen von Tabellenzeilen importieren 62<br />
Anweisungsfolgengröße-Einstellungen 166<br />
ASCII-Format und 36<br />
-bbatch_size, Parameter 62<br />
Beispiele der Verwendung 168<br />
Berechtigungen erforderlich für 20, 43<br />
Binärformat und 19<br />
Dateispeichertypen in 40<br />
Daten exportieren 54, 57, 64<br />
Datenintegrität 67<br />
Datenspeichergröße in 40<br />
Datentypen 46<br />
Datenübertragung, vorbereiten für 20<br />
Datenverlust und Sicherung 24<br />
Definition 163<br />
dump database und 68<br />
eindeutige Identity-Spaltenwerte und 34<br />
einfügen und 69<br />
Eingabeaufforderungen in 40<br />
Eingabeaufforderungen und Antworten Siehe<br />
Interaktiver bcp 38<br />
erläutert 18<br />
Fehler in Datenkonvertierung 66<br />
Fehlerdateien 65<br />
Feldabschlusszeichen 38, 41<br />
Feldlängen 36<br />
Formatdateien 50, 54<br />
Fragen zur Performance bei 22, 34, 68<br />
Geschwindigkeit, Modi der 21<br />
Geschwindigkeit, und Indizes und Trigger 22<br />
Identity-Spalten und 33<br />
Importieren von Daten 25, 28, 57, 61<br />
Indexerstellung 66<br />
Indizes und Trigger, löschen 25<br />
interaktiver Modus 38, 48<br />
Kennwortverschlüsselung in 170<br />
Konfigurationsparameter 65<br />
langsame Version und Deadlocks auf<br />
Indexseite 27<br />
langsame Version von 23<br />
load database und 68<br />
load transaction und 68<br />
maximale Geschwindigkeit, aktivieren 68<br />
natives Dateiformat und 36<br />
natives Format und 36<br />
nicht interaktiv 36<br />
non-iso_1-Datendateien und 61<br />
partitionierte Tabellen und 26, 35, 64<br />
Performance der Vorgänge steigern 65<br />
Platzbedarf für Daten 25<br />
Präfixlänge 40<br />
Regeln und Daten kopieren 68<br />
schnelle Version von 23<br />
schnelle Version von, und Wiederherstellbarkeit<br />
von Daten 23<br />
Seitenzuweisungen, zunehmend für 28<br />
select into/bulkcopy/pllsort und 25<br />
Sonderzeichen, Behandlung 167<br />
sp_dboption 25<br />
Speichertypen 46<br />
Sprachen, andere Sprachen verwenden 61<br />
Standardfeldlänge, Konvertierung von Nichtzeichen<br />
in Standarddatentyp 45<br />
Standardwerte für Daten 67<br />
Standardwerte für Spalten und Datentypen 67<br />
System Data Format (SDF), Ausgabe 55<br />
Systemunterschiede 37<br />
Tabellen-Standardwerte und Daten kopieren 67<br />
Trigger in Zieltabelle nicht ausgelöst 22<br />
Trigger und Daten kopieren 68<br />
Übertragen von Daten zwischen Programmen 19<br />
verwenden mit Zugriffsregeln auf Zeilenebene 62<br />
Warnung über Daten-Wiederherstellung 166<br />
282 Adaptive Server Enterprise
Wiederherstellbarkeit beim Import von<br />
Daten erleichtern 63<br />
Zeichenformat 36<br />
Zeichenformat, Dateien 36<br />
Zeichenformat, Standard 37<br />
Zeichenformate akzeptiert 19<br />
Zeichensatz-Standardwerte 169<br />
Zeilenabschlusszeichen 38<br />
Zurücksetzen von Prozessen 63<br />
Bearbeiten<br />
Interfaces-Dateien 72, 74<br />
Interfaces-Dateien in GUI (dsedit) 217<br />
Netzwerktransportadressen in dsedit 80<br />
Befehlsabschlusszeichen (isql) 10<br />
Statistikoption 14<br />
Begrenzer<br />
Daten exportieren mit 56<br />
Importieren von Daten mít 59<br />
Beispiele<br />
bcp, Dienstprogrammbefehl 168<br />
defncopy, Dienstprogrammbefehl 213<br />
dscp, Dienstprogrammbefehl 216<br />
isql, Dienstprogrammbefehl 227<br />
showserver, Dienstprogrammbefehl 247<br />
startserver, Dienstprogrammbefehl 267, 268<br />
Berechtigungen erforderlich für<br />
bcp, Dienstprogrammbefehl 20, 43<br />
Betriebssystemdatei, Tabellen kopieren in 20<br />
Tabellen, Daten kopieren in 20<br />
Berechtigungen, erforderliche<br />
backupserver, Dienstprogrammbefehl 162<br />
Betriebssystemdatei, Tabellen<br />
hineinkopieren 175<br />
charset, Dienstprogrammbefehl 186<br />
dataserver, Dienstprogrammbefehl 192, 260<br />
dscp, Dienstprogrammbefehl 216<br />
dsedit, Dienstprogrammbefehl 72, 217<br />
langinstall, Dienstprogrammbefehl 237<br />
optdiag, Dienstprogrammbefehl 245<br />
sqlloc, Dienstprogrammbefehl 254<br />
sqllocres, Dienstprogrammbefehl 255<br />
sqlupgrade, Dienstprogrammbefehl 263<br />
sqlupgraderes, Dienstprogrammbefehl 264<br />
srvbuild, Dientsprogrammbefehl 265<br />
srvbuildres, Dienstprogrammbefehl 266<br />
tables, Daten hineinkopieren 175<br />
xpserver, Dienstprogrammbefehl 275<br />
Index<br />
Berichte für sybmigrate 112, 270<br />
Betriebssystemdateien<br />
erforderliche Berechtigung zum Hineinkopieren<br />
von Tabellen 175<br />
erforderliche Berechtigungen zum Kopieren<br />
von Tabellen in 20<br />
natives Format 36<br />
Betriebssysteme<br />
Befehlspräfix (!!) (isql) 234<br />
Nicht-Zeichen-Datentypformatierung 42<br />
nummerische Datentypformatierung 36<br />
Binärdaten<br />
bcp und 19<br />
Standard in interaktivem bcp 43<br />
buildmaster, Dienstprogrammbefehl Siehe<br />
auch dataserver<br />
C<br />
char-Datentyp und bcp 36<br />
charset, Dienstprogrammbefehl 185, 186<br />
Berechtigungen, erforderliche 186<br />
Definition 185<br />
Einstellungen für 186<br />
CIS bulk insert array size<br />
Konfiguration für die Migration 104, 109<br />
CIS bulk insert batch size 109<br />
CIS packet size<br />
Konfiguration, Migration 108<br />
Migration 105<br />
Copy Threads für sybmigrate 107<br />
create index, Befehl, bcp und doppelte Zeilen 66<br />
<strong>Dienstprogramme</strong> 283<br />
D<br />
data limits filter mode, Migration 131<br />
dataserver, Dienstprogrammbefehl 187<br />
Berechtigungen, erforderliche 192, 260<br />
Definition 187<br />
Kennwörter, neue generieren 192<br />
Dateien<br />
Fehler (bcp) 65<br />
natives Format 36<br />
Siehe auch Formatdateien in bcp 50<br />
Standardformate mit bcp 36
Index<br />
Daten<br />
Analyse Siehe Feldabschlusszeichen 38<br />
erforderliche Berechtigung zum Kopieren<br />
in Tabellen 175<br />
erforderliche Berechtigungen zum Kopieren<br />
in Tabellen 20<br />
Konvertierungsfehler 66, 67<br />
mit Adaptive-Server-Befehlen ändern 69<br />
mit Adaptive-Server-Befehlen verschieben 68<br />
mit bcp aus verschiedenen Programmen übertragen 19<br />
mit bcp importieren und exportieren 18<br />
mit Leerzeichen in interaktivem bcp auffüllen 44<br />
Wiederherstellbarkeit 23<br />
Datenbank erneut migrieren 142<br />
Datenbankdaten, Migrieren 97<br />
Datenbanken zusammenführen, bei der Migration 142<br />
Datenbanken, kopieren mit bcp 69<br />
Datenbank-Managementsystem, andere 54<br />
Datenbankobjekte<br />
kopieren mit bcp 163<br />
Datentypen<br />
bcp, Dateispeichertypen für 42<br />
bcp, Dateispeichertypen in 39<br />
bcp, verwendet in 46<br />
bcp-Formatdateien für 50<br />
char 36<br />
Feldlängen im interaktiven bcp 41, 48<br />
implizite Konvertierung von 41, 42<br />
Konvertierung von Nichtzeichen- in<br />
Zeichen-Standardfeldlänge in bcp 45<br />
kopieren und Kompatibilität 59<br />
Speicherung (SYB) 52<br />
Standardwerte und bcp 67<br />
Datenübertragung, Standardformate mit bcp 36<br />
ddlgen für die Migration 96<br />
Debug-Level für sybmigrate 111<br />
default network packet size, Konfigurationsparameter 65<br />
Definitionen<br />
backupserver, Dienstprogrammbefehl 158<br />
bcp, Dienstprogrammbefehl 163<br />
charset, Dienstprogrammbefehl 185<br />
dataserver, Dienstprogrammbefehl 187<br />
defncopy, Dienstprogrammbefehl 209<br />
dscp, Dienstprogrammbefehl 216<br />
dsedit, Dienstprogrammbefehl 217<br />
isql, Dienstprogrammbefehl 226<br />
kopieren. Siehe defncopy,<br />
Dienstprogrammbefehl 209<br />
optdiag, Dienstprogrammbefehl 239<br />
showserver, Dienstprogrammbefehl 247<br />
sqlloc, Dienstprogrammbefehl 253<br />
sqllocres, Dienstprogrammbefehl 254<br />
sqlsrvr, Dienstprogrammbefehl 255<br />
sqlupgrade, Dienstprogrammbefehl 263<br />
sqlupgraderes, Dienstprogrammbefehl 264<br />
srvbuild, Dientsprogrammbefehl 264<br />
srvbuildres, Dienstprogrammbefehl 265<br />
startserver, Dienstprogrammbefehl 266<br />
sybmigrate, Dienstprogrammbefehl 269<br />
xpserver, Dienstprogrammbefehl 273<br />
defncopy, Dienstprogrammbefehl 209<br />
ascii_7 Zeichensatz und 210<br />
Ausfall wegen langer Kommentare 214<br />
Beispiele 213<br />
Definition 209<br />
Kennwörter und Ausfälle 210<br />
Report Workbench, inkompatibel mit 209<br />
verschlüsselter Text 215<br />
Dienstprogrammbefehle<br />
Sonderzeichen verwenden 152<br />
Tabelle der Befehle 153<br />
DISPLAY, Umgebungsvariable<br />
in dsedit einstellen 72<br />
dscp, Dienstprogrammbefehl 216<br />
Befehlstabelle 93<br />
Beispiele 216<br />
Berechtigungen, erforderliche 216<br />
definiert 85<br />
Definition 216<br />
Einträge, neue durch Kopieren erstellen 90<br />
exit-Befehl 93<br />
help 85<br />
Hilfe 93<br />
in andere Sitzungen kopieren 91<br />
quit-Befehl 93<br />
Serverattribute 87<br />
Servereinträge ändern 89<br />
Servereinträge auflisten 91<br />
Servereinträge hinzufügen 88<br />
Servereinträge kopieren 90<br />
Servereinträge löschen 92<br />
Servereintraginhalt anzeigen 91<br />
284 Adaptive Server Enterprise
Sitzungen auflisten 86<br />
Sitzungen öffnen 86<br />
Sitzungen schließen 86<br />
starten 85<br />
zwischen Sitzungen kopieren 90<br />
dsedit, Dienstprogrammbefehl 217<br />
Befehlszeilenoptionen 72<br />
Berechtigungen, erforderliche 72, 217<br />
Bildschirm „Directory Service Session“ 74<br />
Definition 217<br />
DISPLAY-Umgebungsvariable und 72<br />
Fehlerbehandlung 71, 83<br />
Hinzufügen, Ändern oder Löschen von<br />
Servereinträgen nicht möglich 84<br />
Info 71<br />
libtcl.cfg-Datei 73<br />
Netzwerktransportadressen bearbeiten 80<br />
Netzwerktransportadressen hinzufügen 80, 83<br />
Fehlermeldung \xd2Öffnen der X-Anzeige nicht<br />
möglich\xd3 84<br />
öffnen mit sql.ini 73<br />
Serverattribute 76<br />
Servereinträge ändern 77, 80<br />
Servereinträge hinzufügen 77, 80<br />
Servereinträge kopieren 79, 80, 82, 83<br />
Servereinträge löschen 78<br />
Servereinträge umbenennen 78<br />
Sitzungen öffnen 74<br />
Sitzungen schließen 74<br />
starten 72<br />
startet nicht 83<br />
SYBASE-Umgebungsvariable und Position von<br />
libtcl.cfg ermitteln 73<br />
Verzeichnisdienst-Bildschirm auswählen 72<br />
von der Befehlseingabeaufforderung starten 71<br />
von entfernten Rechnern ausführen 72<br />
Windows NT Explorer aus starten 71<br />
DSLISTEN, Umgebungsvariable<br />
backupserver und 161<br />
dump database, Befehl<br />
bcp und 68<br />
dump transaction, Befehl<br />
bcp und 68<br />
Fehlermeldung, dump database empfohlen 23<br />
Index<br />
E<br />
Echo-Eingabe (isql) 16<br />
Eingabeaufforderungen<br />
bcp Siehe Interaktiver bcp 38<br />
Eingabeaufforderungen in bcp-<br />
Dienstprogrammbefehl 40<br />
enable unicode conversions, Migration 106<br />
Entfernte Rechner 72<br />
Entfernte Rechner, dsedit verwenden 72<br />
Erstellen<br />
neue Server (srvbuild) 264, 265<br />
neue Server mit Ressourcendateien<br />
(srvbuildres) 265, 266<br />
exit-Befehl<br />
in dscp 93<br />
in isql 10<br />
Exportieren von Daten mit interaktivem bcp 54, 57<br />
Begrenzer 56<br />
Fehlerdateien und 67<br />
Felder mit fester Länge 54<br />
für andere Software 54<br />
Text- und Bilddaten 64<br />
Exportieren von Daten Siehe Exportieren von Daten<br />
mit interaktivem bcp 54<br />
F<br />
Fehler<br />
in Datenkonvertierungen 66, 67<br />
Vorgänge, speichern während des Exports 67<br />
Vorgänge, speichern während des Imports 65<br />
Fehlerbehandlung, dsedit 83<br />
Fehlerbereinigung, sybmigrate 142<br />
Fehlerdateien<br />
bcp und 65, 67<br />
Exportieren und 67<br />
Fehlerlogdateien<br />
für backupserver 159<br />
Fehlermeldungen<br />
dsedit und X-Anzeige 84<br />
dump database statt dump transaction 23<br />
in backupserver 162<br />
select into/bulkcopy/pllsort in schnellem bcp auf<br />
Tabellen ohne Indizes oder Trigger 25<br />
Fehlermeldungen, Migration 140<br />
<strong>Dienstprogramme</strong> 285
Index<br />
Fehlersuche-Dienstprogramm 247<br />
Feldabschlusszeichen 38<br />
bcp 41<br />
interaktiver bcp 47, 48<br />
Felder mit fester Länge 54<br />
Feldlängen<br />
Importieren 57<br />
in interaktivem bcp 44, 46<br />
Präfixlänge, Ganzzahlwert in 53<br />
Formatdateien in bcp 50, 54<br />
Abschlusszeichen 53<br />
Anzahl der Datensätze in 51<br />
Elemente verwendet in 50<br />
Format verwendet für 50<br />
Hostdatei-Datenlänge 53<br />
Hostdatei-Datentyp-Speicherungsformate (SYB) 52<br />
Hostdatei-Spaltenreihenfolge 52<br />
Präfixlänge, Ganzzahlwert in 53<br />
Server-Spaltenname 54<br />
Server-Spaltenreihenfolge 53<br />
Spalten-Dezimalstellen 54<br />
Spalten-Gesamtstellenzahl 54<br />
Spaltennummern 51<br />
speichern 50<br />
TSD-Versionsnummer in 51<br />
G<br />
Gespeicherte Prozeduren<br />
kopieren mit defncopy 209<br />
Größe<br />
Datenspeicher in bcp 40<br />
Paketgröße 64<br />
Text- oder Bilddaten- 64<br />
GUI-Modus<br />
Migration 114<br />
H<br />
help, Befehl (dscp) 85<br />
Hilfebefehl (dscp) 93<br />
Hinweise<br />
Anweisungsfolgengröße-Einstellungen in bcp 166<br />
ascii_7, Zeichensatz-Kompatibilität 210<br />
defncopy und Report Workbench 209<br />
Kennwörter verwenden 152<br />
langsame Version von bcp und Deadlock 27<br />
Nullabschlusszeichen oder kein<br />
Abschlusszeichen 48<br />
select into/bulkcopy/pllsort und Kopieren<br />
von Daten in bcp 25<br />
Sicherheit 152<br />
Sonderzeichen, Behandlung in bcp 167<br />
Systemunterschiede in bcp 37<br />
Trigger von bcp in Zieltabelle nicht ausgelöst 22<br />
verborgener verschlüsselter Text 215<br />
Hinzufügen<br />
Netzwerktransportadressen in dsedit 80, 83<br />
Servereinträge in dscp 88<br />
Servereinträge in dsedit 77, 80<br />
Hohe Verfügbarkeit<br />
Migration 138<br />
Host-Datei<br />
isql und Lesevorgänge 16<br />
Hostdateien<br />
Datenlänge 53<br />
Datentyp-Speicherungsformate (SYB) 52<br />
natives Format in interaktivem bcp 44<br />
Spaltenreihenfolge 52<br />
I<br />
Identity-Spalten<br />
bcp und 34<br />
Paralleler bcp und 33, 34<br />
ignore_dup_key, Option von create index und bcp 66<br />
image, Datentyp<br />
interaktiver bcp und 43<br />
Importieren von Daten<br />
Anweisungsfolgen in 62<br />
paralleler bcp, Anforderungen für 29, 34<br />
Partitionieren, ungesteuerte Verwendung 27<br />
partitionierte Tabellen 27<br />
Schritte der schnellen Version von bcp 25<br />
Wiederherstellbarkeit nach Zurücksetzung<br />
erleichtern 63<br />
Importieren von Daten mit interaktivem bcp 57, 61<br />
Begrenzer 59<br />
Fehlerdateien und 67<br />
Feldlängen 57<br />
Kompatibilität von Datentypen, und Ausfall 59<br />
Importieren von Daten Siehe Kopieren von Daten<br />
mit interaktivem bcp 57<br />
286 Adaptive Server Enterprise
Index neu erstellen, Migration 130<br />
Index Threads für sybmigrate 108<br />
Indizes<br />
bcp, vor der Verwendung löschen 25<br />
Verlangsamen von bcp 22<br />
insert, Befehl<br />
Massenexport/-import der Daten, Vergleich 69<br />
Installieren<br />
Sortierreihenfolgen (sqllocres) 254, 255<br />
Sortierreihenfolgen, in GUI (sqlloc) 253, 254<br />
Sprachen (sqllocres) 254, 255<br />
Sprachen, in GUI (sqlloc) 253, 254<br />
Sprachen, neue (langinstall) 236, 239<br />
Zeichensätze (sqllocres) 254, 255<br />
Zeichensätze, in GUI (sqlloc) 253, 254<br />
Interaktiver bcp<br />
Daten für andere Software kopieren 39<br />
implizite Konvertierung von Datentypen 41, 42<br />
interaktiver bcp 38, 48<br />
Abschlusszeichen für neue Zeilen (\\n) 47<br />
Abschlusszeichen für tabellarische<br />
Datenvorbereitung 47<br />
Abschlusszeichen, Feld und Zeile 46, 48<br />
auffüllen, Daten mit Leerstellen 44<br />
Binärdaten, Standardwert 43<br />
Dateispeichertypen 39, 42<br />
Daten exportieren 54, 57<br />
Feldabschlusszeichen 47, 48<br />
Felder, Präfixlänge von 42, 44<br />
Feldlänge 44, 46<br />
image-Datentyp, Standardwert für 43<br />
Importieren von Daten 57, 61<br />
Nullwerte und 43<br />
Rückstrich, Abschlusszeichen (\) 47<br />
Speicherlänge 44, 46<br />
Standardwerte für Eingabeaufforderungen 38, 48<br />
Tabulator-Feldabschlusszeichen (\\) 47<br />
Textdaten kopieren, Standardwert für 43<br />
Zeichenabschlusszeichen Null oder<br />
unsichtbar (\\0) 47<br />
Zeichenformatdateien, Abschlusszeichen für 47<br />
Zeilenabschlusszeichen 47, 48<br />
Zeilenschaltung,<br />
Datenfeldabschlusszeichen (\\r) 47<br />
Interaktiver SQL-Parser 226<br />
Siehe auch isql, Dienstprogrammbefehl 226<br />
Index<br />
Interface-Dateien<br />
dscp-Sitzungen öffnen 86<br />
interfaces-Datei<br />
für sybmigrate 111<br />
Interfaces-Dateien<br />
backupserver und 162<br />
backupserver, Name und Position festlegen 158<br />
dscp, anzeigen und bearbeiten mit 216<br />
dsedit, anzeigen und bearbeiten mit 217<br />
dsedit, bearbeiten mit 74<br />
dsedit, in GUI anzeigen und bearbeiten mit 217<br />
zum Bearbeiten öffnen 72<br />
Interfaces-Dateien in GUI anzeigen 217<br />
Siehe auch dsedit, Dienstprogrammbefehl 217<br />
Interfaces-Dateien in GUI bearbeiten<br />
Siehe auch dsedit, Dienstprogrammbefehl 217<br />
iso_1, Zeichensatz 61<br />
isql, Dienstprogrammbefehl 226<br />
\< (Umleitung herein), Symbol 16<br />
\gt (Umleitung hinaus), Symbol 16<br />
Abfragen, bearbeiten 12<br />
Abfragepuffer, zurücksetzen 12<br />
Ausgabe, Formatierung 11<br />
Ausgabedatei 11<br />
Befehlsabschlusszeichen 10<br />
Befehlsabschlusszeichen, ändern 13<br />
Befehlsabschlusszeichen, zurücksetzen 228<br />
Beispiele 227<br />
Definition 226<br />
Echo-Eingabe 16<br />
exit-Befehl 10<br />
Host-Dateien, lesen 16<br />
maximale Anweisungsgröße 10<br />
Netzwerkpaketgröße 15<br />
Netzwerkpaketgröße, angeben 15<br />
Paketgröße 15<br />
quit-Befehl 10<br />
reset-Befehl 12<br />
Spaltentrennzeichen 11<br />
Statistik 14<br />
Statistikoption mit Befehlsabschlusszeichen 14<br />
Tippfehler korrigieren 12<br />
Transact-SQL, Verwendung mit 10<br />
Zeilennummern, entfernen 11, 16<br />
isql-Ausgabe formatieren 11<br />
<strong>Dienstprogramme</strong> 287
Index<br />
J<br />
JAVA_HOME, Umgebungsvariable<br />
Migration 102<br />
Java-Spalten für die Migration 106<br />
K<br />
Kennwörter<br />
bcp-Verschlüsselung 170<br />
defncopy und 210<br />
Hinweise zur Verwendung 152<br />
neue generieren 192<br />
Komma-begrenzte Ausgabe 54, 56<br />
Komponentenverzeichnis für die Migration 102<br />
Konventionen, Syntax xv<br />
Kopieren<br />
andere Sitzungen in dscp 91<br />
neue Einträge mit dscp 90<br />
Servereinträge mit dscp 90<br />
Servereinträge mit dsedit 79, 80, 82, 83<br />
zwischen Sitzungen in dscp 90<br />
Kopieren von Definitionen 209<br />
L<br />
Laden von Zeichensätzen 185, 186<br />
Siehe auch charset, Dienstprogrammbefehl 185<br />
LANG, Umgebungsvariable in backupserver 159<br />
langinstall, Dienstprogrammbefehl 236, 239<br />
Berechtigungen, erforderliche 237<br />
Definition 236<br />
langsame Version von bcp 23<br />
Deadlocks auf Indexseiten 27<br />
LC_ALL, Umgebungsvariable in backupserver 159<br />
load database, Befehl und bcp 68<br />
load transaction, Befehl<br />
bcp und 68<br />
Löschen<br />
Servereinträge (dscp) 92<br />
M<br />
manuelle Migration, was nicht migriert wird 98<br />
Massenexport/-import 69<br />
Massenimport/-export der Daten<br />
Siehe auch bcp, Dienstprogrammbefehl 163<br />
max memory, Migration 105<br />
max network packet size, Konfiguration für<br />
die Migration 109<br />
max network packet size, Konfigurationsparameter 65<br />
max packet size allowed, für sybmigrate 105<br />
max parallel degree, Konfiguration für die<br />
Migration 108<br />
Mehrbyte-Zeichensätze, Migration 107<br />
Migrieren<br />
Server (sybmigrate) 269<br />
N<br />
natives Dateiformat<br />
bcp und 36<br />
natives Format, Dateien 36<br />
Netzwerkpaketgröße<br />
angeben in isql 15<br />
Netzwerktransportadressen<br />
dsedit, bearbeiten mit 80<br />
hinzufügen mit dsedit 80, 83<br />
Netzwerktransporte 75<br />
Neue Server erstellen, mit Ressourcendateien 265, 266<br />
Siehe auch srvbuildres,<br />
Dienstprogrammbefehl 265<br />
Neue Server, erstellen 264, 265<br />
Siehe auch srvbuild, Dienstprogrammbefehl 264<br />
Neue Zeile, Abschlusszeichen (\\n)<br />
in bcp 37<br />
in interaktivem bcp 47<br />
nicht druckbare Zeichen, Hostdatei 44<br />
nicht protokollierte Transaktionen 23<br />
Nicht-Zeichen-Datentypen,<br />
Betriebssystemformat für 42<br />
Null, Zeichenabschlusszeichen (\\0) in<br />
interaktivem bcp 47<br />
Nullwerte 66<br />
interaktiver bcp und 43<br />
number of sort buffers für die Migration 109<br />
number of user connections für die Migration 108<br />
288 Adaptive Server Enterprise
number of user connections, für die Migration 109<br />
number of worker processes für die Migration 108<br />
nummerische Datentypen<br />
bcp-Konvertierung in Zeichenspeicherung 45<br />
Betriebssystemformat für 36<br />
Spalten-Dezimalstellen 54<br />
Spalten-Gesamtstellenzahl 54<br />
Nummern<br />
Zeile, entfernen aus isql 11, 16<br />
O<br />
Objekte<br />
keine Migration 140<br />
nach der Migration neu erstellen 143<br />
Objekthierarchie für die Migration 103<br />
Öffnen<br />
Sitzungen in dscp 86<br />
Sitzungen in dsedit 74<br />
optdiag, Dienstprogrammbefehl 239<br />
Berechtigungen, erforderliche 245<br />
Definition 239<br />
P<br />
Paketgröße, Netzwerk<br />
angeben in isql 15<br />
bcp, angeben mit 64<br />
Paralleler bcp<br />
in eine bestimmte Partition kopieren 29, 33<br />
Syntax 32<br />
verschiedene Methoden der Verwendung 31<br />
paralleler bcp<br />
Identity-Spalten und 33, 34<br />
verschiedene Methoden der Verwendung 34<br />
partitionierte Tabellen in bcp 26, 35<br />
Importieren von Daten, Methoden für das 27<br />
Kopieren von Daten, ungesteuert 27<br />
Seitenzuweisungen, zunehmend 28<br />
Performance<br />
bcp und 22, 34, 68<br />
isql-Netzwerkpaketgröße 15<br />
Massenexport und Paketgröße 65<br />
Index<br />
Positionen von backupserver-Fehlerlogdateien 159<br />
Präfixfeldlängen im interaktiven bcp 42<br />
Präfixfeldlängen in interaktivem bcp 44<br />
Präfixlänge 53<br />
Präfixlängen in bcp 40<br />
Primärdatenbank, nach Migration<br />
wiederherstellen 133<br />
Primäre Replikatdatenbank, Migration 132<br />
Problembehebung, Migration 140<br />
Puffer, Abfrage 12<br />
Q<br />
quit-Befehl<br />
in dscp 93<br />
in isql 10<br />
R<br />
Regeln<br />
defncopy, kopieren mit 209<br />
Tabellen, Daten kopieren in 67<br />
Replication Server, replizierte Daten in<br />
Adaptive Server 12.5 migrieren 130<br />
Replikatdatenbank<br />
Migration 132<br />
Nach Migration wiederherstellen 134<br />
Replizierte Datenbanken<br />
Aufgaben nach der Migration 133<br />
Report Workbench, inkompatibel mit defncopy 209<br />
reset, Befehl (isql) 12<br />
Ressourcedatei-Modus, Migration 122<br />
RSSD-Datenbank<br />
Migration 132<br />
Nach Migration wiederherstellen 135<br />
Rückstrich (\)<br />
Abschlusszeichen in interaktivem bcp 47<br />
Escape-Zeichen für Sonderzeichen 152<br />
<strong>Dienstprogramme</strong> 289
Index<br />
S<br />
Schließen einer Sitzung<br />
dscp 86<br />
dsedit 74<br />
schnelle Version von bcp 23<br />
Importieren von Daten 25<br />
Wiederherstellbarkeit von Daten und 23<br />
Schriftartkonventionen xv<br />
Security Mechanism, Serverattribut (dscp) 88<br />
select into, Befehl, Vergleich mit dem Massenexport/import<br />
der Daten 69<br />
select into/bulkcopy/pllsort, Datenbankoption<br />
bcp und 25<br />
Server<br />
backupserver, Namen festlegen in 158<br />
backupserver, starten in 161<br />
Geschwindigkeitsmodi bei der Verwendung von bcp<br />
21<br />
migrieren 269<br />
startserver, Dienstprogrammbefehl 266<br />
startserver, starten in 266<br />
sybmigrate, Dienstprogrammbefehl 269<br />
Server anzeigen 247<br />
Siehe auch showserver, Dienstprogrammbefehl 247<br />
Server Entry Editor, Fenster 75<br />
Server Name, Serverattribut (dscp) 87<br />
Server Object Version, Serverattribut (dscp) 87<br />
Server Service, Serverattribut (dscp) 87<br />
Server Status, Serverattribut (dscp) 87<br />
Serverattribute (dscp) 87<br />
Serverdaten, Migrieren 96<br />
Servereinträge<br />
ändern mit dsedit 77, 80<br />
hinzufügen mit dsedit 77<br />
Inhalt mit dscp anzeigen 91<br />
kopieren mit dsedit 79, 80, 82, 83<br />
löschen mit dsedit 78<br />
mit dscp auflisten 91<br />
Servereinträge hinzufügen 80<br />
umbenennen mit dsedit 78<br />
Servernamen in backupserver festlegen 158<br />
Serverspalte<br />
Namen 54<br />
Reihenfolge 53<br />
Serververbindungen<br />
backupserver, Anzahl von 158<br />
Setup-Sitzung, für sybmigrate 103<br />
showserver, Dienstprogrammbefehl 247<br />
Beispiele 247<br />
Definition 247<br />
Sicherheit, Hinweise zu 152<br />
Sichern, verglichen mit dem Massenexport/-import<br />
der Daten 68<br />
Sitzungen<br />
auflisten (dscp) 86<br />
Sitzungen für die Migration sperren 111<br />
Sonderzeichen<br />
bcp, Behandlung in 167<br />
Dienstprogrammbefehle, Verwendung in 152<br />
Sortierreihenfolgen<br />
installieren und ändern (sqllocres) 254, 255<br />
installieren und ändern, in GUI (sqlloc) 253, 254<br />
sp_dboption system procedure and bcp 25<br />
Spalten<br />
Datentypgrößen und 44<br />
mit fester oder mit variabler Länge 43<br />
Null 66<br />
Spaltentrennzeichen (isql) 11<br />
Standardwerte und bcp 67<br />
Spalten-Gesamtstellenzahl in nummerischen oder<br />
dezimalen Speicherungsformaten 54<br />
speichern<br />
Fehler bei Exportvorgängen 67<br />
Fehler bei Kopiervorgängen 65<br />
Formatdateien (bcp) 50<br />
Speicherplatzbedarf und bcp-Schritte 25<br />
Speichertypen, in bcp verwendet 46<br />
Sprachen<br />
andere Sprachen, mit bcp 61<br />
Angabe für die Migration 114<br />
installieren und ändern (sqllocres) 254, 255<br />
installieren und ändern, in GUI (sqlloc) 253, 254<br />
Migration 106<br />
neue installieren (langinstall) 236, 239<br />
SPX/IPX-Adressen für Interface-Einträge 81<br />
sql.ini, Datei<br />
dsedit-Sitzungen, öffnen mit 73<br />
Einträge ändern 77<br />
Einträge hinzufügen 77<br />
Einträge kopieren 79, 82, 83<br />
Einträge löschen 78<br />
Einträge umbenennen 78<br />
290 Adaptive Server Enterprise
sqldbgr, Dienstprogramm 247<br />
sqlloc, Dienstprogrammbefehl 253, 254<br />
Berechtigungen, erforderliche 254<br />
Definition 253<br />
sqllocres, Dienstprogrammbefehl 254, 255<br />
Berechtigungen, erforderliche 255<br />
Definition 254<br />
SQL-Parser-Dienstprogramm. Siehe isql,<br />
Dienstprogrammbefehl 226<br />
sqlsrvr, Dienstprogrammbefehl 255<br />
Definition 255<br />
sqlupgrade, Dienstprogrammbefehl 263<br />
Berechtigungen, erforderliche 263<br />
Definition 263<br />
sqlupgraderes, Dienstprogrammbefehl 264<br />
Berechtigungen, erforderliche 264<br />
Definition 264<br />
srvbuild, Dientsprogrammbefehl 264, 265<br />
Berechtigungen, erforderliche 265<br />
Definition 264<br />
srvbuild, für sybmigrate 101<br />
srvbuildres, Dienstprogrammbefehl 265, 266<br />
Berechtigungen, erforderliche 266<br />
Definition 265<br />
Standardwerte<br />
bcp-Datenkonvertierung 45<br />
bcp-Eingabeaufforderungen 38, 48<br />
Daten in Tabellen kopieren 67<br />
Eingabeaufforderungen im<br />
interaktiven bcp 38, 48<br />
kopieren mit defncopy 209<br />
select into/bulkcopy/pllsort-Optionseinstellungen<br />
in neuen Datenbanken 25<br />
Sprachen in backupserver 159<br />
Zeichensätze in backupserver 160<br />
Zeichensätze, in bcp 169<br />
Starten<br />
dscp-Dienstprogramm 85<br />
dsedit, Dienstprogrammbefehl 71, 72<br />
Server (startserver) 266<br />
XP Server manuell (xpserver) 273, 275<br />
startserver, Dienstprogrammbefehl 266<br />
backupserver und 161<br />
Beispiele 267<br />
Definition 266<br />
Runserver-Datei, Beispiele 268<br />
Index<br />
Statistik<br />
aktualisierte laden (optdiag) 239<br />
anzeigen (optdiag) 239<br />
isql 14<br />
SYBASE, Umgebungsvariable 102<br />
SYBASE_ASE, Umgebungsvariable 102<br />
SYBASE-Umgebungsvariable in dsedit 73<br />
sybmigrate<br />
Adaptive Server (Quelle) 95<br />
Adaptive Server (Ziel) 95<br />
Adaptive Server-Version 95<br />
additional network memory, Parameter 105<br />
Aufgaben für replizierte Datenbanken nach der<br />
Migration 133<br />
Aufgaben nach der Migration 130<br />
ausführbare Datei 102<br />
ausführen 110<br />
Ausgabevorlage, Ressourcedatei 114<br />
bcp 96<br />
benutzerdefinierte Logdatei 113<br />
Berechtigungen 101<br />
Bereinigen von Fehlern nach der Migration 142<br />
Berichte 112, 270<br />
CIS bulk insert array size 109<br />
CIS bulk insert array size, Konfiguration 104<br />
CIS bulk insert batch size, Konfiguration 109<br />
CIS packet size, Konfiguration 105, 108<br />
Copy Threads 107<br />
data limits filter mode für replizierte Daten 131<br />
Datenbank erneut migrieren 142<br />
ddlgen 96<br />
Debug-Level 111<br />
einzelne Objekte neu erstellen 143<br />
erforderliche Komponenten 100<br />
Fehlervermeidung 110<br />
GUI-Modus 114<br />
Hilfeinformationen 111<br />
Index neu erstellen 130<br />
Index Threads 108<br />
Installation 100<br />
interfaces-Datei 111<br />
Java-Spalten 106<br />
Komponentenverzeichnis 102<br />
Konfiguration des alten Adaptive Server 108<br />
Konfiguration und Optimierung 107<br />
max packet size allowed, Konfiguration 105<br />
<strong>Dienstprogramme</strong> 291
Index<br />
max parallel degree, Konfiguration 108<br />
Mehrbyte-Zeichensätze 107<br />
mehrere Sitzungen 104<br />
Migration der Datenbankdaten 97<br />
Migration der Serverdaten 96<br />
Migration einer primären Replikatdatenbank 132<br />
Migration einer Replikatdatenbank 132<br />
Migration einer RSSD-Datenbank 132<br />
Migration mit hoher Verfügbarkeit 138<br />
Migrationssitzung 120<br />
Migrieren von Replication Server-Daten 130<br />
number of sort buffers, Konfiguration 109<br />
number of user connections, Konfiguration 108, 109<br />
number of worker processes, Konfiguration 108<br />
Objekte werden nicht migriert 140<br />
Objekthierarchie 103<br />
Plattformen 102<br />
Primärdatenbanken wiederherstellen 133<br />
Problembehebung und Fehlermeldungen 140<br />
Replikatdatenbanken wiederherstellen 134<br />
Ressourcedatei-Modus 122<br />
RSSD-Datenbanken wiederherstellen 135<br />
Setup-Sitzung 103, 114<br />
Speicher für JVM 102<br />
Sprache angeben 114<br />
Sprachen 106<br />
sybmigrate , Log 135<br />
Syntax 111<br />
Trace-Flags für die Befehlszeile 114<br />
Überschreiben der Sperrsitzung 111<br />
Umgebungsvariablen 102<br />
Upgrade 100<br />
Validierungssitzung 103, 122<br />
Versionspfad 102<br />
versionsübergreifende Migration 139<br />
Versionszeichenfolge 111<br />
Voraussetzungen 100<br />
Vorbereitung der Migration 104<br />
Zeichensatz angeben 114<br />
Zeichensatzkonvertierung 106<br />
zwei Datenbanken zusammenführen 142<br />
sybmigrate ,max network packet size-<br />
Konfiguration 109<br />
sybmigrate, Dienstprogrammbefehl 269<br />
Definition 269<br />
sybmigrate, was nicht migriert wird 98<br />
sybmigrate,max memory-Konfiguration 105<br />
SYBMIGRATE_MEMORY, Umgebungsvariable<br />
Migration 102<br />
sybmultbuf, zum Starten von Backup Server 159<br />
Symbole, Feldabschlusszeichen (bcp) 47<br />
Syntax<br />
für sybmigrate 111<br />
Syntaxkonventionen xv<br />
sysconfig.exe, für sybmigrate 101<br />
System Data Format (SDF), Ausgabe in bcp 55<br />
Systemprozedur (sp_dboption) 25<br />
T<br />
Tabellen<br />
bcp-Eingabeaufforderungen in 40<br />
bcp-Zeichensatz-Standardwerte 169<br />
Dienstprogrammbefehle 153<br />
erforderliche Berechtigung zum Hineinkopieren<br />
von Daten 175<br />
erforderliche Berechtigung zum Kopieren in<br />
Betriebssystemdateien 175<br />
erforderliche Berechtigungen zum Kopieren in<br />
Betriebssystemdateien 20<br />
erforderliche Berechtigungen zum Kopieren von<br />
Daten in 20<br />
Tabellendaten, kopieren 48<br />
Tabellenzeilen<br />
Kopieren in Anweisungsfolgen 62<br />
Länge 31<br />
Tabulare Ausgabe 54, 57<br />
Tabulator-Feldabschlusszeichen (\\\) in<br />
interaktivem bcp 47<br />
TCP/IP-Adressen für Interface-Einträge 81<br />
text, Datentyp<br />
interaktiver bcp und 43<br />
Trace Flags und backupserver 162<br />
Trace-Flags, für sybmigrate 114<br />
Transact-SQL<br />
mit isql verwenden 10<br />
Transport Address, Serverattribut (dscp) 88<br />
Transport Type, Serverattribut (dscp) 87<br />
Trigger<br />
bcp, vor der Verwendung löschen 25<br />
kopieren mit defncopy 209<br />
Tabellen, Daten kopieren in 67<br />
Verlangsamen von bcp 22<br />
292 Adaptive Server Enterprise
U<br />
Übersicht<br />
dscp-Befehle 93<br />
Übertragen von Daten aus Programmen mit bcp 19<br />
Umbenennen von Servereinträgen mit dsedit 78<br />
Umgebungsvariablen<br />
DSLISTEN (backupserver) 161<br />
LANG (backupserver) 159<br />
LC_ALL (backupserver) 159<br />
SYBASE_ASE 102<br />
Versionspfad, für sybmigrate 102<br />
Umleitung herein, Symbol (\isql) 16<br />
Umleitung hinaus, Symbol (\gt) in isql 16<br />
Upgrade, Adaptive Server 263<br />
Siehe auch sqlupgrade,<br />
Dienstprogrammbefehl 263<br />
Upgrade, Adaptive Server mit<br />
Ressourcendateien 264<br />
Siehe auch sqlupgraderes,<br />
Dienstprogrammbefehl 264<br />
V<br />
Validierungssitzung, für sybmigrate 103<br />
Verborgener verschlüsselter Text 215<br />
Version von Adaptive Server für sybmigrate 95<br />
Versionspfad, für sybmigrate 102<br />
Verzeichnisdienste<br />
Einträge ändern 77<br />
Einträge hinzufügen 77<br />
Einträge kopieren 79, 82, 83<br />
Einträge löschen 78<br />
Einträge umbenennen 78<br />
öffnen, mit dsedit 73<br />
Vollständige Pfadnamen angeben<br />
in Backup Server 159<br />
Vollständige Pfadnamen in Backup Server<br />
verwenden 159<br />
Index<br />
W<br />
Warnungen<br />
bcp in Daten-Wiederherstellung 166<br />
bcp-Datenverlust 24<br />
defncopy-Ausfall wegen langer Kommentare 214<br />
X<br />
XP Server, manuell starten 273, 275<br />
Siehe auch xpserver, Dienstprogrammbefehl 273<br />
xpserver, Dienstprogrammbefehl 273, 275<br />
Berechtigungen, erforderliche 275<br />
Definition 273<br />
Z<br />
Zeichenformate<br />
Abschlusszeichen für 47<br />
bcp 19<br />
Standard in bcp 36, 37<br />
Zeichensatz<br />
Angabe für die Migration 114<br />
Zeichensätze<br />
backupserver, Standardwert in 160<br />
bcp, Standardwerte in 169<br />
installieren und ändern (sqllocres) 254, 255<br />
installieren und ändern, in GUI (sqlloc) 253, 254<br />
Konvertieren von Nichtzeichen-Daten 44<br />
laden mit charset 185, 186<br />
systemeigene Standardwerte 61<br />
Zeilen in bcp, und fehlerhafte Tabellen 67<br />
Zeilen, Tabelle<br />
Länge 31<br />
Massenexport/-import und Fehler 63<br />
Zeilenabschlusszeichen<br />
bcp in 38<br />
interaktiver bcp in 47, 48<br />
Zeilennummern, entfernen in isql 11<br />
Zeilenschaltung, Datenfeldabschlusszeichen (\\r)<br />
in interaktivem bcp 47<br />
Zeilenummern, entfernen in isql 16<br />
Zugriffsregeln auf Zeilenebene und bcp 62<br />
Zurücksetzen von Prozessen 63<br />
<strong>Dienstprogramme</strong> 293
Index<br />
294 Adaptive Server Enterprise