Benutzer-Werkzeuge

Webseiten-Werkzeuge


prod:oracle_sql_developer

Oracle SQL*Developer - Tipps und Tricks

Wie mit diesem Tool arbeiten - Die Performance Optimierung

An dem Oracle SQL*Developer scheiden sich die Geister …. aber einem geschenkten Gaul schaut man nicht ins Maul …

Es kann sich halt nicht jede Firma einen TOAD leisten und den Feature Set kann der Oracle SQL Developer im Prinzip durchaus überzeugen.

Wenn er nur nicht so langsam wäre und so einen unscharfen Editor hätte .. nativ Java sagen da die einen, das ist halt so unter Windows sagen die anderen, anderseits zeigt der „Visual Studio Code“ Editor das es auch ganz anders und vor allen viel schneller geht!

Was mich persönlich am meisten nervt ist der fehlende „/“ am Ende eines PL/SQL Packages, wenn es direkt aus der DB als Datei gespeichert wird.

Herunterladen über https://www.oracle.com/tools/downloads/sqldev-downloads.html


SQL*Developer unter Windows hängt sich auf

Siehe dazu ⇒ Sql Developer Freezes with Normal Use (Doc ID 2861844.1)

Parameter in der sqldeveloper.conf setzen:

AddVMOption -Dsun.awt.nopixfmt=true

SQL*Developer unter Windows beenden

Leider neigt der SQL*Developer unter Windows gelegentlich dazu, sich aufzuhängen.

Mit dem normalen Task Manager, besonders auf gehärteten Kunden Umgebungen, lässt sich dann der SQL*Developer nicht aus diesen Dead Lock Zustand beenden.

Über die Kommandozeile geht es dann aber besser:

#-- in das passende JDK wechseln
cd C:\oracle\product\23\sqldeveloper\jdk\jre\bin
#-- mit jps die Prozess ID des SQL*Developers holen
 
./jps
 
2821928 Jps
2814256 OracleIdeLauncher
 
#-- Stack anschauen
 
./jstack 2814256 
 
 
#-- Task beenden
 
taskkill /F /PID 2814256
SUCCESS: The process with PID 2814256 has been terminated.

Mit dem Stack Trace könnte dann sogar ein Ticket bei Oracle eröffnet werden, falls das Problem reproduzierbar häufig auftaucht.


PL/SQL - ‘Quick Outline' - Codemodellstruktur

Von den Funktionen kann der SQL*Developer immer wieder mal überzeugen .. wenn man es nur findet.

Da ich immer bei der Entwicklung der PL/SQL Objekte einer Anwendung darauf achte, nur mit den dann später auch in GIT eingecheckten Dateien zu arbeiten, wäre es ja praktisch eine Navigationshilfe zu haben, um direkt zu jeweilen Methode in der Datei springen zu können.

In meiner eigenen Umgebung installieren ich meist alles in Englisch, die Menüpunkte sind meist schwer in der deutschen Übersetzung zu finden.

In einer Kundenumgebung ist das aber oft nicht möglich.

So wird aus „Quick Outline“ ein „Codemodellstruktur“, zu finden im Context Menü (rechte Maustaste) des Editors.

Siehe auch ⇒ https://www.thatjeffsmith.com/archive/2012/11/quick-outline-navigating-your-plsql-packages-in-oracle-sql-developer/


Problem mit 20.4 param parseThreshold Parameter

Problem: „set hidden param parseThreshold“ Fehlermeldung bei längeren PL/SQL Packages:  Oracle SQLDeveloper 20.4 set hidden param parseThreshold

Einstellung der Session ändern mit:

set hidden param parseThreshold = 45000;

Nur wo einstellen?

Per Skript beim Aufruf, Skript anlegen wie H:\mySQLDeveloperSettings.sql mit obigen Setting.

Beim Start ausführen lassen mit folgender Einstellung:

 Oracle SQLDeveloper Startup Skript einbinden

siehe auch ⇒ https://www.salvis.com/blog/2020/10/10/navigation-in-large-pl-sql-code/


Performance optimieren

Immer die neueste Version verwenden! Update über https://www.oracle.com/database/sqldeveloper/technologies/download/

Java Start Verhalten optimieren

Dateil: $sqldeveloper_home\ide\bin\ide.conf

#OS RAM 8-16GB:
# The options for 32-bit Java VM's
Add32VMOption  -Xmx2048M
Add32VMOption  -Xmx2048M
 
# The options for 64-bit Java VM's
Add64VMOption  -Xms1024M
Add64VMOption  -Xmx2048M
 
 
# The options for 32-bit Java VM's
Add32VMOption  -Xms2048M
Add32VMOption  -Xmx4096M
 
# The options for 64-bit Java VM's
Add64VMOption  -Xms2048M
Add64VMOption  -Xmx4096M
 
##----------
 
 
# Increase MaxPermSize
AddVMOption -XX:MaxPermSize=1024M 
 
# Memory Monitor
AddVMOption -DMainWindow.MemoryMonitorOn=true 
 
# Optimize Strings and Text
AddVMOption -XX:+UseStringCache 
AddVMOption -XX:+OptimizeStringConcat 
AddVMOption -XX:+UseCompressedStrings  
 
# 64 Bit System and 16GB RAM or Less (Reduce Object Pointer Memory Size)
AddVMOption -XX:+UseCompressedOops 
 
# Aggressive Garbage Collection
AddVMOption -XX:+AggressiveOpts
 
# Multi Core Machines
AddVMOption -XX:+UseConcMarkSweepGC 
AddVMOption -DVFS_ENABLE=true 
AddVMOption -Dsun.java2d.ddoffscreen=false 
AddVMOption -XX:+UseParNewGC 
AddVMOption -XX:+CMSIncrementalMode 
AddVMOption -XX:+CMSIncrementalPacing 
AddVMOption -XX:CMSIncrementalDutyCycleMin=0 
AddVMOption -XX:CMSIncrementalDutyCycle=10

Siehe auch ⇒ https://www.blogofant.de/en/education/database/tune-sql-developer-make-sql-developer-faster/


Unnötiges ausschalten

Start sehr langsam

siehe ⇒ https://community.oracle.com/tech/developers/discussion/4479330/sql-developer-20-2-indexpreferencestask-very-slow

# IndexPreferencesTask very slow disable
AddVMOption -DIndexedPreferencesCommand=false
  • Welcome Seite

Mit Hacken ganz untern auf dieser Seite ausschalten!


Auf OCI Treiber umstellen - External Authentifizierung verwenden

Es kann auch direkt mit der OCI Thick Driver Lib gearbeitet werden.

Das ist auch Voraussetzung für die Verwendung von Kerberos bzw. OS Authentifizierung im SQL Developer!

Achtung! ⇒ mit der Version 22.2 muss auch ein 21c Oracle Client verwendet werden!

Ablauf:

    • Bei Bedarf gleich auch die Tools wie SQL*Plus und Loader mit hinzunehmen
  • Zips alle in ein Verzeichnis wie „H:\tools\instantclient_19_9“ auspacken
    • Bei Bedarf unter dem Ordner für die tnsnames.ora einen Ordner .\network\admin anlegen
    • tnsnames.ora / sqlnet.ora dort ablegen
    • TNS_ADMIN Umgebungsvariable auf diesen Ordner zeigen lassen
  • Betriebssystem Pfad Variable so anpassen, dass der Instantclient Pfad H:\tools\instantclient_19_9 an erster Stelle steht
  • SQLDeveloper starten
    • Zu Not über ein Skript; damit der Pfad auch immer richtig gesetzt wird
      set PATH=H:\tools\instantclient_19_9
      H:\tools\sqldeveloper\sqldeveloper.exe
  • Unter Einstellungen nach OCI suchen und dort den Speicherort des Instantclient hinterlegen und testen.
  •  Oracle SQL Developer OCI Client Settings

Zum Instant Client siehe auch auch ⇒ Oracle SQL*LDR - Auf dem Clientarbeitsplatz Windows 10 mit dem Instant Client 19 verwenden

Problem mit External / OS Authentifizierung im SQL Developer

Wichtig! Keine Usernamen und kein Passwort angeben!

Oracle SQL Developer Connect External / OS

Wird der Pfad zur OCI Lib nicht gefunden kommt es nur zur Trivialen Fehlermeldung „Status: Nicht erfolgreich -Test nicht erfolgreich: ORA-01017: invalid username/password; logon denied“ ohne weitere Hinweise..

Dann in Einstellungen ( siehe Screenshot) testen ob die OCI Lib geladen werden kann!


UTF8 als Default für das Speichern von neuen Dateien einstellen

UTF8 als Default für das Speichern von neuen Dateien einstellen - Einstellung ist unter Tools > Preferences > Files / Format:

 UTF8 als Default für das Speichern von neuen Dateien einstellen


Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
prod/oracle_sql_developer.txt · Zuletzt geändert: 2024/08/05 17:08 von gpipperr

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki