Der Hostname wird in der Datei /etc/sysconfig/network unter dem Eintrag HOSTNAME gepflegt.
Nov 28
Hostname in CentOS ändern
Aug 13
Netzwerkänderung eines RHEL 6 nach klonen einer VM (VMWare vSphere 5)
Nachdem man eine Linux-VM geklont hat, muss man ggf. noch die Netzwerkkarte wieder in Betrieb nehmen.
- Nach dem Klonen die neue VM anwerfen
-
In der Datei /etc/udev/rules.d/70-persistent-net.rules die ursprüngliche eth0-Schnittstelle deaktivieren/auskommentieren und anschließend di eSchnittstelle eth1 in eth0 umbenennen
- In der Datei /etc/sysconfig/network-scripts/ifcfg-eth0 die MAC-Adresse sowie ggf. die IP-Adresse anpassen
- Jetzt nur noch das System einmal durchstarten (ist zwar nicht unbedingt notwendig… aber zur Sicherheit)
Mrz 09
Securitynotes im SAP-System
Wenn man überprüfen möchte, welche SAP-Securitynotes im System eingespielt sind bzw. noch eingespielt werden müssen, startet man in der SE38 den Report RSECNOTE. Leider muss man dann die einzelnen Notes im Detail prüfen, da die angezeigten Hinweise ggf. für das installierte System gar nicht relevant sind.
Jan 18
Zeichensatz in Dateien unter Linux konvertieren
Dateien konvertiert man am besten unter Linux mit dem Tool iconv.
Um eine Datei z.B. von UTF-8 in ISO-8859-1 zu konvertieren, gibt es folgendes Kommando:
iconv --to-code=ISO-8859-1 --from-code=UTF-8 /tmp/test.csv > /tmp/test2.csv |
Jan 17
SM37 Jobs mit SQL-Mitteln ausgeben
Um Jobs die in der Transaktion SM37 eingeplant sind auszugeben, kann man auf DB-Ebene folgendes Kommando eingeben:
SELECT jobname, sdluname, TO_DATE (SDLDATE || SDLTIME, 'yyyymmddhh24miss') "PLANZEITPUNKT", strtdate, strttime, enddate, endtime, CASE WHEN STATUS = 'R' THEN 'Aktiv' WHEN STATUS = 'Y' THEN 'Bereit' WHEN STATUS = 'P' THEN 'Geplant' WHEN STATUS = 'S' THEN 'Freigegeben' WHEN STATUS = 'A' THEN 'Abgebrochen' WHEN STATUS = 'F' THEN 'Fertig' WHEN STATUS = 'Z' THEN 'freig./susp.' WHEN STATUS = 'X' THEN 'Unbekannt' ELSE 'Unbekannt' END "STATUS" FROM tbtco WHERE TO_DATE (SDLSTRTDT || SDLSTRTTM, 'yyyymmddhh24miss') > SYSDATE - 1 ORDER BY TO_DATE (SDLSTRTDT || SDLSTRTTM, 'yyyymmddhh24miss') |
Hierbei werden alle Jobs der letzten 24 Stunden sortiert nach Einplanzeit ausgegeben.
Nov 10
Fehlende User für neuen Mandanten im SAP-System
Wenn ein Mandant (ohne dass ein Customizing kopiert wird) neu erstellt wird, fehlen auch sämtliche User im Mandanten. Man kann sich allerdings trotzdem mit dem User SAP* und Passwort PASS anmelden. Voraussetzung dafür ist jedoch das der Profile-Parameter login/no_automatic_user_sapstar auf Wert 0 gesetzt ist.
Nov 08
Oracle Sequences sichern/wiedereinspielen
Für einen Export (zur Datensicherung) kann es wichtig sein, dass Sequenzes gesichert und nach einem Restore wieder eingespielt werden müssen. Dazu habe ich ein kleines Shell-Script geschrieben:
#!/bin/bash sqlplus -SM <<- DOK system/<passwort> set lines 1000; set pages 2000; SET ECHO OFF SET FEEDBACK OFF SET HEADING OFF SET AUTOPRINT OFF SET AUTOTRACE OFF SET SHOW OFF SET VERIFY OFF select * from (select 'drop sequence '||'${1}'||'.'||Sequence_name||';' befehl from all_sequences where sequence_owner=upper('${1}') and Sequence_name=upper('${2}') union select 'create sequence '||'${1}'||'.'||Sequence_name|| ' minvalue '||Min_value|| ' maxvalue '||max_value|| ' start with '||last_number || ' increment by '||increment_by|| case when cache_size = 0 then ' nocache ' else ' cache ' || cache_size end ||' '|| case when order_flag = 'Y' then 'order' end ||' '|| case when cycle_flag = 'Y' then 'cycle' end ||';' from all_sequences where sequence_owner=upper('${1}') and Sequence_name=upper('${2}')) order by substr(befehl,8,319); exit; DOK |
Dieses Script wird auf OS-Ebene mit zwei Parametern aufgerufen:
$1: Schemaname
$2: Sequenzname
Um die Sequenzes wieder ein zu spielen, muss man nur die Ausgaben des Scripts mit dem SQL-Editor (z.B. sqlplus) ausführen.
Nov 08
Anzahl der SAP-Workprozesse eintragen
Die Workprozesse werden im Instanzprofil der SAP-Systeme mit der Transaktion RZ10. Dazu wählt man unter dem Punkt Profil, das entsprechende Instanzprofil aus und klickt auf den Radiobutten „Erweiterte Pflege“ um die Parameter zu ändern bzw. anzuzeigen.
Im darauf folgenden Bildschirm sucht man sich nun die Parameter rdisp/wp* heraus und kann diese entsprechend bearbeiten.
Folgendes ist noch zu beachten:
- Die Parameter bekommen erst Wirkung nach einem Neustart.
- Durch die Betriebsartenumschaltung (Transaktion RZ03/RZ04) werden ggf. nach einem Neustart der Anwendung die Workprozesse einige Minuten später geändert. Daher unbedingt auch diese Transaktionen anpassen und beachten!
- Alle Workprozesse im Instanzprofil addiert ergeben die Anzahl der maximal eingestellten Prozesse für die Betriebsartenumschaltung.
Nov 08
Oracle Datapump
Der alte Export/Import hat ausgedient. Oracle stellt seit einiger Zeit Datapump zur Verfügung. Um Datapump nutzen zu können muss zuvor ein Verzeichnis auf OS-Ebene (sollte klar sein) und ein Oracle Directory erstellt werden (ggf. Berechtigungen dafür erteilen):
-- Directory erstellen CREATE OR REPLACE DIRECTORY <DumpDirectory> AS '<OS-Verzeichnis>'; -- Berechtigungen erteilen GRANT EXECUTE, READ, WRITE ON DIRECTORY <OS-Verzeichnis> TO <USER> WITH GRANT OPTION; |
Anschließend kann man mit dem OS-Befehl expdp Schemas oder auch Tabellen (etc.) exportieren:
expdp <USER>/<PW> DUMPFILE=<dumpfile.dmp> DIRECTORY=<Oracle-Directory> LOGFILE=<logfile.log> TABLES=<Tabellen> |
Hier auch mal ein Beispiel für einen Export mit FlashBack:
expdp system/geheim dumpfile=Dump_01032014_0700.dmp logfile=Dump_01032014_0700.log directory=DATA_PUMP_DIR schemas=TEST flashback_time=\"to_timestamp\(\'01-03-2014 07:00:00\', \'DD-MM-YYYY HH24:MI:SS\'\)\" |
Leider werden ggf. genutzte Sequenzes dabei nicht exportiert. Dieses ist nur bei einem Schemaexport möglich bzw. über die Option Include (ebenfalls nur für Schemaexport).
Ein Import der Daten erfolgt mit dem Programm impdp. Zu beachte ist dabei, dass falls die Daten auf einer anderen Oracle-Instanz eingespielt werden sollen, auch dort ein Oracle-Directory vorhanden sein muss.
impdp <USER>/<PW> DUMPFILE=<dumpfile.dmp> DIRECTORY=<Oracle-Directory> TABLE_EXISTS_ACTION=REPLACE LOGFILE=<logfile.log> TABLES=<Tabellen> |
Wichtig ist hierbei der Parameter TABLE_EXISTS_ACTION. Wenn er auf REPLACE gesetzt wird, wird erst die Tabelle gelöscht und anschließend neu importiert.
Nov 03
Plattenplatzprobleme im Filesystem der PI
Im Verzeichnis /usr/sap/[SID]/DVEBMGS[INST.Nr.]/data werden Daten gesammelt, die zu Statistikzwecken aufbewahrt werden (z.B. CPU-Statistiken). Die Dateien die verwendet werden hießen astat*und stat*. Man kann diese Daten löschen, sollte aber darauf achten, dass nur die Dateien mit angehängter Nummer gelöscht werden. Die Dateien astat und stat werden aktuell beschrieben.
Neueste Kommentare