Sybase Adaptive Server Enterprise
Der Datenbankserver Sybase Adaptive Server Enterprise / Sybase ASE (früher: Sybase SQL Server) wird von der Firma Sybase entwickelt.
Sybase ASE verwaltet
- Mehrere Benutzer mit mehreren Aufgaben
- Mehrere Datenbanken und ihre Position auf mehreren Festplatten. Jede Datenbank besitzt ihre eigenen Optionen, Objektinformationen und Transaktionslogs.
- Mapping logischer Objekte zu Daten auf physischen Geräten
- Daten- und Prozedurcaches im Arbeitsspeicher
Installation
- Erstelle einer eines Sybase-Kontos und Konfiguration des Betriebssystems
- Laden der Sybase-Dateien ("sybsetup")
- Installation von Sybase Adaptive Server Enterprise (srvbuild)
- Initialisieren der devices, Anlegen der Datenbanken, Anlegen der Benutzerkonten
Software-Struktur
Die wichtigsten Verzeichnisse und Dateien sind:
$SYBASE | |
$SYBASE/interfaces | Definition der Netzwerkports |
$SYBASE/ASE_12-5 | Server-Konfigurationsdatei |
$SYBASE/ASE_12-5/bin | Programmdateien (u. a. backupserver, dataserver, srvbuild) |
$SYBASE/ASE_12-5/include | Header-Dateien |
$SYBASE/ASE_12-5/install | Installationsprogramme, RUN_SERVER-Dateien |
$SYBASE/ASE_12-5/lib | Bibliotheken |
$SYBASE/ASE_12-5/script | SQL-Skripte |
$SYBASE/OCS_12-5 | |
$SYBASE/OCS_12-5/bin | Programmdateien (u. a. bcp, dscp, isql) |
$SYBASE/OCS_12-5/include | Header-Dateien |
$SYBASE/OCS_12-5/lib | Bibliotheken |
Stored procedures
"Stored procedures" sind SQL-Befehle, die in Sybase ASE abgespeichert wurden. Einige werden bereits mit dem Produkt ausgeliefert und heissen dann "Systemprozedur" (sytem procedure). Systemprozeduren greifen typischerweise auf Systemtabellen zu:
Anzeige von Informationen | |
---|---|
sp_helpdb | Tabelle "sysdatabases" |
sp_who | Tabelle "sysprocesses" |
Änderung von Tabellen | |
sp_addumpdevice | Tabelle "sysdevices" |
sp_addlogin | Tabelle "syslogins" |
Devices
Zum Anlegen von Devices wird disk init verwendet. Dabei wird ein neuer Datensatz in die Tabelle "sysdevices" der Datenbank "master" geschrieben. Diese Tabelle listet Datenbanken und Dump devices.
$ $SYBASE/ASE-12_5/install/isql -U*** -P*** -S*** 1> select * from sysdevices 2> go low high status cntrltype name phyname mirrorname ----------- ----------- ------ --------- ------------- -------------------------------------------- ---------- 117440512 117964799 16386 0 DBsisisdev /SunRiseDatabase/sybaseDatabase/data1Dev NULL 83886080 84148223 16386 0 logdev /SunRiseDatabaseLog/sybaseDatabase/logDev NULL 0 102399 3 0 master /SunRiseDatabase/sybaseDatabase/masterDev NULL 16777216 16879615 16386 0 sysprocsdev /SunRiseDatabase/sybaseDatabase/sysprocsDev NULL 33554432 33559551 16386 0 systemdbdev /SunRiseDatabase/sybaseDatabase/sybsysdbDev NULL 0 20000 16 2 tapedump1 /dev/nst0 NULL 0 20000 16 3 tapedump2 /dev/nst1 NULL 50331648 50855935 2 0 tempdev /SunRiseDatabase/sybaseDatabase/tempDev NULL
Die Systemprozedur sp_helpdevice fragt die Tabelle "sysdevice" ab, ermittelt bestimmte Werte und zeigt nützliche Informationen über die Devices an:
$ $SYBASE/ASE-12_5/install/isql -U*** -P*** -S*** 1> sp_helpdevice 2> go device_name physical_name description status cntrltype device_number low high ----------- --------------------------------------------- -------------------------------------------------------- DBsisisdev /SunRiseDatabase/sybaseDatabase/data1Dev besonders, dsync on, Physischer Plattenspeicher, 1024.00 MB 16386 0 7 117440512 117964799 /SunRiseDatabaseLog/sybaseDatabase/logDev besonders, dsync on, Physischer Plattenspeicher, 512.00 MB 16386 0 5 83886080 84148223 master /SunRiseDatabase/sybaseDatabase/masterDev besonders, dsync on, Standard-Plattenspeicher, Physischer Plattenspeicher, 200.00 MB 3 0 0 0 102399 sysprocsdev /SunRiseDatabase/sybaseDatabase/sysprocsDev besonders, dsync on, Physischer Plattenspeicher, 200.00 MB 16386 0 1 16777216 16879615 systemdbdev /SunRiseDatabase/sybaseDatabase/sybsysdbDev besonders, dsync on, Physischer Plattenspeicher, 10.00 MB 16386 0 2 33554432 33559551 tapedump1 /dev/nst0 Platte, Sicherungsdevice 16 2 0 0 20000 tapedump2 /dev/nst1 Band, 625 MB, Sicherungsdevice 16 3 0 0 20000 tempdev /SunRiseDatabase/sybaseDatabase/tempDev besonders, dsync off, Physischer Plattenspeicher, 1024.00 MB 2 0 3 50331648 50855935
Anlegen eines zusätzlichen Devices
Anlegen eines zusätzlichen Devices.
1> disk init 2> name="DATAsisisDev2", 3> physname="/SybaseDatabase/15.0.2/DATAsisisDev2", 4> size="4G", 5> dsync=false 6> go
Erweiterung der Datenbank "sisis":
1> alter database sisis 2> on DATAsisisDev2=4096 3> go
Falls der temporäre Bereich erweitert wird, muss nach Anlegen eines entsprechenden Devices die Datenbank "tempdb" erweitert werden.
1> alter database tempdb 2> on tempDev2=2048 3> go
Entfernen von Devices
Wann ist es notwendig, ein Device zu entfernen?
- Um Hardware auszuwechseln, zu reparieren oder hinzuzufügen
- Um die Grösse eines Devices zu ändern muss es gelöscht und erneut hinzugefügt werden:
- sp_dropdevice <Device-Name>
- Danach muss der Adaptive Server neu gestartet werden, damit die Device-Nummer wiederverwendet werden kann ("vdevno")
- Bei Festplattendateien muss die Datei nach dem Löschen des Devices gelöscht werden, um den Festplattenplatz freizugeben.
- Ein Device kann nicht gelöscht werden, solange sich noch Datenbanken darauf befinden.
Befehle
- backupserver - the executable form of the Backup Server program.
- bcp - copies a database table to or from an operating system file in a user- specified format.
bcp [[database_name.]owner.][view_name | table_name [:partition_id]] {in | out} datafile [-c] [-E] [-n] [-N] [-X] [-a display_charset] [-A packet_size] [-b batchsize] [-e errfile] [-f formatfile] [-g id_start_value] [-I interfaces_file] [-J client_charset] [-m maxerrors] [-P password] [-q datafile_charset] [-R remote_server_principal] [-S server] [-t field_terminator] [-T text_or_image_size] [-U username] [-z language] or bcp -v
Beispiel:
$SYBASE/bin/bcp sisis..d02ben out /tmp/d02ben.tab -c -Usisis -Psisis123 -t\|
- buildmaster - builds the master device and creates the master, model, and tempdb databases on the device.
buildmaster [-d disk] [-c cno] [-s size] [-m] [-r] [-q] [-x] or buildmaster -v
- dataserver - The executable form of the Adaptive Server program.
dataserver -ddevicename [-cconfigurationfile] [-eerrorlogfile] [-m] [-rmastermirror] [-Msharedmem_directory] [-iinterfaces_file_directory] [-sservername] [-psso_login_name] or dataserver -v
- defncopy - Copies definitions for specified views, rules, defaults, triggers, or procedures from a database to an operating system file or from an operating system file to a database. The defncopy utility cannot copy table definitions or reports created with Report Workbench.
defncopy [-X] [-a display_charset] [-I interfaces_file] [-J [client_charset]] [-P password] [-R remote_server_principal] [-S [server]] [-U username] [-z language] {in filename dbname | out filename dbname [owner.]objectname [[owner.]objectname...] } or defncopy -v
- dscp - Allows you to view and edit server entries in the interfaces file from the command line.
dscp [-p] or dscp -v To exit from dscp: quit or exit
- dsedit - Allows you to view and edit server entries in the interfaces file using a graphical user interface based on X11/Motif.
dsedit or dsedit -v
- isql - Interactive SQL parser to Adaptive Server.
- langinstall - Installs a new language in an Adaptive Server.
langinstall [-S server] [-I interfaces_file] [-P password] [-R release_number] language character_set or langinstall -v
- optdiag - Displays optimizer statistics or loads updated statistics into system tables.
optdiag [ binary ] [simulate ] statistics { -i input_file | database[.owner[.[table[.column]]]] [-o output_file] } [-U username] [-P password] [-I interfaces_file] [-S server] [-v] [-h] [-Tflag_value] [-z language] [-J client_charset] [-a display_charset]
- showserver - Anzeige der aktuell auf dem lokalen Rechner laufenden Adaptive-Server und Backup-Server.
- shutdown beendet einen Sybase-Server.
- sqlloc - Installs and modifies languages, character sets, and sort order defaults for Adaptive Server using a graphical user interface based on X11/Motif.
sqlloc [-S server] [-U user] [-P password] [-s sybase_dir] [-I interfaces_file] [-r resource_file] or sqlloc -v
- sqllocres - Installs and modifies languages, character sets, and sort order defaults for Adaptive Server, using a resource file.
sqllocres [-S server] [-U user] [-P password] [-s sybase_dir] [-I interfaces_file] [-r resource_file] or sqllocres -v
- sqlupgrade - Upgrades your currently installed release of Adaptive Server to the newest release using a graphical user interface based on X11/Motif.
sqlupgrade [-s sybase_dir] [-r resource_file] or sqlupgrade -v
- sqlupgraderes - Upgrades your currently installed release of Adaptive Server to the newest release using resource files.
sqlupgraderes [-s sybase_dir] [-r resource_file] or sqlupgraderes -v
- srvbuild - Creates a new Adaptive Server, Backup Server, Monitor Server, or XP Server with default or user-specified values for key configuration attributes using a graphical user interface based on X11/Motif.
srvbuild [-s sybase_dir] [-I interfaces_file] [-r resource_file] or srvbuild -v
- srvbuildres - Creates, using resource files, a new Adaptive Server, Backup Server, Monitor Server, or XP Server with default or user-specified values for key configuration attributes.
srvbuildres [-s sybase_dir] [-I interfaces_file] [-r resource_file] or srvbuildres -v
- startserver - Starts an Adaptive Server and/or a Backup Server.
startserver [[-f runserverfile] [-m]] ...
- sybload - Uploads Sybase products from the distribution media and builds the Sybase installation directory.
sybload [-D]
- sybsetup - Installs and configures Adaptive Server from a single location using a graphical user interface based on X11/Motif.
sybsetup [-c devicename] [-t devicename] [-l local_source] [-r remote_source]
FAQ
Ansehen einer Bandsicherung
Die Gerätedatei "/dev/nst0" muss die Rechte 666 besitzen.
$ ls -al /dev/nst0 crw-rw-rw- 1 root disk 9, 128 2004-06-30 21:04 /dev/nst0
Danach kann die Bandsicherung wie folgt angesehen werden.
1> load database model from "/dev/nrmt0" with listonly 2> go Backup Server-Sitzungs-ID: 12. Verwenden Sie diesen Wert bei der Ausführung der gespeicherten Prozedur 'sp_volchanged' nach einem vom Backup Server angeforderten Datenträgerwechsel. Backup Server: 4.34.1.1: Device '/dev/nrmt0': Datenträger:' ' Backup Server: 4.36.1.1: Device '/dev/nrmt0': Dateiname: 'sisis0925212750 ' Erstellungsdatum und -zeit: Mittwoch, 9 Sep, 2009, 21:00:00 Ablaufdatum und -zeit: Mittwoch, 9 Sep, 2009, 00:00:00 Datenbankname: 'sisis ' Backup Server: 6.30.1.2: Device /dev/nrmt0: Das Katalogisieren des Datenträgers wurde beendet. Backup Server: 6.45.1.1: Achten Sie darauf, Band/Diskette aus Laufwerk /dev/nrmt0 zu nehmen (Server: , Sitzungs-ID: 12).
Zurücksichern einer Datenbanksicherung ab Band
Die Gerätedatei "/dev/nst0" muss die Rechte 666 aufweisen.
$ ls -al /dev/nst0 crw-rw-rw- 1 root disk 9, 128 2004-06-30 21:04 /dev/nst0
Danach kann die Bandsicherung der Datenbank "sisis" wie folgt zurückgesichert und die Datenbank online gebracht werden.
1> load database sisis from "/dev/nrmt0" 2> go Backup Server-Sitzungs-ID: 18. Verwenden Sie diesen Wert bei der Ausführung der gespeicherten Prozedur 'sp_volchanged' nach einem vom Backup Server angeforderten Datenträgerwechsel. Backup Server: 6.28.1.1: Sicherungsdateiname 'sisis0925212750 ', Sektion-Nummer 1, gemountet auf Bandlaufwerk '/dev/nrmt0' Backup Server: 4.58.1.1: Datenbank sisis: 74516 KByte LOAD. Backup Server: 4.58.1.1: Datenbank sisis: 128606 KByte LOAD. ... Backup Server: 4.58.1.1: Datenbank sisis: 6291892 KByte LOAD. Backup Server: 4.58.1.1: Datenbank sisis: 6291904 KByte LOAD. Backup Server: 6.45.1.1: Achten Sie darauf, Band/Diskette aus Laufwerk /dev/nrmt0 zu nehmen (Server: , Sitzungs-ID: 18). Backup Server: 3.42.1.1: LOAD ist beendet (Datenbank sisis). Started estimating recovery log boundaries for database 'sisis'. Database 'sisis', checkpoint=(1440431, 22), first=(1440431, 22), last=(1440433, 1). Completed estimating recovery log boundaries for database 'sisis'. Started ANALYSIS pass for database 'sisis'. Completed ANALYSIS pass for database 'sisis'. Started REDO pass for database 'sisis'. The total number of log records to process is 29. Redo pass of recovery has processed 5 committed and 0 aborted transactions. Completed REDO pass for database 'sisis'. Verwenden Sie den Befehl ONLINE DATABASE, um diese Datenbank online zu bringen. Der SQL Server bringt sie nicht automatisch online. 1> online database sisis 2> go Started estimating recovery log boundaries for database 'sisis'. Database 'sisis', checkpoint=(1440431, 22), first=(1440431, 22), last=(1440433, 1). Completed estimating recovery log boundaries for database 'sisis'. Started ANALYSIS pass for database 'sisis'. Completed ANALYSIS pass for database 'sisis'. Recovery of database 'sisis' will undo incomplete nested top actions. Datenbank 'sisis' scheint eine ältere Version als die aktuelle Installation zu sein; der SQL Server wird auf sie zugreifen und sie - falls nötig - aktualisieren. Datenbank 'sisis': Upgrade-Schritt [ID 1416] wird begonnen: Ausführung der SQL-Anweisung (update sysroles set id=11 from sysu) (0 rows affected) (0 rows affected) (0 rows affected) Datenbank 'sisis': Upgrade-Schritt [ID 1418] wird begonnen: Ausführung der SQL-Anweisung (if not exists (select 1 from syscol) Datenbank 'sisis' ist jetzt online.
Datei "droptabs.sql"
set line 150 set pages 1000 set heading off set feedback off set recsep off select 'spool trunctabs.sql.spool' from dual; select '/* ' || chr(10) || 'loesche Tabelle ' || TABLE_NAME || ' */' || chr(10) || 'truncate table ' || TABLE_NAME || ';' from user_tables; select 'spool off' from dual; spool off
Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|
Sybase Inc. | eng | The Sybase FAQs (Adaptive Server Enterprise)wbm | |
Rob Verschoor | eng | Sypronwbm | |
Michael Peppler | eng | ASE on Linux FAQwbm |