Hier eine kleine Sammlung an nützlichen Tipps rund um die Sybase Datenbank für die alltägliche Benutzung. Ist man bereits an Oracle gewöhnt kommt man mit ein bisschen Eingewöhnung auch ganz gut mit der Sybase Datenbank zurecht 😉
Datenbanken in der Systemumgebung aufspüren per dblocate:
[sybase@server]$ dblocate SQL Anywhere Server Enumeration Utility Version 16.0.0.807 Server Name Address ----------- ------- sapdb01 sybaseprod.domain.org:2640 sapdb02 sybasekons.domain.org:2650 sapdb03 sybaseentw.domain.org:2640
Sybase Shell Login ähnlich sqlplus bei Oracle:
dbisql -d1 -nogui -c "uid=;pwd=;dbn=sapdb03;eng=sapb01;links=tcpip"
Systable auslesen und die Ausgabe in eine Datei umlenken:
(DBA)> select * from sys.systable; output to systable.txt; Execution time: 0.015 seconds Exporting data to "/sybase/systable.txt.txt" 428 rows written to "/sybase/systable.txt.txt" Execution time: 0.44 seconds (DBA)> exit
Systembenutzer auslesen und die Ausgabe in eine Datei umlenken:
(DBA)> select * from sys.sysuser; output to syuser.txt Execution time: 0.016 seconds Exporting data to "/sybase/syuser.txt" 118 rows written to "/sybase/syuser.txt" Execution time: 0.033 seconds (DBA)> exit
Auch ein select count sieht recht vertraut aus:
(SYBASEUSER)> select count(*) from ZSYBASEUSER_TABELLE01; select count(*) from ZSYBASEUSER_TABELLE01; count() -------------------- 9 (1 rows) Execution time: 0.019 seconds -- Execution time: 0.019 seconds (SYBASEUSER)>
Datenbankupgrade (logisch) nach einer Systemkopie oder einem Sybase Softwareupgrade:
(DBA)> alter database upgrade; Database upgrade started Creating system views Creation of system views completed Creating DBO views Creation of DBO views completed Creating system procedures Creation of system procedures completed Creating system views Creation of system views completed Setting option values Setting option values completed Creating migration procedures Creation of migration procedures completed Creating jConnect procedures Creation of jConnect procedures completed 29 row(s) affected Execution time: 7.595 seconds (DBA)>
Sybase Datenbankoptionen ändern – hier zum Beispiel Ausführungspläne als html Reports ablegen
(DBA)>set option public.Query_Plan_As_HTML_Directory='/sybase/data/sapnlsdb01/html'; SET TEMPORARY OPTION QUERY_PLAN_AS_HTML = ‘ON’; (DBA)>
Einen VIEW SYBASEUSER.ZSYBASEUSER_TABELLE01 für eine Tabelle erstellen:
(DBA)>create view SYBASEUSER.ZSYBASEUSER_TABELLE01 as select * from SYBASEUSER.ZSYBASEUSER_TABELLE01__V0001; (DBA)>commit;
Einen VIEW SYBASEUSER.ZSYBASEUSER_TABELLE01 für eine Tabelle löschen:
(DBA)>drop view "SYBASEUSER.ZSYBASEUSER_TABELLE01"; (DBA)>commit;
Einem Sybase User ein neues Passwort geben:
(DBA)>grant connect to SYBASEPROD identified by 'password';
Einem Sybase User ein neues Passwort geben:
(DBA)>grant connect to SYBASEPROD identified by 'password';
Einem Sybaser User Berechtigungen erteilen:
(DBA)>grant resource to PSYBASEPROD; (DBA)>grant select on sys.systable to PSYBASEPROD;
Eine Tabelle einem anderen Benutzer zuordnen:
(DBA)>alter table SYBASEUSER.ZSYBASEUSER_TABELLE01 alter owner to SYBASENEW preserve permissions preserve foreign keys; (DBA)>commit;
Einen Index als Schemauser droppen (Hier wird der Tabellenmame und der Indexname der Tabelle komplett mit angegeben“:
use 'SID'; setuser 'SAPSCHEMA'; set quoted_identifier on; drop index "TABELLENNAME"."INDEXNAME";
Eine Tabelle umbennenn:
(DBA)>sp_iqrename "SYBASEUSER.ZSYBASEUSER_TABELLE01", "SYBASENEW.ZSYBASEUSER_TABELLE01"; (DBA)>commit;
Einen Index neu aufbauen:
(DBA)>sp_iqrebuildindex '"SYBASEUSER.ZSYBASEUSER_INDEX01"' , 'column "Z_WHERE_CLAUSE" 0' ; (DBA)>commit;
Sybase Datenbankversion per isql bestimmen:
(DBA)> select @@version; @@version -------------------------------------------------------------------------------------------------------------------------------- SAP IQ/16.0.0.807/140507/P/sp08/Enterprise Linux64 - x86_64 - 2.6.18-194.el5/64bit/2014-05-07 18:02:42 (1 rows) Execution time: 0.062 seconds (DBA)>
Datenbank-ID bestimmen:
(DBA)> select @@servername, getdate() @@servername getdate() ----------------------------------------------------------------------------------------------------------------------------------------------------- sapdb01 2015-07-14 16:32:39.579 (1 rows) Execution time: 0.013 seconds (DBA)>
Als reines Nachschlagekompendium bietet sich das Sybase Infocenter an.