├── .gitmodules ├── .pre-commit-config.yaml ├── README ├── amon ├── 10.2 │ ├── amon64_ol5_10.2 │ └── amon64_sles10_10.2 ├── 11.2 │ ├── amon64_ol5_11.2 │ └── amon64_sles10_11.2 ├── 19c │ ├── amon_19c_ol7 │ ├── amon_19c_ol8 │ ├── amon_19c_ol9 │ └── amon_19c_ubuntu_22.04 └── docker │ ├── Dockerfile │ └── README.md ├── asm └── kfod_disks.sh ├── rlwrap ├── rlwrap_linux ├── rlwrap_linux_x64 └── rlwrap_sparc ├── snapper ├── download_snapper.sh ├── download_snapper.sql ├── help.txt └── info.txt └── sql ├── adr ├── _scriptinfo.txt └── diag_info.sql ├── amon.sh ├── apex ├── _scriptinfo.txt ├── obsolete_apex_schemas.sql └── workspaces.sql ├── asm ├── _scriptinfo.txt ├── asm_disk1.sql ├── asm_disk_fg1.sql ├── asm_disk_fg2.sql ├── asm_diskgroup.sql ├── asm_files.sql ├── asm_operation.sql ├── dgstat1.sql ├── maas.sql ├── maas2.sql └── used_space_dg_db.sql ├── audit ├── _scriptinfo.txt ├── audi.sql ├── critprivs.sql ├── deploy_automatic_audit_purging.sql └── exttrail.sql ├── autotask ├── _scriptinfo.txt ├── autotask_history.sql ├── autotask_task.sql └── disable_segment_space_advisor.sql ├── buffercache ├── _scriptinfo.txt ├── block_stat.sql ├── bt_cache_temp.sql ├── bufferchain │ ├── _scriptinfo.txt │ ├── info.txt │ ├── latchdetails.sql │ └── latchstat.sql └── obj_statistic.sql ├── database ├── _scriptinfo.txt ├── block_corruption.sql ├── control_sections.sql ├── dba_cpu_usage_stat.sql ├── dba_registry.sql ├── dbc_license.sql ├── feauture_usage_statistics.sql ├── feauture_usage_statistics_all.sql ├── flash_logfile.sql ├── flash_stat.sql ├── hist_database_instance.sql ├── hist_database_instance_all.sql ├── hm_finding_all.sql ├── hm_finding_open.sql ├── log_hist.sql ├── log_hist10.sql ├── log_hist_stat1.sql ├── log_hist_stat2.sql ├── log_info.sql ├── mem_usage_all.sql ├── network_acl.sql ├── pgastat.sql ├── pgastat2.sql ├── recyclebinusage.sql ├── redothread.sql ├── registry.sql ├── scn_scheme.sql ├── sysmetric_history.sql ├── timezone.sql ├── vd.sql ├── vd10.sql ├── vd12.sql ├── vi.sql └── vpdb.sql ├── datafile ├── _scriptinfo.txt ├── autoextend_off.sql ├── dbf_max_block.sql ├── dbf_max_block8i.sql ├── dbf_minsize.sql ├── dbfi.sql ├── dbfi12.sql ├── dbfi_header.sql ├── dbfi_nextext.sql ├── dbfi_temp.sql ├── modify_default_extend.sql ├── offline.sql ├── rename_files.sql └── set_maxsize_all_files.sql ├── datapump ├── _scriptinfo.txt └── dpjob.sql ├── dbms_job ├── _scriptinfo.txt ├── jobinfo.sql ├── jobrun.sql └── userexport.sql ├── dbvisit ├── _scriptinfo.txt └── standby_history.sql ├── directory_description.txt ├── ee ├── _README.1ST_ ├── cdc │ ├── _scriptinfo.txt │ ├── apply.sql │ └── change_tables.sql ├── dg │ ├── _scriptinfo.txt │ ├── archive_dest_status.sql │ ├── broker_config.sql │ ├── logstdb_events.sql │ ├── logstdb_events_trx.sql │ ├── logstdb_log.sql │ ├── logstdb_progress.sql │ ├── managed_reco_cancel.sql │ ├── managed_reco_start.sql │ ├── managed_status.sql │ └── observers.sql ├── diag │ ├── ash │ │ ├── _scriptinfo.txt │ │ ├── ash.sql │ │ ├── ash2.sql │ │ ├── ashrpt_dbid.sql │ │ ├── ashrpt_dbid_serv.sql │ │ └── xplan_ash.sql │ └── awr │ │ ├── _scriptinfo.txt │ │ ├── awr_extr_dbid.sql │ │ ├── awr_modify.sql │ │ ├── awr_snap_stats2_dbid.sql │ │ ├── awr_snap_stats_dbid.sql │ │ ├── awr_snaps_dbid.sql │ │ ├── awr_tbs_hist_dbid.sql.sql │ │ ├── awrrpt_dbid.sql │ │ ├── awrrpthtml_dbid.sql │ │ ├── awrsqlrpt_dbid.sql │ │ ├── create_snapshot.sql │ │ └── stats_rac.sql ├── index │ ├── _scriptinfo.txt │ ├── idx_frag_bitmap.sql │ ├── idx_frag_bitmap_rebuild.sql │ ├── idx_frag_rebuild.sql │ ├── idx_rebuild.sql │ └── idx_rebuild_unusable.sql └── tuning │ └── sqltune │ ├── _scriptinfo.txt │ ├── accept.sql │ ├── beispiele.txt │ ├── create_from_awr.sql │ ├── create_sqlid.sql │ ├── disable.sql │ ├── display.sql │ ├── drop.sql │ ├── journal.sql │ ├── list_prof.sql │ ├── sql_monitor_rep.sql │ └── status.sql ├── gc └── report │ ├── _scriptinfo.txt │ └── gc_tbs_info.sql ├── index ├── _scriptinfo.txt ├── idx_columns.sql ├── idx_frag.sql ├── idx_info.sql ├── idx_parallel.sql ├── idx_unusable.sql └── missing_fk_index.sql ├── lob ├── _scriptinfo.txt └── lob_info.sql ├── login.sql ├── mview ├── _scriptinfo.txt └── mview_info.sql ├── object ├── _scriptinfo.txt ├── changed_objects.sql ├── db_links.sql ├── dba_errors.sql ├── dbms_metadata.sql ├── dbms_metadata2.sql ├── dbms_metadata_scheduler.sql ├── dbms_metadata_user.sql ├── dict.sql ├── hint.sql ├── inv_objects.sql ├── inv_objects8i.sql ├── lock_infoid.sql ├── obj_count.sql ├── obj_dependencies.sql ├── obj_info.sql └── obj_infoid.sql ├── ocenv ├── opatch ├── _scriptinfo.txt └── sqlpatch.sql ├── parameter ├── _scriptinfo.txt ├── deprecated.sql ├── ksppi.sql ├── nondefault12.sql ├── nondefaultparam.sql ├── paraminfo.sql ├── reset_parameter.sql └── spparameter.sql ├── pdb ├── _scriptinfo.txt ├── check_plug_compatibility.sql ├── close.sql ├── current.sql ├── discard_state.sql ├── list_save_state.sql ├── open_ro.sql ├── open_rw.sql ├── pdb_incarnation.sql ├── pdbreflinkcopy │ └── pdbreflinkcopy.sql ├── registry.sql ├── restore_xml.sql ├── save_state.sql ├── script_true.sql ├── snaps.sql ├── switch.sql ├── switchroot.sql ├── sws.sql ├── trigger_manage_service_in_pdb.sql ├── trigger_open_all.sql └── vpdb.sql ├── px ├── _scriptinfo.txt ├── pqslave.sql ├── pxprocessstat.sql └── pxsession.sql ├── recovery ├── _scriptinfo.txt ├── fuzzy.sql ├── fuzzy_absolute.sql ├── log.sql ├── pitr_example.txt └── progress.sql ├── result ├── _scriptinfo.txt └── cache_stat.sql ├── rlwrap.sh ├── rman.sh ├── rman ├── _scriptinfo.txt ├── archive_volumen.sql ├── catalog │ ├── _scriptinfo.txt │ ├── catalog_backuppiece.sql │ ├── check_old_rman_dbs.sql │ ├── delete_db_from_rman.sql │ ├── delete_old_incarnation.sql │ └── status_all_dbs.sql ├── clear_ctl_deleted_objects.sql ├── dbf_backup.sql ├── incarnation.sql ├── output.sql ├── restorepoint.sql ├── set_newname.sql ├── status_all.sql ├── status_archive.sql ├── status_archive_stat.sql ├── status_backup.sql ├── status_duplicate.sql ├── status_rman_backup.sql ├── status_running.sql └── vbackup_async.sql ├── scheduler ├── _scriptinfo.txt ├── beispiele.sql ├── runbg.sql ├── runfg.sql ├── schedulerinfo.sql ├── schedulerinfo2.sql ├── schedulerinfo3.sql ├── schedulerlog.sql ├── schedulerprog.sql ├── schedulerrun.sql ├── schedulersubmit.sql ├── schedulersubmit_external.sql ├── schedulerwindow.sql ├── start_all.sql └── stop_all.sql ├── serveralert ├── _scriptinfo.txt ├── alert_history.sql ├── alert_thresholds.sql ├── alert_types.sql ├── alertall.sql ├── alerts.sql ├── set_tbs_off.sql ├── set_tbs_threshold.sql └── set_threshold_example.sql ├── session ├── _scriptinfo.txt ├── cancel_exec.sql ├── connect_info.sql ├── cs.sql ├── gkill_session.sql ├── grow_lock_wait.sql ├── gsi11.sql ├── hash2sqlid.sql ├── kill_session.sql ├── lock_internal.sql ├── lock_tree.sql ├── lock_tree_kill.sql ├── longops.sql ├── nlsf.sql ├── ospid.sql ├── osstat.sql ├── pid2sid.sql ├── resumable.sql ├── row_lock_wait.sql ├── sess_mem_usage.sql ├── sessioni.sql ├── si11.sql ├── sistat.sql ├── slo.sql ├── spid4killed.sql ├── sql10.sql ├── sql8i.sql ├── sql9.sql ├── sqlactive.sql ├── sqlactive2.sql ├── sqlactive3.sql ├── sqlbind.sql ├── sqlid2hash.sql ├── sqliddetails.sql ├── sw10all.sql ├── sw10block.sql ├── sw10trace.sql ├── sw2.sql ├── swall.sql ├── swpqwait.sql ├── swtop.sql ├── swtop12.sql ├── swtop20.sql ├── swuser.sql ├── transaction.sql ├── transaction10.sql ├── wait_hist.sql └── waiters.sql ├── sga ├── _scriptinfo.txt ├── gather_session_cached_cursors.sql ├── librarycache.sql ├── no_bind.sql ├── pin_stat.sql ├── pinned_objects.sql ├── reserved_info.sql ├── resize_ops.sql ├── resize_ops_errors.sql ├── rowcache.sql ├── sga_dyn_components.sql ├── sga_free.sql ├── sga_heap.sql ├── some_cursor_stats.sql └── subpool_cnt.sql ├── shared ├── _scriptinfo.txt ├── dispatcher.sql └── server.sql ├── sq.sh ├── sqzk.sh ├── stat ├── _scriptinfo.txt ├── aux_stat.sql ├── export_schema_stats.sql ├── fixed_object_stat.sql ├── gather_schema_stale9i.sql ├── get_param.sql ├── get_prefs.sql ├── import_schema_stats.sql ├── import_schema_stats_part.sql ├── import_table_stats.sql ├── ind_stale.sql ├── lock_schema_stat.sql ├── modify_stats_jobs_example_10.sql ├── restore_tab_stat.sql ├── stat_flush.sql ├── stat_operation.sql ├── tab_histograms.sql ├── tab_histograms2.sql ├── tab_histograms_part.sql ├── tab_history.sql ├── tab_history2.sql ├── tab_pending.sql └── tab_stale.sql ├── statspack ├── _scriptinfo.txt ├── load_profile.sql ├── perfstat_sqlplan.sql ├── spcreate │ ├── _scriptinfo.txt │ ├── job_purge.sql │ ├── moats_install.sql │ ├── statspack_configuration.sql │ ├── statspack_create.sql │ ├── statspack_create_pdb.sql │ └── statspack_job.sql ├── spinstance.sql ├── spreport_dbid.sql ├── sprepsql_dbid.sql └── spsnap_dbid.sql ├── table ├── _scriptinfo.txt ├── col_info.sql ├── long_non_sys_owner.sql ├── tab_frag.sql ├── tab_idx.sql ├── tab_info.sql ├── tab_info8i.sql ├── tab_modification.sql ├── tab_parallel.sql ├── tab_shrink.sql └── tab_stat.sql ├── tbs ├── _scriptinfo.txt ├── seg_big.sql ├── seg_info.sql ├── tbs.sql ├── tbs12.sql ├── tbs8i.sql ├── tbsinfo.sql ├── tbsinfo12.sql └── usage_assm.sql ├── temptbs ├── _scriptinfo.txt ├── readdtempfile.sql └── tempseg_usage.sql ├── trace ├── _scriptinfo.txt ├── logon_trigger.sql ├── optimizer │ ├── _scriptinfo.txt │ ├── parsetrace_disable.sql │ └── parsetrace_enable.sql ├── orad_tfn.sql ├── orad_trace_off.sql ├── orad_trace_on.sql ├── setev.sql ├── stop_sqltrace.sql └── stopall_sqltrace.sql ├── undo ├── _scriptinfo.txt ├── rollbacksegs.sql ├── undostat.sql ├── undostat10.sql ├── undostat10all.sql └── undostatall.sql ├── user ├── _scriptinfo.txt ├── csv_privs4user_non_sys.sql ├── dba_tab_priv.sql ├── network_acl_privileges.sql ├── network_acls.sql ├── privs4user.sql ├── privs4user_spool.sql ├── profile.sql ├── savepwd.sql ├── spool_create_role_non_sys.sql ├── spool_create_user_non_sys.sql ├── spool_privs4user_non_sys.sql ├── spool_public_synonym_non_sys.sql ├── userinfo.sql ├── userinfo12.sql ├── userinfo2.sql └── userusedspace.sql └── xplan ├── _scriptinfo.txt ├── cs.sql ├── dplan.sql ├── dplan9i.sql ├── dplanadv.sql ├── dplanallstatslast.sql ├── dplanawr.sql ├── dplansid.sql ├── dplansqlid.sql ├── dplansqlidbind.sql └── dplansys.sql /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "getMOSPatch"] 2 | path = getMOSPatch 3 | url = https://github.com/MarisElsins/getMOSPatch.git 4 | -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | # See https://pre-commit.com for more information 3 | # See https://pre-commit.com/hooks.html for more hooks 4 | repos: 5 | - repo: https://github.com/pre-commit/pre-commit-hooks 6 | rev: v4.5.0 7 | hooks: 8 | - id: trailing-whitespace 9 | exclude: ^roles/.*/README.md 10 | - id: end-of-file-fixer 11 | - id: check-symlinks 12 | - id: check-added-large-files 13 | - id: check-merge-conflict 14 | - id: detect-private-key 15 | - id: forbid-new-submodules 16 | - id: check-executables-have-shebangs 17 | # - id: no-commit-to-branch 18 | 19 | - repo: https://github.com/syntaqx/git-hooks 20 | rev: v0.0.18 21 | hooks: 22 | - id: shellcheck 23 | # - id: shfmt 24 | -------------------------------------------------------------------------------- /amon/10.2/amon64_ol5_10.2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/10.2/amon64_ol5_10.2 -------------------------------------------------------------------------------- /amon/10.2/amon64_sles10_10.2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/10.2/amon64_sles10_10.2 -------------------------------------------------------------------------------- /amon/11.2/amon64_ol5_11.2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/11.2/amon64_ol5_11.2 -------------------------------------------------------------------------------- /amon/11.2/amon64_sles10_11.2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/11.2/amon64_sles10_11.2 -------------------------------------------------------------------------------- /amon/19c/amon_19c_ol7: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/19c/amon_19c_ol7 -------------------------------------------------------------------------------- /amon/19c/amon_19c_ol8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/19c/amon_19c_ol8 -------------------------------------------------------------------------------- /amon/19c/amon_19c_ol9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/19c/amon_19c_ol9 -------------------------------------------------------------------------------- /amon/19c/amon_19c_ubuntu_22.04: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/amon/19c/amon_19c_ubuntu_22.04 -------------------------------------------------------------------------------- /amon/docker/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM oraclelinux:7-slim 2 | 3 | ARG release=19 4 | ARG update=25 5 | 6 | ENV ORACLE_HOME=/usr/lib/oracle/${release}.${update}/client64 7 | ENV LD_LIBRARY_PATH=/usr/lib/oracle/${release}.${update}/client64/lib 8 | 9 | RUN yum -y install oracle-release-el7 && \ 10 | yum -y install \ 11 | oracle-instantclient${release}.${update}-basic \ 12 | oracle-instantclient${release}.${update}-devel \ 13 | oracle-instantclient${release}.${update}-sqlplus \ 14 | wget \ 15 | gzip && \ 16 | rm -rf /var/cache/yum 17 | 18 | RUN cd /tmp/ \ 19 | && wget -q https://github.com/asimondev/amon/raw/refs/heads/master/bin/v2/amon_19c_ol7.gz \ 20 | && gunzip amon_19c_ol7.gz \ 21 | && chmod 755 amon_19c_ol7 \ 22 | && mv amon_19c_ol7 /usr/local/bin/amon 23 | 24 | CMD ["amon"] 25 | -------------------------------------------------------------------------------- /amon/docker/README.md: -------------------------------------------------------------------------------- 1 | # Dockerfile for amon 2 | 3 | ## Building 4 | 5 | ``` 6 | docker build --tag=amon . 7 | ``` 8 | 9 | ## Example 10 | 11 | ``` 12 | docker run --rm -it amon amon -u system -d 192.168.66.162/pdb1 13 | ``` 14 | -------------------------------------------------------------------------------- /asm/kfod_disks.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Display Data for ASM-disk with Diskstring as 1st parameter 4 | # 5 | if [ $# -ne 1 ] 6 | then 7 | $(basename $0)" " 8 | else 9 | kfod disks=all asm_diskstring="$1" asmcompatibility status verbose 10 | fi 11 | -------------------------------------------------------------------------------- /rlwrap/rlwrap_linux: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/rlwrap/rlwrap_linux -------------------------------------------------------------------------------- /rlwrap/rlwrap_linux_x64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/rlwrap/rlwrap_linux_x64 -------------------------------------------------------------------------------- /rlwrap/rlwrap_sparc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Rendanic/SQL-Zauberkasten/785c6fc25b9064c299264e4b76adceed9373ed93/rlwrap/rlwrap_sparc -------------------------------------------------------------------------------- /snapper/download_snapper.sh: -------------------------------------------------------------------------------- 1 | wget -O snapper.sql http://blog.tanelpoder.com/files/scripts/snapper.sql 2 | -------------------------------------------------------------------------------- /snapper/download_snapper.sql: -------------------------------------------------------------------------------- 1 | SET LINES 10000 TRIMSPOOL ON TRIMOUT ON PAGESIZE 0 LONG 99999999 LONGCHUNKSIZE 99999999 FEEDBACK OFF HEAD OFF 2 | SPOOL snapper.sql 3 | select httpuritype('http://blog.tanelpoder.com/files/scripts/snapper.sql').getCLOB() from dual; 4 | exit 5 | 6 | -------------------------------------------------------------------------------- /sql/adr/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | diag_info.sql Displays info from gv$diag_info 2 | -------------------------------------------------------------------------------- /sql/adr/diag_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: diag_info.sql 130 2010-06-25 08:16:43Z tbr $ 4 | -- 5 | -- Displays info from gv$diag_info 6 | 7 | -- 8 | column inst_id format 99 9 | column name format a30 10 | column value format a70 11 | 12 | set lines 120 pages 100 13 | 14 | select inst_id iid 15 | ,name 16 | ,value 17 | from gv$diag_info 18 | order by 1,2 19 | ; 20 | 21 | -------------------------------------------------------------------------------- /sql/apex/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | workspaces.sql Display Informations for all APEX-Workspaces 2 | obsolete_apex_schemas.sql Display obsolete APEX_-Schemas in Database 3 | -------------------------------------------------------------------------------- /sql/apex/obsolete_apex_schemas.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.com) 3 | -- 4 | -- Display obsolete APEX_-Schemas in Database 5 | -- 6 | -- Date: 13.09.2024 7 | -- Version 1 8 | 9 | set lines 80 10 | set pages 10 11 | column username format a20 wrap 12 | 13 | SELECT username 14 | FROM dba_users 15 | WHERE ( 16 | username LIKE 'FLOWS\___0_00' ESCAPE '\' 17 | OR username LIKE 'APEX\___0_00' ESCAPE '\' 18 | ) 19 | AND username NOT IN (SELECT schema 20 | FROM dba_registry 21 | WHERE comp_id = 'APEX') 22 | ; 23 | -------------------------------------------------------------------------------- /sql/apex/workspaces.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: workspaces.sql 890 2013-09-02 10:12:13Z tbr $ 4 | -- 5 | -- Display Informations for all APEX-Workspaces 6 | 7 | set lines 140 8 | set pages 100 9 | column workspace_id format 9999999999999999999 10 | column workspace format a20 wrap 11 | column users format 999 12 | column devel format 99 13 | column apps format 99 14 | column schem format 99 15 | column files format 99999 16 | 17 | select workspace_id 18 | , workspace 19 | , to_char(CREATED_ON, 'dd.mm.yy hh24:mi') created_on 20 | , to_char(LAST_LOGGED_PAGE_VIEW, 'dd.mm.yy hh24:mi') last_page_view 21 | , SCHEMAS schem 22 | , FILES 23 | , APPLICATIONS apps 24 | , APEX_USERS users 25 | , APEX_DEVELOPERS devel 26 | from apex_workspaces 27 | order by workspace 28 | ; 29 | 30 | 31 | -------------------------------------------------------------------------------- /sql/asm/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | asm_diskgroup.sql list v$asm_diskgroup with some details 2 | asm_disk1.sql list information for all asm-disks 3 | asm_disk_fg1.sql information for all asm-disks with Failgroups 4 | asm_disk_fg2.sql information for all asm-disks with Failgroups 5 | asm_files.sql list alls files on asm-Instance for given name 6 | asm_operation.sql Display current running ASM Operations 7 | dgstat1.sql Get statistical data for a given Diskgroup 8 | used_space_dg_db.sql List usage in Diskgroup for given Database. '%' can be used 9 | maas.sql Detailinformation for all Diskgroups 10 | maas2.sql Detailinformation for all Diskgroups without template information 11 | -------------------------------------------------------------------------------- /sql/asm/asm_disk1.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- list information for all asm-disks 5 | -- 6 | -- Version: 1 7 | -- Date: 09.11.2022 8 | 9 | set lines 120 pages 100 10 | 11 | column name format a20 12 | column header_status format a15 13 | column path format a50 14 | column label format a20 15 | column gn format 999 16 | column dn format 999 17 | 18 | SELECT group_number gn 19 | , disk_number dn 20 | , name 21 | , label 22 | , header_status 23 | , path 24 | FROM V$ASM_DISK 25 | order by 1,2 26 | ; 27 | -------------------------------------------------------------------------------- /sql/asm/asm_disk_fg1.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Date 12.12.2014 4 | -- 5 | -- information for all asm-disks with Failgroups 6 | -- 7 | 8 | set lines 120 pages 100 9 | 10 | column name format a20 11 | column header_status format a15 12 | column path format a30 13 | column label format a20 14 | column failgroup format a20 15 | column gn format 999 16 | column dn format 999 17 | 18 | SELECT group_number gn 19 | , disk_number dn 20 | , failgroup 21 | , name 22 | , header_status 23 | , path 24 | FROM V$ASM_DISK 25 | order by 1,3,2 26 | ; 27 | -------------------------------------------------------------------------------- /sql/asm/asm_disk_fg2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: asm_disk1.sql 167 2010-08-13 04:21:32Z tbr $ 4 | -- 5 | -- list information for all asm-disks 6 | -- 7 | 8 | set lines 120 pages 100 9 | 10 | column path format a40 11 | column header_status format a11 12 | column format mount_status a11 13 | column format mode_status a11 14 | 15 | column path format a50 16 | column label format a20 17 | column gn format 999 18 | column dn format 999 19 | 20 | SELECT group_number gn 21 | , disk_number dn 22 | , FAILGROUP 23 | , header_status 24 | , mount_status 25 | , mode_status 26 | , path 27 | FROM V$ASM_DISK 28 | order by 1,failgroup,path 29 | ; 30 | -------------------------------------------------------------------------------- /sql/asm/asm_diskgroup.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: asm_diskgroup.sql 145 2010-07-20 20:04:56Z tbr $ 4 | -- 5 | -- list v$asm_diskgroup with some details 6 | -- 7 | 8 | set lines 120 pages 100 9 | column NAME format a30 10 | column STATE format a12 11 | column TOTAL_MB format 9.999.999 12 | column FREE_MB format 9.999.999 13 | column COMPATIBLE format a10 14 | column DB_COMPAT format a10 15 | 16 | select NAME 17 | ,STATE 18 | ,TOTAL_MB 19 | ,FREE_MB 20 | ,COMPATIBILITY COMPATIBLE 21 | ,DATABASE_COMPATIBILITY DB_COMPAT 22 | from v$asm_diskgroup 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/asm/asm_files.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: asm_files.sql 164 2010-08-02 19:32:40Z tbr $ 4 | -- 5 | -- list files from ASM 6 | -- 7 | set lines 120 pages 100 8 | column gnum format 999.999.999 9 | column filnum format 999.999.999 10 | column fname format a95 11 | 12 | SELECT gnum 13 | , filnum 14 | , concat('+'||gname,sys_connect_by_path(aname, '/')) fname 15 | FROM (SELECT g.name gname 16 | , a.parent_index pindex 17 | , a.name aname 18 | , a.reference_index rindex 19 | , a.group_number gnum 20 | ,a.file_number filnum 21 | FROM v$asm_alias a 22 | ,v$asm_diskgroup g 23 | WHERE a.group_number = g.group_number 24 | ) 25 | START WITH (mod(pindex, power(2, 24))) = 0 26 | CONNECT BY PRIOR rindex = pindex; -------------------------------------------------------------------------------- /sql/asm/asm_operation.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date: 01.02.2016 6 | -- 7 | -- Display current running ASM Operations 8 | 9 | column name format a20 10 | column OPER format a5 11 | column POWER format 9999 12 | column ACTUAL format 9999 13 | column SOFAR format 9999999 14 | column EST_RATE format 99999 15 | column EST_MIN format 9999 16 | column POWER format 9999 17 | 18 | select dg.name 19 | ,do.OPERATION OPER 20 | ,do.staTE 21 | ,do.POWER 22 | ,do.ACTUAL 23 | ,do.SOFAR 24 | ,do.EST_RATE 25 | ,do.EST_MINUTES EST_MIN 26 | from v$asm_operation do 27 | join v$asm_diskgroup dg on dg.GROUP_NUMBER = do.GROUP_NUMBER 28 | order by 2,1 29 | ; 30 | 31 | -------------------------------------------------------------------------------- /sql/audit/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | audi.sql Audit settings information 2 | critprivs.sql Display critical priviledges for Users 3 | exttrail.sql Display last 250 entries from DBA_COMMON_AUDIT_TRAILDBA_COMMON_AUDIT_TRAIL 4 | deploy_automatic_audit_purging.sql Deploy audit purge for 7 days 5 | -------------------------------------------------------------------------------- /sql/autotask/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | autotask_history.sql Display Autotask History 2 | autotask_task.sql Display Autotasks 3 | disable_segment_space_advisor.sql Disable Segment Space Advisor 4 | 5 | 6 | -------------------------------------------------------------------------------- /sql/autotask/autotask_history.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 0.1 5 | -- Date: 19.12.2014 6 | -- 7 | -- Display Autotask History 8 | -- 9 | set lines 140 10 | column JOB_NAME format a30 11 | column JOB_STATUS format A15 12 | column JOB_START format a17 13 | column JOB_DURATION format a20 14 | --column NEXT_TRY_DATE format a17 15 | 16 | select 17 | JOB_NAME 18 | ,JOB_STATUS 19 | ,to_char(JOB_START_TIME, 'dd.mm.yy hh24:mi:ss') JOB_START 20 | ,JOB_DURATION 21 | from 22 | ( 23 | select * 24 | from DBA_AUTOTASK_JOB_HISTORY 25 | order by JOB_START_TIME desc 26 | ) 27 | where rownum < 30 28 | order by JOB_START_TIME 29 | ; 30 | -------------------------------------------------------------------------------- /sql/autotask/autotask_task.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 0.1 5 | -- Date: 19.12.2014 6 | -- 7 | -- Display Autotasks 8 | 9 | column TASK_NAME format a20 10 | column LAST_GOOD_DATE a17 11 | column NEXT_TRY_DATE a17 12 | 13 | select OPERATION_NAME 14 | ,STATUS 15 | ,to_char(LAST_GOOD_DATE, 'dd.mm.yy hh24:mi:ss') last_good_date 16 | ,to_char(NEXT_TRY_DATE, 'dd.mm.yy hh24:mi:ss') NEXT_TRY_DATE 17 | from DBA_AUTOTASK_TASK 18 | order by 1 19 | ; 20 | -------------------------------------------------------------------------------- /sql/autotask/disable_segment_space_advisor.sql: -------------------------------------------------------------------------------- 1 | --- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 0.1 5 | -- Date: 19.12.2014 6 | -- 7 | -- Disable the Segment Space Advisor in Oracle 11.1 and 11.2 8 | -- DBMS_AUTO_TASK_ADMIN.DISABLE still shows the client_name enabled in DBA_AUTOTASK_CLIENT view (Doc ID 1565768.1) 9 | 10 | select * 11 | from DBA_AUTOTASK_WINDOW_CLIENTS; 12 | 13 | begin 14 | DBMS_AUTO_TASK_ADMIN.DISABLE('AUTO SPACE ADVISOR', NULL, NULL); 15 | end; 16 | / 17 | 18 | select * 19 | from DBA_AUTOTASK_WINDOW_CLIENTS; 20 | -------------------------------------------------------------------------------- /sql/buffercache/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | bt_scan_temp.sql Information from v$bt_scan_obj_temp 2 | block_stat.sql statistic information for dirty/clean buffers 3 | obj_statistic.sql objects-usage in buffer-cache 4 | 5 | -------------------------------------------------------------------------------- /sql/buffercache/block_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: block_stat.sql 43 2010-03-10 20:09:55Z tbr $ 4 | -- 5 | -- Displays statistics information from the buffer cache 6 | -- state of blocks are counted (dirty/clean etc.) 7 | -- 8 | column status format a10 9 | column dirty format a1 10 | column cnt format 99999 11 | 12 | select 13 | status , 14 | dirty , 15 | count(1) cnt 16 | from 17 | v$bh 18 | group by grouping sets ((status),(status,dirty),(dirty)) 19 | ; 20 | 21 | -------------------------------------------------------------------------------- /sql/buffercache/bt_cache_temp.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 19.10.2018 6 | -- 7 | -- Information from v$bt_scan_obj_temp 8 | -- 9 | 10 | 11 | set lines 125 pages 200 12 | column owner format a25 13 | column object_name format a25 14 | column POLICY format a15 15 | column blocks format 999999999 16 | column CACHED_IN_MEM format 999999999999 17 | 18 | select ao.owner 19 | ,nvl(ao.object_name, 'wrong pdb!') object_name 20 | ,a.SIZE_IN_BLKS blocks 21 | ,a.POLICY 22 | ,a.CACHED_IN_MEM 23 | from V$BT_SCAN_OBJ_TEMPS a 24 | left outer join all_objects ao on ao.DATA_OBJECT_ID = a.DATAOBJ# 25 | order by 1,2; 26 | -------------------------------------------------------------------------------- /sql/buffercache/bufferchain/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | info.txt Infos regarding some buffer-cache statistics 2 | latchdetails.sql Buffercache latch details for a given latch 3 | latchstat.sql Buffercache statistic summary 4 | -------------------------------------------------------------------------------- /sql/buffercache/bufferchain/latchstat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: glatch.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set pages 100 6 | select * 7 | from (select CHILD# "cCHILD" 8 | , ADDR "sADDR" 9 | , GETS "sGETS" 10 | , MISSES "sMISSES" 11 | , SLEEPS "sSLEEPS" 12 | from v$latch_children 13 | where name = 'cache buffers chains' 14 | order by 5 desc, 1, 2, 3 15 | ) 16 | where rownum < 40 17 | order by 5 18 | ; 19 | 20 | -------------------------------------------------------------------------------- /sql/database/control_sections.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 03.12.2015 5 | -- 6 | -- Details about Controlfile sections 7 | -- 8 | -- 9 | 10 | 11 | 12 | column type format a40 13 | column RECORD_SIZE format 999999999 14 | column RECORDS_TOTALA format 999999999 15 | column RECORDS_USED format 999999999 16 | 17 | SET LINESIZE 125 18 | 19 | SELECT type 20 | ,sum(RECORD_SIZE) 21 | ,sum(RECORDS_TOTAL) 22 | ,sum(RECORDS_USED) 23 | FROM V$CONTROLFILE_RECORD_SECTION 24 | group by grouping sets ((type), ()) 25 | order by 1; 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /sql/database/dba_cpu_usage_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dba_cpu_usage_stat.sql 465 2012-09-06 11:19:11Z tbr $ 4 | -- 5 | -- Displays information from DBA_CPU_USAGE_STATISTICS 6 | -- 7 | set lines 80 8 | set pages 100 9 | 10 | column dbid format 9999999999 11 | column zeitpunkt format a20 12 | column VERSION format a17 13 | column CPU_COUNT format 999 14 | column Cores format 99 15 | column Sockets format 99 16 | 17 | select dbid 18 | ,to_char(TIMESTAMP, 'dd.mm.yy HH24:mi:ss') zeitpunkt 19 | -- ,VERSION 20 | ,CPU_COUNT 21 | ,CPU_CORE_COUNT Cores 22 | ,CPU_SOCKET_COUNT Sockets 23 | from DBA_CPU_USAGE_STATISTICS 24 | order by TIMESTAMP; 25 | 26 | -------------------------------------------------------------------------------- /sql/database/dba_registry.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dba_registry.sql 60 2010-03-13 11:20:37Z tbr $ 4 | -- 5 | -- Displays information from dba_registry 6 | -- 7 | set lines 120 8 | set pages 100 9 | column comp_name format a43 10 | column version format a14 11 | column modified format a20 12 | column status format a7 13 | 14 | select comp_name 15 | ,version 16 | ,status 17 | ,modified 18 | from DBA_REGISTRY 19 | order by comp_name 20 | ; 21 | -------------------------------------------------------------------------------- /sql/database/dbc_license.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbc_license.sql 380 2012-01-23 12:18:12Z tbr $ 4 | -- 5 | -- Displays active licenses in Database Console 6 | -- This script requires an existing SYSMAN-Schema 7 | -- 8 | set lines 150 heading on pages 100 9 | column TARGET_NAME format a30 10 | column TARGET_TYPE format a30 11 | column PACK_NAME format a40 12 | 13 | select TARGET_NAME 14 | ,TARGET_TYPE 15 | ,PACK_NAME 16 | from sysman.MGMT_LICENSE_VIEW 17 | order by 1,2,3; 18 | 19 | -------------------------------------------------------------------------------- /sql/database/feauture_usage_statistics.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: feauture_usage_statistics.sql 60 2010-03-13 11:20:37Z tbr $ 4 | -- 5 | -- statistics information from DBA_FEATURE_USAGE_STATISTICS 6 | -- only currently used feautures are listed 7 | -- 8 | 9 | set lines 140 pages 100 10 | 11 | column name format a50 12 | column version format 9999999999 13 | column used format a5 14 | column last_usage format a14 15 | column first format a8 16 | 17 | 18 | select df.name 19 | ,df.version 20 | ,to_char(df.LAST_USAGE_DATE,'dd.mm.yy hh24:MI') last_usage 21 | ,to_char(df.FIRST_USAGE_DATE,'dd.mm.yy') first 22 | from DBA_FEATURE_USAGE_STATISTICS df 23 | join v$database vd on vd.dbid = df.dbid 24 | where df.currently_used = 'TRUE' 25 | and df.name not like '% (system)%' 26 | order by df.name 27 | ; 28 | 29 | -------------------------------------------------------------------------------- /sql/database/feauture_usage_statistics_all.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 02.10.2015 5 | -- Version: 1 6 | -- statistics information from DBA_FEATURE_USAGE_STATISTICS 7 | -- all currently used feautures are listed 8 | -- 9 | 10 | set lines 140 pages 100 11 | 12 | column name format a50 13 | column version format 9999999999 14 | column used format a5 15 | column last_usage format a14 16 | column first format a8 17 | 18 | 19 | select df.name 20 | ,df.version 21 | ,to_char(df.LAST_USAGE_DATE,'dd.mm.yy hh24:MI') last_usage 22 | ,to_char(df.FIRST_USAGE_DATE,'dd.mm.yy') first 23 | from DBA_FEATURE_USAGE_STATISTICS df 24 | join v$database vd on vd.dbid = df.dbid 25 | order by df.name 26 | ; 27 | 28 | -------------------------------------------------------------------------------- /sql/database/flash_logfile.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: flash_logfile.sql 60 2010-03-13 11:20:37Z tbr $ 4 | -- 5 | -- Information from gV$FLASHBACK_DATABASE_LOGFILE 6 | 7 | set lines 140 pages 100 trimspool on 8 | 9 | column dd_hhmiss format a9 10 | column sequence# format 999999 11 | column thread# format 99 12 | column name format a80 13 | column log# format 9999999 14 | column MB format 9999 15 | 16 | select log# 17 | ,to_char(first_time,'dd hh24:mi:ss') dd_hhmiss 18 | -- ,name 19 | ,sequence# 20 | ,trunc(bytes/1024/1024) MB 21 | ,first_change# 22 | ,thread# 23 | ,first_change# 24 | from gV$FLASHBACK_DATABASE_LOGFILE 25 | order by first_time ; 26 | -------------------------------------------------------------------------------- /sql/database/hist_database_instance.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: hist_database_instance.sql 22 2010-03-10 04:34:49Z tbr $ 4 | -- 5 | -- Diesplay historical information from dba_hist_database_instance 6 | -- 7 | 8 | 9 | set lines 120 pages 100 10 | 11 | column dbid format 9999999999 12 | column DB_NAME format a9 13 | column INAME format a9 14 | column HOST_NAME format a25 15 | column VERSION format a12 16 | column "Id" format 99 17 | column start_time format a17 18 | 19 | select DB_NAME 20 | ,INSTANCE_NAME iname 21 | ,HOST_NAME 22 | ,to_char(STARTUP_TIME, 'dd.mm.yy HH24:mi:ss') start_time 23 | ,VERSION 24 | ,DBID 25 | ,INSTANCE_NUMBER "Id" 26 | from ( 27 | select * 28 | from DBA_HIST_DATABASE_INSTANCE 29 | order by STARTUP_TIME desc 30 | ) 31 | where rownum < 11 32 | order by STARTUP_TIME; 33 | 34 | -------------------------------------------------------------------------------- /sql/database/hist_database_instance_all.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: hist_database_instance_all.sql 22 2010-03-10 04:34:49Z tbr $ 4 | -- 5 | -- Diesplay historical information from dba_hist_database_instance 6 | -- 7 | 8 | 9 | set lines 120 pages 100 10 | 11 | column dbid format 9999999999 12 | column DB_NAME format a9 13 | column INAME format a9 14 | column HOST_NAME format a25 15 | column VERSION format a12 16 | column "Id" format 99 17 | column start_time format a17 18 | 19 | select DB_NAME 20 | ,INSTANCE_NAME iname 21 | ,HOST_NAME 22 | ,to_char(STARTUP_TIME, 'dd.mm.yy HH24:mi:ss') start_time 23 | ,VERSION 24 | ,DBID 25 | ,INSTANCE_NUMBER "Id" 26 | from ( 27 | select * 28 | from DBA_HIST_DATABASE_INSTANCE 29 | order by STARTUP_TIME desc 30 | ) 31 | order by STARTUP_TIME; 32 | 33 | -------------------------------------------------------------------------------- /sql/database/hm_finding_all.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Info for open findings from Health-Monitor 5 | -- 6 | -- Date : 08.02.2016 7 | -- Version: 1 8 | 9 | set lines 120 pages 100 10 | column ins format 999 11 | column name format a20 12 | column CLASS_NAME format a20 13 | column zeit format a14 14 | column PRIORITY format a7 15 | column STATUS format a12 16 | column TYPE format a12 17 | column DESCRIPTION format a100 18 | 19 | 20 | select INST_ID ins 21 | ,NAME 22 | ,CLASS_NAME 23 | ,to_char(TIME_DETECTED, 'dd.mm.yy hh24:mi') zeit 24 | ,PRIORITY 25 | ,STATUS 26 | ,TYPE 27 | ,DESCRIPTION 28 | from (select * 29 | from gv$hm_finding 30 | order by TIME_DETECTED desc) 31 | where rownum < 26 32 | order by TIME_DETECTED, inst_id; 33 | 34 | -------------------------------------------------------------------------------- /sql/database/hm_finding_open.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Info for open findings from Health-Monitor 5 | -- 6 | -- Date : 08.02.2016: 08.02.2016 7 | -- Version: 1 8 | 9 | set lines 120 pages 100 10 | column ins format 999 11 | column name format a20 12 | column CLASS_NAME format a20 13 | column zeit format a14 14 | column PRIORITY format a7 15 | column TYPE format a12 16 | column DESCRIPTION format a100 17 | 18 | 19 | select INST_ID ins 20 | ,NAME 21 | ,CLASS_NAME 22 | ,to_char(TIME_DETECTED, 'dd.mm.yy hh24:mi') zeit 23 | ,PRIORITY 24 | ,TYPE 25 | ,DESCRIPTION 26 | from (select * 27 | from gv$hm_finding 28 | where status = 'OPEN' 29 | order by TIME_DETECTED desc) 30 | where rownum < 26 31 | order by TIME_DETECTED, inst_id; 32 | 33 | -------------------------------------------------------------------------------- /sql/database/log_hist.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: log_hist.sql 60 2010-03-13 11:20:37Z tbr $ 4 | -- 5 | -- information from gv$log_history 6 | -- 7 | select stamp 8 | ,sequence# 9 | ,first_time 10 | ,to_char(first_change#,'9999999999999') first_change 11 | ,thread# 12 | from (select 13 | stamp 14 | ,sequence# 15 | ,to_char(first_time, 'dd.mm.rr HH24:mi:ss') first_time 16 | ,first_change# 17 | ,thread# 18 | from gv$log_history 19 | order by first_change# desc 20 | ) 21 | where rownum < 100 22 | order by first_change# 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/database/log_hist10.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: log_hist10.sql 60 2010-03-13 11:20:37Z tbr $ 4 | -- 5 | -- Information from gv$log_history 6 | -- 7 | select stamp 8 | ,sequence# 9 | ,first_time 10 | ,resetlogs_change# 11 | ,to_char(first_change#,'9999999999999') first_change# 12 | ,thread# 13 | from (select 14 | stamp 15 | ,sequence# 16 | ,to_char(first_time, 'dd.mm.rr HH24:mi:ss') first_time 17 | ,resetlogs_change# 18 | ,first_change# 19 | ,thread# 20 | from gv$log_history 21 | order by RESETLOGS_CHANGE# desc, first_change# desc 22 | ) 23 | where rownum < 100 24 | order by first_change# 25 | ; 26 | 27 | -------------------------------------------------------------------------------- /sql/database/log_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Get overview from v$log and v$standby_log 5 | -- 6 | -- Date: 18.12.2014 7 | 8 | column sequence# 99999999 9 | 10 | select thread#, group#, bytes, sequence#, count(1), typ 11 | from (select l.thread#, l.group#, l.bytes, l.sequence# 12 | ,lf.member, 'prim' typ 13 | from v$log l 14 | join v$logfile lf on lf.group# = l.group# 15 | union all 16 | select l.thread#, l.group#, l.bytes, l.sequence# 17 | ,lf.member, 'stdby' typ 18 | from v$standby_log l 19 | join v$logfile lf on lf.group# = l.group#) 20 | group by thread#, group#, bytes, sequence#, typ 21 | order by typ, thread#,group#; 22 | -------------------------------------------------------------------------------- /sql/database/network_acl.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: network_acl.sql 380 2012-01-23 12:18:12Z tbr $ 4 | -- 5 | -- Displays NETWORK_ACLS from Data-Dictionary 6 | -- 7 | column PRINCIPAL format a30 8 | column PRIVILEGE format a10 9 | column IS_GRANT format a6 10 | column START_DATE format a10 11 | column END_DATE format a10 12 | column host format a20 13 | column lport format 99999 14 | column uport format 99999 15 | set lines 140 16 | 17 | select a.PRINCIPAL 18 | ,a.PRIVILEGE 19 | ,a.IS_GRANT 20 | ,to_char(a.START_DATE,'dd.mm.yy') START_DATE 21 | ,to_char(a.END_DATE,'dd.mm.yy') END_DATE 22 | ,INVERT 23 | ,b.host 24 | ,LOWER_PORT lport 25 | ,UPPER_PORT uport 26 | from dba_network_acl_privileges a 27 | join dba_network_acls b on a.ACLID = b.ACLID 28 | order by 1,2; 29 | -------------------------------------------------------------------------------- /sql/database/recyclebinusage.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: recyclebinusage.sql 248 2010-11-23 20:18:21Z tbr $ 4 | -- 5 | -- Information from recyclebin 6 | -- 7 | set lines 100 8 | set pages 200 9 | column tablespace_name format a30 10 | column used_kb format 9999999999 11 | 12 | select ts_name tablespace_name 13 | ,sum(space* block_size )/1024 used_kb 14 | from dba_recyclebin dr 15 | join dba_tablespaces dt on dt.tablespace_name = ts_name 16 | group by ts_name 17 | order by 1; 18 | 19 | -------------------------------------------------------------------------------- /sql/database/redothread.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 12.09.2015 5 | -- 6 | -- Details about the redo thread in all instances 7 | -- 8 | -- 9 | 10 | 11 | 12 | column instance format a8 13 | column tid format 99 14 | column status format a10 15 | column enabled format a10 16 | column groups format 99 17 | 18 | SET LINESIZE 125 19 | 20 | SELECT INSTANCE, 21 | THREAD# tid, 22 | STATUS, 23 | ENABLED, 24 | GROUPS, 25 | to_char(OPEN_TIME, 'dd.mm.yy hh24:mi:ss') OPEN_TIME, 26 | to_char(CHECKPOINT_TIME, 'dd.mm.yy hh24:mi:ss') CHECKPOINT_TIME, 27 | to_char(LAST_REDO_TIME, 'dd.mm.yy hh24:mi:ss') LAST_REDO_TIME 28 | FROM GV$THREAD 29 | order by 1,2,3; 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /sql/database/registry.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 30.07.2020 5 | -- 6 | -- Information for changes in dba_registry_history 7 | -- 8 | set pages 100 9 | set lines 120 10 | 11 | column zeit format a14 12 | column ACTION format a10 13 | column NAMESPACE format a10 14 | column VERSION format a22 15 | column comments format a50 16 | 17 | select to_char(ACTION_TIME, 'dd.mm.yy HH24:MI') zeit 18 | ,ACTION 19 | ,VERSION 20 | ,comments 21 | from DBA_REGISTRY_HISTORY 22 | order by action_time; 23 | -------------------------------------------------------------------------------- /sql/database/sysmetric_history.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sysmetric_history.sql 248 2010-11-23 20:18:21Z tbr $ 4 | -- 5 | -- Information from v$sysmetric_history for last 10 minutes 6 | -- 7 | set echo off 8 | column name format a8 9 | 10 | with data 11 | as (select a.metric_id,a.metric_name,a.metric_unit, avg(value) wert 12 | from v$sysmetric_history a 13 | where begin_time > sysdate-10/1440 14 | group by a.metric_id, a.metric_name, a.metric_unit 15 | order by metric_name 16 | ) 17 | select (select round(a1.wert/100,2) from data a1 where a1.metric_id = 2123 18 | )DB_s 19 | ,(select round(a1.wert/100,2) from data a1 where a1.metric_id = 2075 20 | ) CPU_s 21 | ,(select round(a1.wert/100,2) from data a1 where a1.metric_id = 2146 22 | )IO_cnt_s 23 | from dual 24 | ; 25 | -------------------------------------------------------------------------------- /sql/database/timezone.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 06.09.2023 5 | -- Version: 1 6 | -- 7 | -- Diesplay timezone data from database 8 | -- 9 | set lines 120 pages 10 10 | COLUMN property_name FORMAT A30 11 | COLUMN property_value FORMAT A20 12 | 13 | SELECT property_name, property_value 14 | FROM database_properties 15 | WHERE property_name LIKE 'DST_%' 16 | ORDER BY property_name; 17 | -------------------------------------------------------------------------------- /sql/database/vd.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: vd.sql 22 2010-03-10 04:34:49Z tbr $ 4 | -- 5 | set echo off 6 | column name format a8 7 | 8 | select dbid, name 9 | ,to_char(created, 'dd.mm.yy HH24:mi') created 10 | ,to_char(RESETLOGS_TIME, 'dd.mm.yy HH24:mi') RESETLOGS_TIME 11 | ,OPEN_MODE 12 | ,DATABASE_ROLE 13 | ,LOG_MODE 14 | from v$database; 15 | 16 | @@vi 17 | @@dba_registry 18 | -------------------------------------------------------------------------------- /sql/database/vi.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: vi.sql 37 2010-03-10 07:49:59Z tbr $ 4 | -- 5 | -- Displays some Instance-Information from v$instance 6 | -- 7 | set lines 150 8 | column host_name format a28 9 | column "in" format 99 10 | column iname format a10 11 | column status format a8 12 | column STARTUP_TIME format a15 13 | 14 | select INSTANCE_NUMBER "in" 15 | , INSTANCE_NAME iname 16 | , HOST_NAME 17 | , VERSION 18 | , to_char(STARTUP_TIME, 'dd.mm.yy HH24:mi') STARTUP_TIME 19 | , STATUS 20 | , LOGINS 21 | from gv$instance; 22 | 23 | -------------------------------------------------------------------------------- /sql/database/vpdb.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 25.11.2013 6 | -- 7 | -- Display information from v$pdbs 8 | -- 9 | 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | 15 | column NAME format a40 16 | column DBID format 999999999999 17 | column status format a13 18 | 19 | select NAME 20 | ,DBID 21 | ,OPEN_MODE 22 | ,restricted 23 | ,RECOVERY_STATUS RECOVERY 24 | ,sum(total_size)/1024/1024 ts_MB 25 | from v$pdbs 26 | group by grouping sets((name, dbid, open_mode, restricted, RECOVERY_STATUS) 27 | ,() 28 | ) 29 | order by 1; 30 | -------------------------------------------------------------------------------- /sql/datafile/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | autoextend_off.sql SQL for disabling autoextend on data- and tempfiles 2 | dbfi.sql information for Datafiles 3 | dbfi_12.sql Datafile information with con_id 4 | dbfi_nextext.sql Displays information for next extend for each Datafile 5 | dbfi_header.sql Details from v$datafile_header 6 | dbfi_temp.sql information for Tempfiles 7 | dbf_max_block8i.sql highest block in Datafile (8i) 8 | dbf_max_block.sql highest block in Datafile 9 | dbf_minsize.sql generates SQL for min resize of all datafiles 10 | set_maxsize_all_files.sql enable autoextend on all datafiles with maxsize 11 | modify_default_extend.sql spool alter database datafile for default next extend 12 | offline.sql Displays Offline Datafiles 13 | rename_files.sql generates SQL for renaming data-, temp- and redologfiles 14 | -------------------------------------------------------------------------------- /sql/datafile/dbf_max_block.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbf_max_block.sql 66 2010-03-15 05:20:34Z tbr $ 4 | -- 5 | -- Displays highest block in Datafile. How small can a datafile be changed? 6 | -- 7 | set lines 120 8 | set pages 200 9 | column file_name format a50 10 | column tablespace_name format a25 11 | column mb format 999999 12 | column mb2 format 999999 13 | 14 | select dt.tablespace_name 15 | ,ddf.file_name 16 | ,max((de.block_id+de.blocks)*dt.block_size)/1024/1024 MB 17 | ,ddf.bytes/1024/1024 MB2 18 | from dba_data_files ddf 19 | join dba_extents de on ddf.tablespace_name = de.tablespace_name 20 | and ddf.file_id = de.file_id 21 | join dba_tablespaces dt on dt.tablespace_name = de.tablespace_name 22 | where de.tablespace_name like '%&1%' 23 | group by dt.tablespace_name, ddf.file_name,ddf.bytes/1024/1024 24 | order by dt.tablespace_name, ddf.file_name 25 | ; 26 | 27 | -------------------------------------------------------------------------------- /sql/datafile/dbf_max_block8i.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbf_max_block8i.sql 66 2010-03-15 05:20:34Z tbr $ 4 | -- 5 | -- Displays highest block in Datafile. How small can a datafile be changed? 6 | -- compatible for Oracle 8i 7 | -- 8 | set lines 120 9 | set pages 200 10 | column file_name format a50 11 | column tablespace_name format a25 12 | column mb format 999999 13 | column mb2 format 999999 14 | 15 | select de.tablespace_name 16 | ,ddf.file_name 17 | ,max((de.block_id+de.blocks)) maxblock 18 | ,ddf.blocks blocks 19 | from dba_data_files ddf 20 | , dba_extents de 21 | where de.tablespace_name like '%&1%' 22 | and ddf.file_id = de.file_id 23 | group by de.tablespace_name, ddf.file_name,ddf.blocks 24 | order by de.tablespace_name, ddf.file_name 25 | ; 26 | 27 | -------------------------------------------------------------------------------- /sql/datafile/dbf_minsize.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbf_minsize.sql 66 2010-03-15 05:20:34Z tbr $ 4 | -- 5 | -- generates SQL for min resize of all datafiles 6 | -- 7 | set lines 120 8 | set pages 200 9 | column file_name format a150 10 | 11 | select 'alter database datafile ''' 12 | ||file_name||''' resize ' 13 | ||to_char(trunc((max((de.block_id+de.blocks)*dt.block_size)/1024/1024)+5 )) 14 | ||'m;' 15 | from dba_data_files ddf 16 | left outer join dba_extents de on ddf.tablespace_name = de.tablespace_name 17 | and ddf.file_id = de.file_id 18 | join dba_tablespaces dt on dt.tablespace_name = de.tablespace_name 19 | where de.tablespace_name like '%&1%' 20 | group by dt.tablespace_name, ddf.file_name,ddf.bytes/1024/1024 21 | order by dt.tablespace_name, ddf.file_name 22 | ; 23 | 24 | -------------------------------------------------------------------------------- /sql/datafile/dbfi.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Displays information for Datafile (dbfi = DataBase File Information) 5 | -- 6 | -- Version: 2 7 | -- Date: 02.11.2018 8 | 9 | set pages 300 10 | set lines 150 11 | 12 | column file_name format a60 13 | column tablespace_name format a20 14 | column mb format 99999999 15 | column os format a6 16 | column id format 999 17 | column status format a11 18 | 19 | select ddf.TABLESPACE_NAME 20 | ,ddf.bytes/1024/1024 MB 21 | ,ddf.AUTOEXTENSIBLE auto 22 | ,ddf.status 23 | ,ddf.file_id id 24 | -- ,ddf.online_status os 25 | ,ddf.file_name 26 | from dba_data_files ddf 27 | order by tablespace_name, file_name; 28 | 29 | -------------------------------------------------------------------------------- /sql/datafile/dbfi12.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Datafile information with con_id 5 | -- 6 | -- Version: 2 7 | -- Date: 02.11.2018 8 | -- 9 | set pages 300 10 | set lines 150 11 | 12 | column file_name format a60 13 | column tablespace_name format a20 14 | column mb format 99999999 15 | column os format a6 16 | column id format 999 17 | column cdb format 999 18 | column status format a11 19 | 20 | select ddf.con_id cdb 21 | ,ddf.TABLESPACE_NAME 22 | ,ddf.bytes/1024/1024 MB 23 | ,ddf.AUTOEXTENSIBLE auto 24 | ,ddf.status 25 | ,ddf.file_id id 26 | ,ddf.file_name 27 | from cdb_data_files ddf 28 | order by ddf.con_id, tablespace_name, file_name; 29 | 30 | -------------------------------------------------------------------------------- /sql/datafile/dbfi_header.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 2 4 | -- Date: 02.11.2018 5 | -- 6 | -- Details from v$datafile_header 7 | -- 8 | select file#, 9 | status, 10 | resetlogs_change#, 11 | resetlogs_time, 12 | checkpoint_change#, 13 | to_char(checkpoint_time, 'DD-MON-YYYY HH24:MI:SS') as checkpoint_time 14 | from v$datafile_header 15 | order by status, checkpoint_change#, file#; -------------------------------------------------------------------------------- /sql/datafile/dbfi_nextext.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 2 5 | -- Date: 02.11.2018 6 | -- 7 | -- Displays information for next extend for each Datafile 8 | -- 9 | set pages 300 10 | set lines 150 11 | 12 | column file_name format a60 13 | column tablespace_name format a20 14 | column mb format 99999999 15 | column os format a6 16 | column id format 999 17 | column incrblk format 999999 18 | 19 | select ddf.TABLESPACE_NAME 20 | ,ddf.bytes/1024/1024 MB 21 | ,ddf.AUTOEXTENSIBLE auto 22 | ,ddf.INCREMENT_BY incrblk 23 | ,ddf.file_id id 24 | ,ddf.file_name 25 | from dba_data_files ddf 26 | order by tablespace_name, file_name; 27 | 28 | 29 | -------------------------------------------------------------------------------- /sql/datafile/dbfi_temp.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Displays information for Tempfile (dbfi_temp = DataBase File Information) 5 | -- 6 | -- Version: 2 7 | -- Date: 02.11.2018 8 | set pages 300 9 | set lines 150 10 | 11 | column file_name format a60 12 | column tablespace_name format a20 13 | column mb format 99999999 14 | column os format a6 15 | column id format 999 16 | column status format a11 17 | 18 | select ddf.TABLESPACE_NAME 19 | ,ddf.bytes/1024/1024 MB 20 | ,ddf.AUTOEXTENSIBLE auto 21 | ,ddf.status 22 | ,ddf.file_id id 23 | -- ,ddf.online_status os 24 | ,ddf.file_name 25 | from dba_temp_files ddf 26 | order by tablespace_name, file_name; 27 | 28 | -------------------------------------------------------------------------------- /sql/datafile/modify_default_extend.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Spool alter database datafile for default next extend 5 | -- 6 | -- Date: 29.09.2014 7 | 8 | set lines 2000 pages 1000 trimspool on 9 | 10 | 11 | select 'alter database datafile ' || FILE_ID || ' autoextend on next 1m;' 12 | from dba_data_files 13 | where AUTOEXTENSIBLE='YES' 14 | and INCREMENT_BY < 10; 15 | 16 | -------------------------------------------------------------------------------- /sql/datafile/offline.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Displays Offline Datafiles 5 | -- 6 | -- Date: 16.06.2016 7 | -- 8 | set pages 300 9 | set lines 150 10 | 11 | column file_name format a60 12 | 13 | select file# 14 | ,status 15 | ,enabled 16 | ,CHECKPOINT_TIME 17 | ,name file_name 18 | from v$datafile 19 | where STATUS = 'OFFLINE' 20 | order by file#; 21 | 22 | -------------------------------------------------------------------------------- /sql/datafile/rename_files.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: replace 1. Parameter 2 | -- Parameter 2: replace 2. Parameter 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: rename_files.sql 66 2010-03-15 05:20:34Z tbr $ 6 | -- 7 | -- generates SQL for renaming data-, temp- and redologfiles 8 | -- 9 | set lines 2000 10 | set pages 0 11 | set heading off 12 | set verify off 13 | 14 | select 'alter database rename file '''||member||''' to '''||replace(member,'&1','&2')||''';' from v$logfile; 15 | 16 | select 'alter database rename file '''||name||''' to '''||replace(name,'&1','&2')||''';' from v$datafile; 17 | 18 | select 'alter database rename file '''||name||''' to '''||replace(name,'&1','&2')||''';' from v$tempfile; 19 | 20 | 21 | -------------------------------------------------------------------------------- /sql/datafile/set_maxsize_all_files.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- enable autoextend on all datafiles with maxsize 5 | -- 6 | -- Date: 10.11.2015 7 | -- 8 | -- Parameter 1: Size for maxsize. example: 2g 9 | -- 10 | 11 | declare 12 | str varchar2(2000); 13 | begin 14 | for cur1 in (select file#, 'datafile' typ 15 | from v$tempfile 16 | union all 17 | select file#, 'tempfile' 18 | from v$tempfile) 19 | loop 20 | str := 'alter database ' || cur.typ || ' ' || cur1.file# || ' autoextend on next 100m maxsize &1'; 21 | dbms_output.put_line(str); 22 | 23 | 24 | end loop; 25 | end; 26 | / 27 | 28 | -------------------------------------------------------------------------------- /sql/datapump/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | dpjob.sql Infos about running DataPump-Jobs 2 | -------------------------------------------------------------------------------- /sql/datapump/dpjob.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dpjob.sql 67 2010-03-15 05:22:15Z tbr $ 4 | -- 5 | -- Infos about running DataPump-Jobs 6 | -- 7 | set lines 120 8 | set pages 100 9 | 10 | column OWNER_NAME format a20 11 | column JOB_NAME format a20 12 | column OPERATION format a10 13 | column JOB_MODE format a30 14 | column STATE format a15 15 | column DG format 99 16 | column ATS format 99 17 | column DPS format 99 18 | 19 | select OWNER_NAME 20 | ,JOB_NAME 21 | ,OPERATION 22 | ,JOB_MODE 23 | ,STATE 24 | ,DEGREE DG 25 | ,ATTACHED_SESSIONS ATS 26 | ,DATAPUMP_SESSIONS DPS 27 | from DBA_DATAPUMP_JOBS 28 | ; 29 | 30 | select dds.OWNER_NAME 31 | ,dds.JOB_NAME 32 | ,dds.SESSION_TYPE 33 | ,vs.sid 34 | from DBA_DATAPUMP_SESSIONS dds 35 | join v$session vs on vs.saddr=dds.saddr 36 | ; 37 | 38 | -------------------------------------------------------------------------------- /sql/dbms_job/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | jobinfo.sql list existing jobs from dba_jobs 2 | jobrun.sql list running jobs from dba_jobs 3 | userexport.sql export ddl for a give job with dbms_job 4 | -------------------------------------------------------------------------------- /sql/dbms_job/jobinfo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: jobinfo.sql 69 2010-03-15 20:20:53Z tbr $ 4 | -- 5 | -- list existing jobs from dba_jobs 6 | -- 7 | set pages 100 8 | set lines 140 9 | set trimspool on 10 | 11 | 12 | column what format a40 13 | column interval format a20 14 | column job format 99999 15 | column schema_user format a20 16 | column f format 99 17 | column b format a3 18 | select job 19 | ,failures f 20 | ,broken b 21 | ,schema_user 22 | ,what 23 | ,interval 24 | ,to_char(next_date, 'dd.mm.yy HH24:MI:SS') next_date 25 | from dba_jobs 26 | order by job 27 | ; 28 | -------------------------------------------------------------------------------- /sql/dbms_job/jobrun.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: jobrun.sql 69 2010-03-15 20:20:53Z tbr $ 4 | -- 5 | -- list running jobs from dba_jobs 6 | -- 7 | set lines 120 pages 100 8 | set trimspool on 9 | 10 | column sid format 99999 11 | column job format 9999999 12 | column failures format a99 13 | column last_date format a19 14 | column last_sec format a8 15 | column this_date format 16 | column this_sec 17 | column instance format 99 18 | 19 | select /*+RULE*/ sid 20 | ,job 21 | ,failures 22 | ,to_char(last_date,'dd.mm.yy hh24:mi:ss') last_date 23 | ,last_sec 24 | ,to_char(this_date,'dd.mm.yy hh24:mi:ss') this_date 25 | ,this_sec 26 | ,instance 27 | from dba_jobs_running 28 | ; 29 | 30 | -------------------------------------------------------------------------------- /sql/dbms_job/userexport.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Date: 23.12.2015 4 | -- 5 | -- export ddl for a give job with dbms_job 6 | -- 7 | -- This script must be run as the job owner! 8 | -- 9 | -- 1. Parameter : jobid from dba_jobs 10 | 11 | set lines 4000 12 | set pages 0 13 | set trimspool on 14 | set heading off 15 | set verify off 16 | set feedback off 17 | 18 | set serverout on 19 | set lines 1000 pages 1000 verify off 20 | declare 21 | jobtxt varchar2(5000); 22 | begin 23 | dbms_job.user_export(&1, jobtxt); 24 | dbms_output.enable(1000000); 25 | dbms_output.put_line('-- job_owner: '|| user); 26 | dbms_output.put_line('exec ' || jobtxt); 27 | end; 28 | / 29 | 30 | set feedback on 31 | set heading on 32 | -------------------------------------------------------------------------------- /sql/dbvisit/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | standby_history.sql History of Archivelogs in DBVisit Standby for last 12 hours 2 | -------------------------------------------------------------------------------- /sql/dbvisit/standby_history.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- History of Archivelogs in DBVisit Standby for last 12 hours 5 | -- 6 | -- Date: 26.05.2016 7 | -- 8 | -- Parameter 1: DBVisit Schemaowner 9 | 10 | COLUMN ORA_SID FORMAT A8 11 | COLUMN date FORMAT a16 12 | COLUMN AL_GAP FORMAT 9999 13 | COLUMN TR_GAP FORMAT 9000 14 | COLUMN PLOGSEQ FORMAT 99999999 15 | COLUMN PARCSEQ FORMAT 99999999 16 | COLUMN DBVLSEQ FORMAT 99999999 17 | COLUMN th format 99 18 | 19 | SELECT oracle_sid ORA_SID 20 | , to_char(datestamp, 'dd.mm hh24:mi:ss') "date" 21 | , archive_log_gap AL_GAP 22 | , TRANSFER_LOG_GAP TR_GAP 23 | , PRIMARY_LOG_SEQUENCE PLOGSEQ 24 | , PRIMARY_ARCHLOG_SEQUENCE PARCSEQ 25 | , DBVISIT_LAST_SEQUENCE DBVLSEQ 26 | , THREAD_NUM th 27 | FROM &1..dbv_sequence_log 28 | where datestamp > sysdate-1/12 29 | ORDER BY datestamp, oracle_sid; 30 | 31 | 32 | -------------------------------------------------------------------------------- /sql/ee/_README.1ST_: -------------------------------------------------------------------------------- 1 | this directory-tree contains scripts which need some additional licenses from 2 | Oracle Corporation. 3 | 4 | diag => Orace Diagnostic Pack required 5 | tuning => Orace Diagnostic + Tuning Pack required 6 | index => NO additional License required. Scripts only usable with EE! 7 | 8 | No warranty from Opitz Consulting. 9 | 10 | 11 | Kind Regards 12 | Thorsten Bruhns (thorsten.bruhns@opitz-consulting.com) 13 | 14 | -------------------------------------------------------------------------------- /sql/ee/cdc/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | apply.sql State Information from dba_apply 2 | change_tables.sql Displays information for change-sets -------------------------------------------------------------------------------- /sql/ee/cdc/apply.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: apply.sql 246 2010-11-23 19:37:50Z tbr $ 3 | -- 4 | -- State Information from dba_apply 5 | -- 6 | set lines 140 7 | set pages 100 8 | 9 | column QUEUE_NAME format a20 10 | column QUEUE_OWNER format a30 11 | column ERROR_NUMBER format 999999 12 | column ERROR_MESSAGE format a40 13 | column created format a10 14 | column STATUS format a12 15 | column applied format a7 16 | 17 | select QUEUE_OWNER 18 | ,QUEUE_NAME 19 | ,STATUS 20 | ,APPLY_CAPTURED applied 21 | -- ,ERROR_NUMBER 22 | -- ,ERROR_MESSAGE 23 | ,to_char(STATUS_CHANGE_TIME, 'dd.mm.yy hh24:mi:ss') state_timest 24 | from dba_apply 25 | order by STATUS_CHANGE_TIME; 26 | 27 | 28 | -------------------------------------------------------------------------------- /sql/ee/cdc/change_tables.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: change_tables.sql 246 2010-11-23 19:37:50Z tbr $ 3 | -- 4 | -- Displays information for change-sets 5 | -- 6 | 7 | set lines 120 pages 100 8 | 9 | column publisher format a20 10 | column set_name format a30 11 | column change_source_name format a30 12 | column iddl format a4 13 | column cen format a3 14 | column sod format a3 15 | column cerr format a4 16 | 17 | select publisher 18 | , set_name 19 | , change_source_name 20 | , ignore_ddl iddl 21 | , capture_enabled cen 22 | , stop_on_ddl sod 23 | , capture_error cerr 24 | from change_sets 25 | where publisher is not null 26 | ; 27 | -------------------------------------------------------------------------------- /sql/ee/dg/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | archive_dest_status.sql Status from v$archive_dest_status 2 | broker_config.sql Status from v$dg_broker_config 3 | logstdb_events.sql Displays information from DBA_LOGSTDBY_EVENTS 4 | logstdb_events_trx.sql Displays trx-ids from DBA_LOGSTDBY_EVENTS 5 | logstdb_log.sql Displays information from DBA_LOGSTDBY_LOG 6 | logstdb_progress.sql Displays information from V$LOGSTDBY_PROGRESS 7 | managed_reco_start.sql Start Managed Recovery for Data-Guard 8 | managed_reco_cancel.sql Stop Managed Recovery for Data-Guard 9 | managed_status.sql Status from v$managed_standby 10 | observer.sql Observer Information from V$FS_FAILOVER_OBSERVERS fo 11 | -------------------------------------------------------------------------------- /sql/ee/dg/archive_dest_status.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Lennart J. 3 | -- Version: 0.1 4 | -- Date: 16.07.2023 5 | -- 6 | -- Status Archive_dest 7 | col destination format a50; 8 | col status format a15; 9 | col dest_name format a20; 10 | col dest_id format 99; 11 | col protection_mode format a30; 12 | set lines 300; 13 | select DEST_ID,DEST_NAME,STATUS,DESTINATION,PROTECTION_MODE,ERROR 14 | from v$archive_dest_status 15 | where status <> 'INACTIVE'; 16 | -------------------------------------------------------------------------------- /sql/ee/dg/broker_config.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 23.09.2018 5 | -- 6 | -- Status from v$DG_BROKER_CONFIG 7 | 8 | set lines 200 pages 20 9 | 10 | column DB_UNIQUE_NAME format a30 11 | column dataguard_role format a20 12 | column status format 999999 13 | column BROKER format a8 14 | column SWITCHOVER_STATUS format a20 15 | 16 | select db.database DB_UNIQUE_NAME 17 | , db.dataguard_role 18 | , db.status 19 | , vd.DATAGUARD_BROKER BROKER 20 | , vd.SWITCHOVER_STATUS 21 | from v$DG_BROKER_CONFIG db 22 | join v$database vd on 1=1; 23 | -------------------------------------------------------------------------------- /sql/ee/dg/logstdb_events.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: logstdb_events.sql 102 2010-04-01 13:11:55Z tbr $ 3 | -- Displays information from DBA_LOGSTDBY_EVENTS 4 | 5 | 6 | set longchunksize 1000 7 | set long 1000 8 | set pages 100 9 | set lines 120 10 | 11 | column event_time format a14 12 | column status format a60 13 | column event format a40 14 | 15 | SELECT to_char(EVENT_TIME, 'dd.mm hh24:mi:ss') event_time 16 | , STATUS, EVENT 17 | FROM DBA_LOGSTDBY_EVENTS 18 | ORDER BY EVENT_TIMESTAMP, COMMIT_SCN 19 | ; 20 | -------------------------------------------------------------------------------- /sql/ee/dg/logstdb_events_trx.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: logstdb_events_trx.sql 103 2010-04-01 13:49:14Z tbr $ 3 | -- Displays trx-ids from DBA_LOGSTDBY_EVENTS 4 | 5 | 6 | -- How to skip a transaction in a logical standby: 7 | -- exec dbms_logstdby.SKIP_TRANSACTION( XIDUSN_P,XIDSLT_P,XIDSQN_P) 8 | 9 | set longchunksize 1000 10 | set long 1000 11 | set pages 100 12 | set lines 120 13 | 14 | column event_time format a14 15 | column status format a60 16 | column event format a40 17 | 18 | SELECT to_char(EVENT_TIME, 'dd.mm hh24:mi:ss') event_time 19 | , STATUS 20 | , XIDUSN 21 | , XIDSLT 22 | , XIDSQN 23 | FROM DBA_LOGSTDBY_EVENTS 24 | ORDER BY EVENT_TIMESTAMP, COMMIT_SCN 25 | ; 26 | -------------------------------------------------------------------------------- /sql/ee/dg/logstdb_log.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: logstdb_log.sql 102 2010-04-01 13:11:55Z tbr $ 3 | -- Displays information from DBA_LOGSTDBY_LOG 4 | 5 | 6 | set lines 120 pages 100 7 | 8 | column file_name format a65 9 | column SEQUENCE# format 999999 10 | column FIRST_CHANGE# format 999999999 11 | column FIRST_TIME format a14 12 | column APPLIED format a7 13 | COLUMN DICT_BEGIN FORMAT A10 14 | 15 | SELECT FILE_NAME 16 | , SEQUENCE# 17 | , APPLIED 18 | , FIRST_CHANGE# 19 | , to_char(FIRST_TIME,'dd.mm hh24:mi:ss') FIRST_TIME 20 | FROM DBA_LOGSTDBY_LOG 21 | ORDER BY SEQUENCE#; 22 | 23 | 24 | -------------------------------------------------------------------------------- /sql/ee/dg/logstdb_progress.sql: -------------------------------------------------------------------------------- 1 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 2 | -- $Id: logstdb_progress.sql 156 2010-07-30 07:33:37Z tbr $ 3 | -- Displays information from V$LOGSTDBY_PROGRESS 4 | 5 | alter session set nls_date_format='dd.mm.yy hh24:mi:ss'; 6 | set lines 120 7 | 8 | column latest_time format a17 9 | column APPLIED_TIME format a17 10 | column RESTART_TIME format a17 11 | column MINING_TIME format a17 12 | select latest_time 13 | ,APPLIED_TIME 14 | ,RESTART_TIME 15 | ,MINING_TIME 16 | from V$LOGSTDBY_PROGRESS; 17 | -------------------------------------------------------------------------------- /sql/ee/dg/managed_reco_cancel.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 03.02.2014 5 | -- 6 | -- Stop Managed Recovery for Data-Guard 7 | 8 | ALTER DATABASE RECOVER MANAGED STANDBY DATABASE cancel; 9 | 10 | -------------------------------------------------------------------------------- /sql/ee/dg/managed_reco_start.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 04.02.2014 5 | -- 6 | -- Start Managed Recovery for Data-Guard 7 | 8 | 9 | ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION; 10 | 11 | -------------------------------------------------------------------------------- /sql/ee/dg/managed_status.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 19.06.2018 5 | -- 6 | -- Status from v$managed_standby 7 | 8 | column STATUS format a13 9 | 10 | select process 11 | , thread# th 12 | , SEQUENCE# seq 13 | , status 14 | , block# 15 | , blocks 16 | from V$MANAGED_STANDBY 17 | order by process, sequence#; 18 | 19 | 20 | -------------------------------------------------------------------------------- /sql/ee/dg/observers.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 23.09.2018 5 | -- 6 | -- Status for observers 7 | -- 8 | -- The information is only calid on the PRIMARY Host! 9 | 10 | set lines 200 pages 20 11 | 12 | column name format a30 13 | column host format a40 14 | column master format a6 15 | column pt format a3 16 | column pt format a3 17 | 18 | select fo.name 19 | , fo.registered 20 | , fo.host 21 | , fo.ismaster master 22 | , fo.pinging_primary pp 23 | , fo.pinging_target pt 24 | from V$FS_FAILOVER_OBSERVERS fo 25 | join v$database vd on vd.database_role = 'PRIMARY' 26 | order by 1,3; 27 | -------------------------------------------------------------------------------- /sql/ee/diag/ash/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | ash.sql Active Session History Information for given SID 2 | ash2.sql Active Session History Information for given SID 3 | ashrpt_dbid.sql ASH-Report for given time and DBID filtered for Service 4 | ashrpt_dbid_serv.sql ASH-Report for given time and DBID filtered for Service 5 | -------------------------------------------------------------------------------- /sql/ee/diag/awr/awr_modify.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: awr_modify.sql 99 2010-04-01 05:47:37Z tbr $ 4 | -- 5 | -- script to modify the AWR-Settings! 6 | -- days => How many days is the retention time? 7 | -- snapinterva => Interval for Snapshots 8 | -- The missing '/' at the end is expected! 9 | set verify on 10 | 11 | begin 12 | DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(&days * 1440 , &snapinterval_minutes); 13 | end; 14 | -------------------------------------------------------------------------------- /sql/ee/diag/awr/awr_snaps_dbid.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: DB-ID 2 | -- 3 | -- List of AWR-Snapshots for DBID 4 | -- 5 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 6 | -- $Id: awr_snaps_dbid.sql 99 2010-04-01 05:47:37Z tbr $ 7 | -- 8 | set pagesize 100 9 | set lines 120 10 | set verify off 11 | 12 | column snap_id format 99999999 13 | column instance_number format 99 14 | column endezeit format a18 15 | select a.snap_id, a.instance_number, to_char(a.end_interval_time,'dd.mm.yy hh24:mi:ss') endezeit 16 | from DBA_HIST_SNAPSHOT a 17 | where dbid = &1 18 | order by snap_id 19 | ; 20 | 21 | -------------------------------------------------------------------------------- /sql/ee/diag/awr/create_snapshot.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: create_snapshot.sql 73 2010-03-16 04:26:32Z tbr $ 4 | -- 5 | -- generates a Snapshot in the workload repository 6 | -- 7 | set echo on 8 | exec dbms_workload_repository.create_snapshot 9 | 10 | -------------------------------------------------------------------------------- /sql/ee/index/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | idx_frag_bitmap.sql bitmap-idx with blevel>2 and leaf_blocks > 100000 2 | idx_frag_bitmap_rebuild.sql 'alter index .. rebuild online' for bitmap-indexes 3 | idx_frag_rebuild.sql 'alter index .. rebuild online;' for frag. indexes 4 | idx_rebuild.sql 'alter index .. rebuild online;' for given index 5 | idx_rebuild_unusable.sql 'alter index .. rebuild online;' for unusable idx 6 | -------------------------------------------------------------------------------- /sql/ee/index/idx_rebuild.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: Index-Owner 2 | -- Parameter 2: Index-Name 3 | ---- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: idx_rebuild.sql 100 2010-04-01 05:50:23Z tbr $ 6 | -- 7 | -- 'alter index .. rebuild online;' for given index 8 | -- only usable with Enterprise-Edition! 9 | -- 10 | prompt -- 1. Parameter OWNER 11 | prompt -- 2. Parameter Indexname 12 | 13 | set lines 1000 14 | set pages 0 15 | set feedback off 16 | set trimspool on 17 | set verify off 18 | 19 | select 'alter index '||owner||'.'||index_name||' rebuild online;' 20 | from dba_indexes 21 | where owner like('&1') 22 | and index_name like('&2') 23 | and temporary = 'N' 24 | union all 25 | select 'alter index '||index_owner||'.'||index_name||' rebuild partition '||partition_name||' online;' 26 | from dba_ind_partitions 27 | where index_owner like('&1') 28 | and index_name like('&2') 29 | ; 30 | 31 | set feedback on 32 | 33 | -------------------------------------------------------------------------------- /sql/ee/index/idx_rebuild_unusable.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: Index-Owner 2 | -- Parameter 2: Index-Name 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: idx_rebuild_unusable.sql 100 2010-04-01 05:50:23Z tbr $ 6 | -- 7 | -- 'alter index .. rebuild online;' for unusable indexes 8 | -- Only usable with Enterprise-Edition 9 | -- 10 | 11 | set lines 1000 12 | set pages 0 13 | set feedback off 14 | set trimspool on 15 | set verify off 16 | 17 | select 'alter index '||owner||'.'||index_name||' rebuild online;' 18 | from dba_indexes 19 | where owner like('&1') 20 | and index_name like('&2') 21 | and status = 'UNUSABLE' 22 | and temporary = 'N' 23 | union all 24 | select 'alter index '||index_owner||'.'||index_name||' rebuild partition '||partition_name||' online;' 25 | from dba_ind_partitions 26 | where index_owner like('&1') 27 | and index_name like('&2') 28 | and status = 'UNUSABLE' 29 | ; 30 | 31 | 32 | set feedback on 33 | 34 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | list_prof.sql Displays SQL_Profiles from Data-Dictionary 2 | status.sql Status from DBA_ADVISOR_LOG for a task_name 3 | accept.sql accept a sql-profile for a tuning task 4 | beispiele.txt Diverse Beispiele fuer den Tuning-Advisor 5 | disable.sql Disables a sql-profile 6 | display.sql Displays a report for a tuning task 7 | journal.sql Displays a journal for a tuning task 8 | drop.sql Drops a tuning task 9 | create_sqlid.sql create a tuning task for given sql_id from shared-pool 10 | create_from_awr.sql creates a tuning from AWR-snapshot range 11 | sql_monitor_rep.sql Displays SQL-Monitor Report for given sql_id -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/accept.sql: -------------------------------------------------------------------------------- 1 | prompt -- Parameter task_name 2 | prompt -- Parameter Description 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: accept.sql 30 2010-01-12 20:58:11Z oracle $ 6 | -- 7 | -- accept a sql-profile for a tuning task 8 | set verify off 9 | 10 | begin 11 | DBMS_SQLTUNE.ACCEPT_SQL_PROFILE ( 12 | task_name => '&task_name' 13 | ,name => '&description' 14 | ); 15 | end; 16 | / 17 | 18 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/beispiele.txt: -------------------------------------------------------------------------------- 1 | set verify off 2 | 3 | BEGIN 4 | DBMS_SQLTUNE.ALTER_SQL_PROFILE( 5 | name => 'my_sql_profile', 6 | attribute_name => 'STATUS', 7 | value => 'DISABLED'); 8 | END; 9 | / 10 | 11 | BEGIN 12 | DBMS_SQLTUNE.DROP_SQL_PROFILE(name => 'my_sql_profile'); 13 | END; 14 | / 15 | 16 | 17 | Profile anzeigen: 18 | select * from DBA_SQL_PROFILES 19 | 20 | 21 | 22 | BEGIN 23 | DBMS_SQLTUNE.ALTER_SQL_PROFILE( 24 | name => 'my_sql_profile', 25 | attribute_name => 'BIND_LIST', 26 | value => sql_binds(anydata.convertvarchar2('test') 27 | ,anydata.convertvarchar2('test') 28 | ) 29 | ); 30 | END; 31 | / 32 | 33 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/disable.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: disable.sql 30 2010-01-12 20:58:11Z oracle $ 4 | -- 5 | -- Disables a sql-profile 6 | --- 7 | set verify off 8 | 9 | BEGIN 10 | DBMS_SQLTUNE.ALTER_SQL_PROFILE( 11 | name => '&task_name', 12 | attribute_name => 'STATUS', 13 | value => 'DISABLED'); 14 | END; 15 | / 16 | 17 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/display.sql: -------------------------------------------------------------------------------- 1 | PROMPT -- Parameter 1: tuning task name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: display.sql 30 2010-01-12 20:58:11Z oracle $ 5 | -- 6 | -- Displays a report for a tuning task 7 | -- 8 | 9 | set long 1000000 10 | set longchunksize 1000000 11 | set linesize 200 12 | set pages 1000 13 | set verify off 14 | 15 | set trimspool on 16 | select dbms_sqltune.report_tuning_task('&1') from dual; 17 | 18 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/drop.sql: -------------------------------------------------------------------------------- 1 | PROMPT -- Parameter 1: tuning task name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: drop.sql 30 2010-01-12 20:58:11Z oracle $ 5 | -- 6 | -- Drops a tuning task 7 | -- 8 | -- Metalink Note: 262687.1 How to use the Sql Tuning Advisor. 9 | set serverout on 10 | set verify off 11 | 12 | begin 13 | dbms_sqltune.DROP_TUNING_TASK (task_name => '&1'); 14 | end; 15 | / 16 | 17 | 18 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/journal.sql: -------------------------------------------------------------------------------- 1 | PROMPT -- Parameter 1: tuning task name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: journal.sql 30 2010-01-12 20:58:11Z oracle $ 5 | -- 6 | -- Displays a journal for a tuning task 7 | -- 8 | set lines 120 9 | set pages 1000 10 | set verify off 11 | 12 | column journal_entry format a30 13 | 14 | select * 15 | from DBA_ADVISOR_JOURNAL 16 | where task_name like '&1'; 17 | 18 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/list_prof.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: list_prof.sql 30 2010-01-12 20:58:11Z oracle $ 4 | -- 5 | -- Displays SQL_Profiles from Data-Dictionary 6 | -- 7 | -- Metalink Note: 271196.1 Automatic SQL Tuning - SQL Profiles 8 | -- 9 | set verify off 10 | 11 | column name format a30 12 | column category format a10 13 | column sql_text format a50 14 | 15 | select name 16 | ,category 17 | , created 18 | , status 19 | , sql_text 20 | from DBA_SQL_PROFILES 21 | ; 22 | 23 | -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/sql_monitor_rep.sql: -------------------------------------------------------------------------------- 1 | PROMPT -- Parameter 1: tuning task name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: journal.sql 30 2010-01-12 20:58:11Z oracle $ 5 | -- 6 | -- Displays SQL-Monitor Report for given sql_id 7 | -- 8 | set long 10000000 9 | set longchunksize 10000000 10 | set linesize 230 11 | 12 | select dbms_sqltune.report_sql_monitor(sql_id => '&1') 13 | from dual; -------------------------------------------------------------------------------- /sql/ee/tuning/sqltune/status.sql: -------------------------------------------------------------------------------- 1 | prompt -- 1. Parameter task_name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: status.sql 30 2010-01-12 20:58:11Z oracle $ 5 | -- 6 | -- Status from DBA_ADVISOR_LOG for a task_name 7 | -- 8 | set lines 120 9 | set pages 100 10 | set verify off 11 | 12 | column status format a20 13 | column status_message format a30 14 | select task_name 15 | ,status 16 | ,substr(STATUS_MESSAGE,1,30) STATUS_MESSAGE 17 | ,PCT_COMPLETION_TIME pct 18 | ,PROGRESS_METRIC pm 19 | --,substr(METRIC_UNITS,1,30) METRIC_UNITS 20 | from dba_advisor_log where task_name like'&1' 21 | order by EXECUTION_END nulls last; 22 | 23 | 24 | -------------------------------------------------------------------------------- /sql/gc/report/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | gc_tbs_info.sql Generates a HTML-Report for TBS-Infos from a host 2 | -------------------------------------------------------------------------------- /sql/index/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | idx_columns.sql List columns of given Index 2 | idx_frag.sql List indizes ordered by fragmentation 3 | idx_info.sql Some Information for given Index 4 | idx_parallel.sql parallel attributes from tables and indexes 5 | idx_unusable.sql unusable indexes in the database 6 | missing_fk_index.sql List missing index columns from Foreign Keys -------------------------------------------------------------------------------- /sql/index/idx_columns.sql: -------------------------------------------------------------------------------- 1 | prompt -- 1. Parameter OWNER 2 | prompt -- 2. Parameter Indexname 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: idx_columns.sql 83 2010-03-23 20:03:59Z tbr $ 6 | -- 7 | -- List columns of given Index 8 | -- 9 | 10 | set lines 120 11 | set pages 1000 12 | set trimspool on 13 | set verify off 14 | 15 | column index_owner format a30 16 | column index_name format a30 17 | column column_name format a30 18 | column column_position format a2 19 | column column_name format a30 20 | 21 | select 22 | index_owner 23 | ,index_name 24 | ,column_name 25 | ,column_position 26 | from dba_ind_columns 27 | where index_owner like '&1' 28 | and index_name like '&2' 29 | order by 1,2,4 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/index/idx_info.sql: -------------------------------------------------------------------------------- 1 | prompt -- 1. Parameter OWNER 2 | prompt -- 2. Parameter Indexname 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: idx_info.sql 83 2010-03-23 20:03:59Z tbr $ 6 | -- 7 | -- Some Information for given Index 8 | -- 9 | 10 | set lines 1000 11 | set pages 1000 12 | set trimspool on 13 | 14 | column tablespace_name format a24 15 | column st format a3 16 | column idxt format a10 17 | 18 | select owner 19 | ,table_name 20 | ,index_name 21 | ,decode(status,'VALID', 'V' 22 | ,'N/A' , 'NA' 23 | ,status) st 24 | ,num_rows 25 | ,TEMPORARY TMP 26 | ,TABLESPACE_NAME 27 | ,index_type idxt 28 | ,to_char(last_analyzed, 'dd.MM.YY HH24:MI') analyzed 29 | from dba_indexes 30 | where owner like '&1' 31 | and index_name like '&2' 32 | ; 33 | -------------------------------------------------------------------------------- /sql/index/idx_parallel.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: Index-Owner 2 | -- Parameter 2: Index-Name 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- 6 | -- display all parallel attributes from tables and indexes 7 | -- 8 | -- Date: 19.08.2015 9 | column table_name format a30 10 | column owner format a20 11 | 12 | set verify off 13 | 14 | select a.owner 15 | , a.table_name 16 | , a.index_name 17 | , a.degree 18 | , a.INSTANCES 19 | from dba_indexes a 20 | where owner like '&1' 21 | and index_name like '&2' 22 | and (nvl(ltrim(rtrim(degree)),'1') not in('0','1') or nvl(ltrim(rtrim(instances)), '0') not in ('0','1') ) 23 | ; 24 | 25 | 26 | -------------------------------------------------------------------------------- /sql/index/idx_unusable.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: idx_unusable.sql 83 2010-03-23 20:03:59Z tbr $ 4 | -- 5 | -- List of all unusable indexes in the database 6 | -- 7 | set lines 120 8 | set pages 200 9 | 10 | select owner, index_name, status 11 | from dba_indexes 12 | where status not in ('VALID', 'N/A') 13 | ; 14 | 15 | -------------------------------------------------------------------------------- /sql/lob/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | lob_info.sql Displays infos for given LOB-Segment 2 | -------------------------------------------------------------------------------- /sql/lob/lob_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Displays infos for given LOB-Segment 5 | -- 6 | -- Date 11.02.2016 7 | -- 8 | set lines 140 9 | set pages 100 10 | set verify off 11 | 12 | 13 | column TABLE_NAME format a30 14 | column owner format a30 15 | column column_name format a30 16 | column cache format a5 17 | column tablespace_name format a30 18 | 19 | 20 | select owner 21 | ,table_name 22 | ,column_name 23 | ,in_row 24 | ,cache 25 | ,tablespace_name 26 | from dba_lobs a 27 | where a.owner like ('%&1') 28 | and a.table_name like ('&2') 29 | ; 30 | -------------------------------------------------------------------------------- /sql/login.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: login.sql 54 2010-03-13 08:39:25Z tbr $ 4 | -- 5 | -- login-Script for SQLPlus 6 | -- 7 | 8 | set serveroutput on size 1000000 9 | set trimspool on 10 | 11 | set lines 120 12 | set pages 1000 13 | 14 | set termout off 15 | 16 | @session/nlsf 17 | 18 | define gname=idle 19 | column global_name new_value gname 20 | select lower(user) || '@' || substr( global_name, 1, decode( dot, 0, 21 | length(global_name), dot-1) ) global_name 22 | from (select global_name, instr(global_name,'.') dot from global_name ); 23 | set sqlprompt '&gname> ' 24 | set termout on 25 | set feedback on 26 | -------------------------------------------------------------------------------- /sql/mview/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | mview_info.sql Display information from gicen MVIEW 2 | -------------------------------------------------------------------------------- /sql/mview/mview_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: mview_info.sql 86 2010-03-23 20:17:37Z tbr $ 4 | -- 5 | -- Display information from gicen MVIEW 6 | -- 7 | prompt parameter 1: MVIEW-Owner 8 | prompt Parameter 2: MVIEW-Name 9 | 10 | set lines 200 11 | set pages 200 12 | set verify off 13 | 14 | column table_name format a30 15 | column f_blk format 999999 16 | column owner format a20 17 | column tablespace_name format a20 18 | column blocks format 9999999 19 | column rowl format 999999 20 | column pfr format 99 21 | 22 | select owner 23 | ,mview_name 24 | ,FAST_REFRESHABLE fr 25 | ,LAST_REFRESH_TYPE lr 26 | ,LAST_REFRESH_DATE 27 | ,COMPILE_STATE 28 | from dba_mviews 29 | where owner like ('&1') 30 | and mview_name like ('&2') 31 | order by owner, mview_name 32 | ; 33 | 34 | -------------------------------------------------------------------------------- /sql/object/changed_objects.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: changed_objects.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays changed objects in last n days 6 | -- 7 | prompt Parameter 1: Object-Owner 8 | prompt Parameter 2: number of days for (sysdate-) 9 | 10 | set pages 200 11 | set lines 120 12 | set verify off 13 | 14 | column owner format a30 15 | column object_type format a20 16 | column object_name format a30 17 | column last_ddl format a14 18 | column cnt format 9999 19 | 20 | select owner 21 | , object_type 22 | , object_name 23 | , to_char(last_ddl_time, 'dd.mm.yy hh24:MI') last_ddl 24 | , count(1) cnt 25 | from dba_objects 26 | where last_ddl_time > sysdate - &2 27 | and owner like ('&1') 28 | group by grouping sets((owner, object_type,object_name,last_ddl_time),(owner),()) 29 | order by owner nulls last, object_type nulls last, object_name 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/object/db_links.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: db_links.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Display all db-links from dba_db_links 6 | -- 7 | 8 | column owner format a25 9 | column db_link format a30 10 | column username format a20 11 | column host format a25 12 | set pages 100 13 | set lines 120 14 | set verify off 15 | 16 | select owner 17 | ,db_link 18 | ,username 19 | ,host 20 | from dba_db_links 21 | order by 1,2 22 | ; 23 | 24 | -------------------------------------------------------------------------------- /sql/object/dba_errors.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dba_errors.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Display information from dba_errors 6 | -- 7 | prompt Parameter 1: Owner 8 | prompt Parameter 2: Object-Name 9 | 10 | set lines 140 11 | set pages 100 12 | set verify off 13 | 14 | 15 | column owner format a20 wrap 16 | column name format a30 17 | column type format a12 18 | column sequence format 9999 19 | column LINE format 999999 20 | column POSITION format 999 21 | column text format a40 wrap 22 | 23 | select owner 24 | ,name 25 | ,type 26 | ,sequence 27 | ,LINE 28 | ,POSITION 29 | ,text 30 | from dba_errors 31 | where owner like '&1' 32 | and name like '&2' 33 | order by 1,2,3,4 desc,5; 34 | 35 | -------------------------------------------------------------------------------- /sql/object/dbms_metadata.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbms_metadata.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- prints DDL from dbms_metadata for object 6 | -- 7 | 8 | prompt 1. Parameter : OWNER 9 | prompt 2. Parameter : OBJECT_NAME 10 | prompt 3. Parameter : OBJECT_TYPE 11 | set long 10000000 12 | set longchunksize 10000000 13 | set lines 2000 14 | set pages 0 15 | set trimspool on 16 | set heading off 17 | 18 | begin 19 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false); 20 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',true); 21 | end; 22 | / 23 | 24 | select dbms_metadata.get_ddl('&3', '&2', '&1') 25 | from dual; 26 | 27 | set heading on 28 | -------------------------------------------------------------------------------- /sql/object/dbms_metadata2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dbms_metadata2.sql 260 2010-12-03 12:33:55Z tbr $ 4 | -- 5 | -- prints DDL from dbms_metadata for object with only 2 Parameters 6 | -- 7 | 8 | prompt 1. Parameter : OBJECT_NAME 9 | prompt 2. Parameter : OBJECT_TYPE 10 | set long 10000000 11 | set longchunksize 10000000 12 | set lines 2000 13 | set pages 0 14 | set trimspool on 15 | set heading off 16 | 17 | begin 18 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false); 19 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',true); 20 | end; 21 | / 22 | 23 | select dbms_metadata.get_ddl('&2', '&1') 24 | from dual; 25 | 26 | set heading on 27 | -------------------------------------------------------------------------------- /sql/object/dbms_metadata_scheduler.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- prints DDL from dbms_metadata for PROC 5 | -- 6 | -- Scheduler Jobs must be exported with TYPE=PROCOBJ 7 | -- There is no special parameter for the different object types for scheduler 8 | -- jobs. 9 | -- Export of scheduler Objects from SYS-Schema is not possible at the 10 | -- moment. (Tested until 12.1.0.2) 11 | 12 | -- 13 | 14 | prompt 1. Parameter : OWNER 15 | prompt 2. Parameter : OBJECT_NAME 16 | 17 | set long 10000000 18 | set longchunksize 10000000 19 | set lines 2000 20 | set pages 0 21 | set trimspool on 22 | set heading off 23 | 24 | begin 25 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false); 26 | DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',true); 27 | end; 28 | / 29 | 30 | select dbms_metadata.get_ddl('PROCOBJ', '&2', '&1') 31 | from dual; 32 | 33 | set heading on 34 | -------------------------------------------------------------------------------- /sql/object/dict.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dict.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays info from DICT 6 | -- 7 | prompt Parameter 1: Table-Name 8 | 9 | set lines 120 10 | set pages 100 11 | set verify off 12 | 13 | 14 | column table_name format a30 15 | column comments format a80 16 | 17 | select table_name 18 | ,comments 19 | from dict 20 | where table_name like '%&1%' 21 | order by table_name 22 | ; 23 | -------------------------------------------------------------------------------- /sql/object/hint.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Search Hints in V$SQL_HINT 5 | -- 6 | -- Date: 03.12.2015 7 | -- Version: 1 8 | -- Parameter 1: Hint-Filter 9 | 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | column name format a30 15 | 16 | select name 17 | ,version 18 | from V$SQL_HINT 19 | where name like '&1' 20 | order by name 21 | ; 22 | -------------------------------------------------------------------------------- /sql/object/inv_objects.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: inv_objects.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays invalid objects in the database 6 | -- 7 | set pages 200 8 | set lines 200 9 | column owner format a30 10 | column object_type format a20 11 | column object_name format a30 12 | column cnt format 99999 13 | 14 | select owner 15 | , object_type 16 | , object_name 17 | , count(1) cnt 18 | from dba_objects 19 | where status != 'VALID' 20 | group by grouping sets((owner, object_type,object_name),(owner),()) 21 | order by owner nulls last, object_type nulls last, object_name 22 | ; 23 | 24 | -------------------------------------------------------------------------------- /sql/object/inv_objects8i.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: inv_objects8i.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays invalid objects in the database 6 | -- usable from Oracle 8.0+ 7 | -- 8 | 9 | set pages 200 10 | set lines 200 11 | column owner format a30 12 | column object_type format a20 13 | column object_name format a30 14 | 15 | select owner 16 | , object_type 17 | , object_name 18 | from dba_objects 19 | where status != 'VALID' 20 | order by owner, object_type nulls last, object_name 21 | ; 22 | 23 | -------------------------------------------------------------------------------- /sql/object/lock_infoid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- List all Sessions with Locks on given object Id 5 | -- 6 | -- Use obj_info to get the object_id for this script. 7 | -- 8 | -- Date 08.05.2017 9 | -- Version 1 10 | -- 11 | -- Parameter 1. Object-Id 12 | 13 | set lines 120 pages 100 14 | column owner format a30 15 | column OBJECT_NAME format a30 16 | column STATUS format a10 17 | column SID format 9999 18 | column SERIAL# format 99999 19 | 20 | select 21 | c.owner, 22 | c.object_name, 23 | b.sid, 24 | b.serial#, 25 | b.status 26 | from 27 | gv$locked_object a 28 | join gv$session b on b.sid = a.session_id and a.inst_id = b.inst_id 29 | join dba_objects c on a.object_id = c.object_id 30 | where c.OBJECT_ID = &1 31 | ; 32 | -------------------------------------------------------------------------------- /sql/object/obj_count.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 16.10.2018 5 | -- 6 | -- show number of object type for users 7 | -- 8 | -- Parameter 1: Owner 9 | 10 | set lines 120 pages 200 11 | column owner format a30 12 | column object_type format a30 13 | column cnt format 999999 14 | 15 | select owner 16 | ,object_type 17 | ,count(1) cnt 18 | from all_objects 19 | where owner like '&1' 20 | group by grouping sets ((owner, object_type),(owner), ()) 21 | order by owner nulls last, object_type nulls last; -------------------------------------------------------------------------------- /sql/object/obj_dependencies.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: obj_dependencies.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays dependencies for given object 6 | -- 7 | prompt Parameter 1: Owner 8 | prompt Parameter 2: Object-Name 9 | 10 | 11 | column owner format a20 12 | column name format a30 13 | column REFERENCED_OWNER format a20 14 | column REFERENCED_NAME format a30 15 | column REFERENCED_TYPE format a17 16 | 17 | set lines 140 18 | set pages 100 19 | set verify off 20 | 21 | select 22 | owner 23 | ,name 24 | ,REFERENCED_OWNER 25 | ,REFERENCED_NAME 26 | ,REFERENCED_TYPE 27 | from dba_dependencies 28 | where owner like '&1' 29 | and name like '&2' 30 | order by 1,2,3,4,5 31 | ; 32 | 33 | -------------------------------------------------------------------------------- /sql/object/obj_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Displays information from dba_objects 5 | -- 6 | -- Date: 31.05.2016 7 | 8 | -- Parameter 1: Object-Owner 9 | -- Parameter 2: Object-Name 10 | 11 | column object_name format a30 12 | column object_type format a20 13 | column owner format a20 14 | column status format a10 15 | column last_ddl format a17 16 | column created format a17 17 | 18 | set lines 130 19 | set pages 200 20 | set verify off 21 | 22 | select object_id 23 | ,owner 24 | ,object_name 25 | ,object_type 26 | ,status 27 | ,to_char(last_ddl_time,'dd.mm.yy hh24:mi:SS') last_ddl 28 | ,to_char(created,'dd.mm.yy hh24:mi:SS') created 29 | from dba_objects 30 | where owner like '&1' 31 | and object_name like '&2' 32 | order by object_name, object_type 33 | ; 34 | -------------------------------------------------------------------------------- /sql/object/obj_infoid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: obj_infoid.sql 88 2010-03-23 20:50:17Z tbr $ 4 | -- 5 | -- Displays information for given object_id 6 | -- 7 | prompt Parameter 1: Object-Id from dba_objects 8 | 9 | column object_name format a30 10 | column object_type format a20 11 | column owner format a20 12 | column last_ddl format a17 13 | column created format a17 14 | column status format a10 15 | 16 | set lines 120 17 | set pages 200 18 | select owner 19 | ,object_name 20 | ,object_type 21 | ,status 22 | ,to_char(last_ddl_time,'dd.mm.yy hh24:mi:SS') last_ddl 23 | ,to_char(created,'dd.mm.yy hh24:mi:SS') created 24 | from dba_objects 25 | where object_id =&1 26 | ; 27 | 28 | -------------------------------------------------------------------------------- /sql/opatch/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | sqlpatch.sql get insalled Patches from ORACLE_HOME+Database 2 | -------------------------------------------------------------------------------- /sql/parameter/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | deprecated.sql Displays deprecated parameters 2 | ksppi.sql information from x$ksppi (all init.ora-Parameters) 3 | nondefaultparam.sql Displays all non default init.ora-Parameter 4 | nondefault12 Displays all non default Parameter for CDB & PDB 5 | paraminfo.sql Detailinfo for a parameter 6 | reset_parameter.sql Removes a parameter from spfile for all instances 7 | spparameter.sql Displays all Parameters from SPFILE 8 | -------------------------------------------------------------------------------- /sql/parameter/deprecated.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: nondefaultparam.sql 121 2010-06-21 14:17:48Z tbr $ 4 | -- 5 | -- Displays changed deprecated parameters 6 | -- 7 | 8 | prompt ID = Instance-ID 9 | 10 | set pages 1000 11 | set lines 120 12 | set trimspool on 13 | 14 | column id format 99 15 | column name format a30 16 | column value format a80 17 | 18 | select a.inst_id id 19 | ,a.name 20 | ,a.value 21 | from gv$parameter a 22 | where a.isdefault != 'TRUE' 23 | and ISDEPRECATED = 'TRUE' 24 | order by a.name,a.inst_id; 25 | -------------------------------------------------------------------------------- /sql/parameter/ksppi.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: ksppi.sql 93 2010-03-24 04:42:58Z tbr $ 4 | -- 5 | -- Displays information from x$ksppi (all init.ora-Parameters) 6 | -- 7 | prompt Parameter 1: Parameter 8 | 9 | set lines 130 10 | set pages 100 11 | set trimspool on 12 | set verify off 13 | 14 | column KSPPINM format a40 15 | column KSPPDESC format a70 16 | 17 | select KSPPINM 18 | ,ltrim(KSPPDESC) KSPPDESC 19 | from x$ksppi 20 | where (KSPPINM) like '&1'; 21 | 22 | -------------------------------------------------------------------------------- /sql/parameter/nondefault12.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.com) 3 | -- 4 | -- Displays all non default Parameter for CDB & PDB 5 | -- 6 | -- Version: 1 7 | -- Date: 09.03.2019 8 | -- 9 | -- Important information! 10 | -- Some changed parameters inside a PDB are not shown in v$system_parameter 11 | -- There are visible in PDB_SPFILE$ but that view is not visible 12 | -- with SELECT_CATALOG_ROLE... 13 | 14 | set pages 1000 15 | set lines 140 16 | set trimspool on 17 | 18 | column id format 99 19 | column pdbname format a20 20 | column name format a30 21 | column value format a60 22 | 23 | select vs.inst_id id 24 | ,decode(vs.con_id 25 | , 0 26 | , 'CDB$ROOT' 27 | , vc.name) pdbname 28 | ,vs.name 29 | ,vs.value 30 | from GV$SYSTEM_PARAMETER2 vs 31 | left outer join v$containers vc on vs.con_id = vc.con_id 32 | where isdefault='FALSE' 33 | order by vs.name,vc.name, vs.inst_id, vs.value 34 | ; 35 | -------------------------------------------------------------------------------- /sql/parameter/nondefaultparam.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: nondefaultparam.sql 121 2010-06-21 14:17:48Z tbr $ 4 | -- 5 | -- Displays all non default init.ora-Parameter 6 | -- 7 | 8 | prompt ID = Instance-ID 9 | 10 | set pages 1000 11 | set lines 120 12 | set trimspool on 13 | 14 | column id format 99 15 | column name format a30 16 | column value format a80 17 | 18 | select inst_id id 19 | ,name 20 | ,value 21 | from gv$parameter 22 | where isdefault != 'TRUE' 23 | order by name,inst_id; 24 | -------------------------------------------------------------------------------- /sql/parameter/paraminfo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: paraminfo.sql 121 2010-06-21 14:17:48Z tbr $ 4 | -- 5 | -- Detailinfo for a parameter 6 | -- 7 | -- 8 | prompt Parameter 1: init.ora Parametername 9 | prompt ID = Instance-ID 10 | 11 | set lines 120 12 | set pagesize 100 13 | set trimspool on 14 | set verify off 15 | 16 | column id format 99 17 | column name format a30 18 | column value format a45 19 | column DEFAUL format a5 20 | column MODIFI format a5 21 | column DESCRIPTION format a25 22 | 23 | select inst_id id 24 | ,name 25 | ,value 26 | ,ISDEFAULT DEFAUL 27 | ,ISMODIFIED MODIFI 28 | ,DESCRIPTION 29 | from gv$parameter 30 | where name like ('&1') 31 | order by inst_id,name 32 | ; 33 | 34 | -------------------------------------------------------------------------------- /sql/parameter/reset_parameter.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: reset_parameter.sql 93 2010-03-24 04:42:58Z tbr $ 4 | -- 5 | -- Removes a parameter from spfile for all instances 6 | -- 7 | prompt Parameter 1: Parameter 8 | 9 | set verify off 10 | alter system reset "&1" scope=spfile sid='*'; 11 | 12 | -------------------------------------------------------------------------------- /sql/parameter/spparameter.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: spparameter.sql 121 2010-06-21 14:17:48Z tbr $ 4 | -- 5 | -- Displays all Parameters from SPFILE 6 | -- 7 | 8 | prompt ID = Instance-ID 9 | 10 | set pages 1000 11 | set lines 120 12 | set trimspool on 13 | set verify off 14 | 15 | column id format 99 16 | column name format a30 17 | column value format a70 18 | 19 | select inst_id id 20 | ,name 21 | ,value 22 | from gv$spparameter 23 | where ISSPECIFIED='TRUE' 24 | order by name,inst_id; 25 | -------------------------------------------------------------------------------- /sql/pdb/check_plug_compatibility.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 12.10.2018 6 | -- 7 | -- Script for checking the pdb plug in compatibility 8 | 9 | -- Parameter 1: Filename for xml for plugin 10 | 11 | SET SERVEROUTPUT ON 12 | DECLARE 13 | compatible CONSTANT VARCHAR2(3) := 14 | CASE DBMS_PDB.CHECK_PLUG_COMPATIBILITY( 15 | pdb_descr_file => '&1', 16 | pdb_name => 'PDB3') 17 | WHEN TRUE THEN 'YES' ELSE 'NO' 18 | END; 19 | BEGIN 20 | DBMS_OUTPUT.PUT_LINE(compatible); 21 | END; 22 | / 23 | 24 | set pages 100 25 | set lines 200 26 | column message format a100 wrap 27 | select message 28 | from pdb_plug_in_violations 29 | where type like '%ERR%' 30 | and status <> 'RESOLVED'; 31 | 32 | -------------------------------------------------------------------------------- /sql/pdb/close.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 3 | -- 4 | -- Version: 1 5 | -- Date : 15.05.2021 6 | -- 7 | -- Command: alter pluggable database open read only; 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | PROMPT alter pluggable database &1 close 12 | alter pluggable database &1 close; -------------------------------------------------------------------------------- /sql/pdb/current.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 25.11.2013 6 | -- 7 | -- Get current PDB from session 8 | -- 9 | 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | select sys_context ( 'Userenv', 'Con_Name') "Container DB" from dual; 15 | -------------------------------------------------------------------------------- /sql/pdb/discard_state.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 22.09.2015 6 | -- 7 | -- discard state for PDB after restart of cdb 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | 12 | 13 | alter PLUGGABLE DATABASE &1 discard state ; 14 | 15 | -------------------------------------------------------------------------------- /sql/pdb/list_save_state.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 12.05.2018 6 | -- 7 | -- list save state for PDBs 8 | -- 9 | set pages 100 lines 120 10 | 11 | column con_name format a60 12 | column state format a10 13 | column restricted format a12 14 | 15 | select con_name 16 | ,state 17 | ,restricted 18 | from CDB_PDB_SAVED_STATES 19 | order by 1; 20 | 21 | 22 | -------------------------------------------------------------------------------- /sql/pdb/open_ro.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 3 | -- 4 | -- Version: 1 5 | -- Date : 15.05.2021 6 | -- 7 | -- Command: alter pluggable database open read only; 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | PROMPT alter pluggable database &1 open read only 12 | alter pluggable database &1 open read only; -------------------------------------------------------------------------------- /sql/pdb/open_rw.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 3 | -- 4 | -- Version: 1 5 | -- Date : 15.05.2021 6 | -- 7 | -- Command: alter pluggable database open read write; 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | PROMPT alter pluggable database &1 open read write 12 | alter pluggable database &1 open read write; -------------------------------------------------------------------------------- /sql/pdb/pdb_incarnation.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 26.09.2015 6 | -- 7 | -- Display information for PDB Incarnations 8 | -- 9 | 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | 15 | column NAME format a30 16 | column CID format 999 17 | column status format a10 18 | 19 | select i.CON_ID CID 20 | , decode(i.con_id, 1, 'CDB$ROOT', p.name) name 21 | , i.STATUS 22 | , to_char(i.INCARNATION_TIME, 'dd.mm.yy hh24:mi:ss') INCARNATION 23 | , to_char(i.BEGIN_RESETLOGS_TIME, 'dd.mm.yy hh24:mi:ss') BEGIN_RESETLOGS 24 | , to_char(i.END_RESETLOGS_TIME, 'dd.mm.yy hh24:mi:ss') END_RESETLOGS 25 | from v$pdb_incarnation i 26 | left outer join v$pdbs p on i.con_id = p.con_id 27 | order by i.con_id, i.INCARNATION_SCN 28 | ; 29 | -------------------------------------------------------------------------------- /sql/pdb/registry.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date: 12.10.2018 6 | -- 7 | -- Information for changes in dba_registry_history 8 | -- 9 | set pages 100 10 | set lines 120 11 | 12 | column name format a20 13 | column COMP_NAME format a45 14 | column COMP_ID format a10 15 | column STATUS format a10 16 | column VERSION format a12 17 | 18 | alter session set "_exclude_seed_cdb_view"=false; 19 | 20 | select c.name 21 | ,r.COMP_NAME 22 | ,r.COMP_ID 23 | ,r.STATUS 24 | ,r.VERSION 25 | from CDB_REGISTRY r 26 | join v$containers c on c.con_id = r.con_id 27 | order by c.name, r.comp_name; 28 | -------------------------------------------------------------------------------- /sql/pdb/restore_xml.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 16.05.2021 6 | -- 7 | -- Execute dbms_pdb.recover 8 | -- 9 | -- Parameter 1: PDB-Name 10 | -- Parameter 2: XML-Filename 11 | -- Parameter 3: Datafile-Location 12 | set lines 120 13 | set pages 100 14 | set verify off 15 | 16 | begin 17 | dbms_pdb.recover( 18 | pdb_name => '&1', 19 | pdb_descr_file => '&2', 20 | filenames => '&3' 21 | ); 22 | end; 23 | / 24 | -------------------------------------------------------------------------------- /sql/pdb/save_state.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 22.09.2015 6 | -- 7 | -- save state for PDB after restart of cdb 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | 12 | 13 | alter PLUGGABLE DATABASE &1 save state ; 14 | 15 | -------------------------------------------------------------------------------- /sql/pdb/script_true.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 25.11.2013 6 | -- 7 | -- set "_ORACLE_SCRIPT"=true in session 8 | -- 9 | alter session set "_ORACLE_SCRIPT"=true; 10 | 11 | -------------------------------------------------------------------------------- /sql/pdb/snaps.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 07.06.2020 6 | -- 7 | -- Display information about PDB Snapshots 8 | -- 9 | 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | 15 | column NAME format a20 16 | column DBID format 999999999999 17 | column PARENT format a20 18 | column status format a13 19 | 20 | select v.NAME 21 | ,v2.NAME "PARENT" 22 | ,v.DBID 23 | ,v.OPEN_MODE 24 | ,v.restricted 25 | ,v.RECOVERY_STATUS RECOVERY 26 | from v$pdbs v 27 | left outer join v$pdbs v2 on v.SNAPSHOT_PARENT_CON_ID = v2.CON_ID 28 | order by 1, 2; -------------------------------------------------------------------------------- /sql/pdb/switch.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 25.11.2013 6 | -- 7 | -- Set session to container 8 | -- 9 | -- Parameter 1: PDB-Name 10 | 11 | 12 | set lines 120 13 | set pages 100 14 | set verify off 15 | 16 | alter session set container = &1; 17 | 18 | set termout off 19 | define gname=idle 20 | column global_name new_value gname 21 | col global_name noprint 22 | select upper(sys_context ('userenv', 'instance_name') || ':' || sys_context('userenv', 'con_name')) global_name from dual; 23 | set sqlprompt '_user @ &gname:>' 24 | set termout on 25 | -------------------------------------------------------------------------------- /sql/pdb/switchroot.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date : 25.11.2013 6 | -- 7 | -- Set session to container CDB$ROOT 8 | -- 9 | 10 | @@switch CDB$ROOT -------------------------------------------------------------------------------- /sql/pdb/trigger_open_all.sql: -------------------------------------------------------------------------------- 1 | 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 2 5 | -- Date : 36.09.2015 6 | -- 7 | -- Create Trigger for starting all pluggable databases 8 | -- 9 | -- This is only needed for 12.1.0.1. Please do not use it in 10 | -- 12.1.0.2 or newer as these versions has an enhancement SQL 11 | -- syntax for enable/disable autostart of PDBs while starting 12 | -- the instance 13 | -- 14 | CREATE OR REPLACE TRIGGER OPEN_ALL_PDBS 15 | after startup on database 16 | begin 17 | execute immediate 'alter pluggable database all open'; 18 | end; 19 | / 20 | 21 | -------------------------------------------------------------------------------- /sql/pdb/vpdb.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 2 5 | -- Date : 12.10.2018 6 | -- 7 | -- Display information from v$pdbs 8 | -- 9 | 10 | set lines 140 11 | set pages 100 12 | set verify off 13 | 14 | column NAME format a20 15 | column DBID format 999999999999 16 | column GUID format a40 17 | column open_mode format a10 18 | column restricted format a10 19 | column recovery format a13 20 | column ts_MB format 99999999 21 | 22 | select NAME 23 | ,GUID 24 | ,DBID 25 | ,OPEN_MODE open_mode 26 | ,restricted 27 | ,RECOVERY_STATUS recovery 28 | ,sum(total_size)/1024/1024 ts_MB 29 | from v$pdbs 30 | group by grouping sets((name, dbid, guid, open_mode, restricted, RECOVERY_STATUS) 31 | ,() 32 | ) 33 | order by 1; 34 | -------------------------------------------------------------------------------- /sql/px/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | pqslave.sql Information regarding parallel query slaves 2 | pxprocessstat.sql statistics about parallel query processes 3 | pxsession.sql active parallel query processes 4 | -------------------------------------------------------------------------------- /sql/px/pqslave.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pqslave.sql 96 2010-03-24 05:52:08Z tbr $ 4 | -- 5 | -- Information regarding parallel query slaves 6 | -- 7 | 8 | set lines 120 9 | set pages 100 10 | set trimspool on 11 | 12 | column idlcur format 9999 13 | column buscur format 9999 14 | column cpuc format 9999 15 | column msgsc format 9999999 16 | column msgrc format 9999999 17 | column idltot format 9999 18 | column bustot format 9999 19 | column cputot format 9999 20 | select SLAVE_NAME 21 | ,STATUS 22 | -- ,SESSIONS 23 | ,IDLE_TIME_CUR idlcur 24 | ,BUSY_TIME_CUR buscur 25 | ,CPU_SECS_CUR cpuc 26 | ,MSGS_SENT_CUR msgsc 27 | ,MSGS_RCVD_CUR msgrc 28 | ,IDLE_TIME_TOTAL idltot 29 | ,BUSY_TIME_TOTAL bustot 30 | ,CPU_SECS_TOTAL cputot 31 | ,MSGS_SENT_TOTAL msgst 32 | ,MSGS_RCVD_TOTAL msgrt 33 | from V$PQ_SLAVE 34 | order by status,SLAVE_NAME ; 35 | 36 | -------------------------------------------------------------------------------- /sql/px/pxprocessstat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pxprocessstat.sql 96 2010-03-24 05:52:08Z tbr $ 4 | -- 5 | -- statistical information about parallel query processes 6 | 7 | set lines 120 8 | set pages 100 9 | set trimspool on 10 | 11 | column STATISTIC format a30 12 | column VALUE format 999999999999 13 | select * from V$PX_PROCESS_SYSSTAT; 14 | -------------------------------------------------------------------------------- /sql/px/pxsession.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pxsession.sql 96 2010-03-24 05:52:08Z tbr $ 4 | -- 5 | -- active parallel query processes 6 | -- 7 | 8 | set lines 120 9 | set pages 100 10 | set trimspool on 11 | 12 | column sid format 99999 13 | column qcsid format 99999 14 | column degree format 999 15 | column req_degree format 999 16 | 17 | select sid, qcsid, degree, req_degree 18 | from v$px_session 19 | order by qcsid,degree nulls first; 20 | 21 | select distinct qcsid,degree ,req_degree 22 | from v$px_session 23 | where degree is not null; 24 | 25 | -------------------------------------------------------------------------------- /sql/recovery/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | fuzzy.sql Display fuzzy Datafiles 2 | fuzzy_absolute.sql Display fuzzy information from x$kcvfh 3 | log.sql Information from gv$recovery_log 4 | progress.sql Information for a running Recovery-Operation 5 | -------------------------------------------------------------------------------- /sql/recovery/fuzzy.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: fuzzy_absolute.sql 1058 2013-11-15 06:19:21Z tbr $ 4 | -- 5 | -- Unable to open the database in read only mode after restore/recovery (Doc ID 316154.1) 6 | -- How to quickly check that Database is consistent after incomplete recovery (Point in Time Recovery) before OPEN RESETLOGS (Doc ID 1354256.1) 7 | -- 8 | -- Display fuzzy information from x$kcvfh 9 | 10 | set lines 140 pages 100 11 | column fuzzy format a5 12 | column error format a20 13 | column chkp_change format 99999999999 14 | column recover format a3 15 | column name format a50 16 | select hxfil file# 17 | , substr(hxfnm , 1, 50) name 18 | , fhscn checkpoint_change# 19 | , fhafs Absolute_Fuzzy_SCN 20 | , max(fhafs) over () Min_PIT_SCN 21 | from x$kcvfh 22 | where fhafs!=0 23 | ; 24 | -------------------------------------------------------------------------------- /sql/recovery/fuzzy_absolute.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: fuzzy_absolute.sql 1058 2013-11-15 06:19:21Z tbr $ 4 | -- 5 | -- Unable to open the database in read only mode after restore/recovery (Doc ID 316154.1) 6 | -- How to quickly check that Database is consistent after incomplete recovery (Point in Time Recovery) before OPEN RESETLOGS (Doc ID 1354256.1) 7 | -- 8 | -- Display fuzzy information from x$kcvfh 9 | 10 | set lines 140 pages 100 11 | column fuzzy format a5 12 | column error format a20 13 | column chkp_change format 99999999999 14 | column recover format a3 15 | column name format a50 16 | select hxfil file# 17 | , substr(hxfnm , 1, 50) name 18 | , fhscn checkpoint_change# 19 | , fhafs Absolute_Fuzzy_SCN 20 | , max(fhafs) over () Min_PIT_SCN 21 | from x$kcvfh 22 | where fhafs!=0 23 | ; 24 | -------------------------------------------------------------------------------- /sql/recovery/log.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: log.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Information from gv$recovery_log 6 | 7 | set lines 120 8 | set pages 100 9 | set trimpspool on 10 | 11 | column thread format 99 12 | column sequence# format 999999 13 | column zeit format a12 14 | column archive_name format a80 15 | 16 | select thread# 17 | ,sequence# 18 | ,to_char(time,'dd HH24:mi:ss') zeit 19 | ,archive_name 20 | from GV$RECOVERY_LOG 21 | order by time,thread#; 22 | -------------------------------------------------------------------------------- /sql/recovery/pitr_example.txt: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.com) 3 | -- Version: 0.1 4 | -- Date: 15.12.2014 5 | 6 | -- Example for Point in time recovery 7 | -- 8 | -- recover database until time '2014-01-31:20:45:00' 9 | -------------------------------------------------------------------------------- /sql/recovery/progress.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: progress.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Information for a running Recovery-Operation 6 | 7 | set lines 120 8 | set pages 100 9 | set trimspool on 10 | 11 | column stime format a8 12 | column type format a20 13 | column item format a25 14 | column units format a20 15 | column sofar format 9999999 16 | column total format 9999999 17 | 18 | select to_char(start_time,'HH24:mi:ss') stime 19 | ,type 20 | ,item 21 | ,units 22 | ,sofar 23 | ,total 24 | ,to_char(timestamp,'mm.dd HH24:mi:ss') timestamp 25 | from V$RECOVERY_PROGRESS; 26 | 27 | -------------------------------------------------------------------------------- /sql/result/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | cache_stat.sql List statistics from the result cache 2 | -------------------------------------------------------------------------------- /sql/result/cache_stat.sql: -------------------------------------------------------------------------------- 1 | 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | 4 | -- Date 15.07.2015 5 | -- 6 | -- List statistics from the result cache 7 | -- 8 | 9 | col gname name a30 10 | col dbname value a40 11 | set trimspool on lines 120 pages 100 verify off 12 | 13 | SELECT inst_id 14 | ,id 15 | ,name 16 | ,value 17 | from GV$RESULT_CACHE_STATISTICS 18 | order by name; 19 | -------------------------------------------------------------------------------- /sql/rlwrap.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 4 | # 5 | # automatically start the correct version of rlwrap 6 | # 7 | # Version: 1 8 | # Date: 14.10.2018 9 | 10 | 11 | rlwrapdir=$(dirname $(basename $0))/../rlwrap 12 | 13 | if [ $(uname -i) = 'x86_64' ] ; then 14 | rlwrapexe=${rlwrapdir}/rlwrap_linux_x64 15 | fi 16 | 17 | $rlwrapexe $* 18 | -------------------------------------------------------------------------------- /sql/rman/archive_volumen.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: archive_volumen.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- archivesize per day 6 | -- 7 | 8 | set pages 100 lines 100 trimspool on 9 | column tag format a8 10 | column vol_gb format 999,999.999 11 | column comp_gb format 999,999.999 12 | 13 | select to_char(trunc(first_time),'dd.mm.yy') tag 14 | , trunc(sum(filesize)/1024/1024/1024,3) vol_gb 15 | , trunc(sum(filesize/COMPRESSION_RATIO)/1024/1024/1024,3) comp_gb 16 | from V$BACKUP_ARCHIVELOG_DETAILs 17 | group by trunc(first_time) 18 | order by trunc(first_time); 19 | 20 | -------------------------------------------------------------------------------- /sql/rman/catalog/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | catalog_backuppiece.sql create catalog backuppiece from catalog 2 | check_old_rman_dbs.sql displays database with backups older then n days 3 | delete_db_from_rman.sql unregister database without deadlocks from catalog 4 | delete_old_incarnation.sql delete backups older then 180days from catalog 5 | status_all_dbs.sql displays backupstate for all DBs in RMAN-Repository -------------------------------------------------------------------------------- /sql/rman/catalog/catalog_backuppiece.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: db_name 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: catalog_backuppiece.sql 222 2010-11-01 21:48:49Z tbr $ 5 | -- 6 | -- create catalog backuppiece from catalog for db_name 7 | -- 8 | set lines 400 9 | set pages 10000 10 | 11 | set trimspool on 12 | 13 | set heading off 14 | set verify off 15 | 16 | select 'catalog backuppiece '''|| handle ||''';' 17 | from rman.rc_backup_piece rb 18 | join rman.rc_database rd on rd.db_key = rb.db_key 19 | where rd.name = '&1'; 20 | 21 | 22 | -------------------------------------------------------------------------------- /sql/rman/catalog/check_old_rman_dbs.sql: -------------------------------------------------------------------------------- 1 | prompt 1. Parameter: Tage 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: check_old_rman_dbs.sql 222 2010-11-01 21:48:49Z tbr $ 5 | -- 6 | -- displays database with backups older then n days 7 | -- 8 | column db_key format 9999999999 9 | column dbinc_key format 9999999999 10 | column dbid format 9999999999 11 | column name format a10 12 | column reset_time format a20 13 | select rc.db_key 14 | ,rc.dbid 15 | ,rc.dbinc_key 16 | ,rc.name 17 | ,to_char(rc.resetlogs_time,'dd.mm.yyyy hh24:mi') reset_time 18 | from rc_database rc 19 | where not exists(select 1 20 | from rc_backup_piece rbp 21 | where rc.DB_KEY = rbp.db_key 22 | and rc.DBID = rbp.DB_ID 23 | and rbp.START_TIME > sysdate - &1 24 | ); 25 | 26 | -------------------------------------------------------------------------------- /sql/rman/catalog/delete_db_from_rman.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: db_key from rc_database 2 | -- Parameter 2: db_id from rc_database 3 | -- 4 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 5 | -- $Id: delete_db_from_rman.sql 222 2010-11-01 21:48:49Z tbr $ 6 | -- 7 | -- unregister database without deadlocks from catalog 8 | -- 9 | 10 | begin 11 | -- Lock table, da sonst Deadlocks verursacht werden koennen, 12 | -- wenn parallel andere Sicherungen laufen 13 | lock table db in exclusive mode; 14 | dbms_rcvcat.unregisterDatabase(db_key=> &1 15 | ,db_id => &2 16 | ); 17 | end; 18 | / 19 | 20 | -------------------------------------------------------------------------------- /sql/rman/clear_ctl_deleted_objects.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: clear_ctl_deleted_objects.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- Script for reset of control-file-pointers 6 | -- 7 | -- Doc ID: 465378.1 Subject: Rman Backup Very Slow After Mass Deletion Of Expired Backups (Disk, Tape) 8 | -- Oracle Server - Enterprise Edition - Version: 10.2.0.2 9 | -- 10.2.0.3 UND 10.2.0.4 sind ebenfalls betroffen! 10 | -- 11 | prompt In Zieldatenbank: 12 | prompt execute dbms_backup_restore.resetcfilesection(19); 13 | prompt In RMAN-Katalog 14 | prompt update dbinc set high_dl_recid=0; 15 | 16 | 17 | -------------------------------------------------------------------------------- /sql/rman/dbf_backup.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.com) 3 | -- 4 | -- display Last Backup with level for datafiles 5 | -- 6 | -- Date: 05.03.2016 7 | -- Version: 1 8 | 9 | set lines 140 pages 200 10 | column name format a70 11 | column max_scn format 99999999999999999 12 | column max_fuzzy_scn format 99999999999999999 13 | column file# format 9999 14 | column il format 99 15 | 16 | select bd.file# 17 | , bd.INCREMENTAL_LEVEL IL 18 | , max(bd.COMPLETION_TIME) COMPLETION_TIME 19 | , max(bd.CHECKPOINT_CHANGE#) MAX_SCN 20 | , max(ABSOLUTE_FUZZY_CHANGE#) max_fuzzy_scn 21 | , df.name 22 | from v$backup_datafile bd 23 | join v$datafile_header dh on dh.file# = bd.file# 24 | join v$datafile df on dh.file# = df.file# 25 | where dh.status = 'ONLINE' 26 | group by bd.file#, bd.INCREMENTAL_LEVEL, df.name 27 | order by COMPLETION_TIME 28 | ; 29 | 30 | -------------------------------------------------------------------------------- /sql/rman/incarnation.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: incarnation.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- display known database incarnations 6 | -- 7 | column inc format 99 8 | column pinc format 99 9 | column flash_ok format a8 10 | column STATUS format a7 11 | column reset_change format 99999999999 12 | column reset_id format 99999999999 13 | select INCARNATION# inc 14 | ,PRIOR_INCARNATION# pinc 15 | ,RESETLOGS_CHANGE# reset_change# 16 | ,to_char(RESETLOGS_TIME,'dd.mm.yy HH24:mi:ss') rtime 17 | ,STATUS 18 | ,to_char(prior_RESETLOGS_TIME,'dd.mm.yy HH24:mi:ss') prtime 19 | ,RESETLOGS_ID reset_id 20 | ,FLASHBACK_DATABASE_ALLOWED flash_ok 21 | from V$DATABASE_INCARNATION 22 | ; 23 | -------------------------------------------------------------------------------- /sql/rman/output.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: RECID from v$rman_output 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: output.sql 221 2010-11-01 21:33:50Z tbr $ 5 | -- 6 | -- Detail output for a rman-job 7 | -- 8 | 9 | set pages 10000 10 | set lines 137 11 | 12 | column output format a130 13 | column recid format 999999 14 | 15 | select output 16 | from V$RMAN_OUTPUT 17 | where RMAN_STATUS_RECID = &1 18 | order by stamp; 19 | 20 | -------------------------------------------------------------------------------- /sql/rman/restorepoint.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: restorepoint.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- display known restore points 6 | -- 7 | set lines 120 8 | set pages 200 9 | 10 | column NAME format a50 11 | column Zeit format a17 12 | column dbinc format 999999 13 | column size format 999999 14 | column scn format 999999999999 15 | select scn 16 | ,DATABASE_INCARNATION# dbinc 17 | ,GUARANTEE_FLASHBACK_DATABASE GUA 18 | ,STORAGE_SIZE/1024/1024 "size" 19 | ,to_char(TIME, 'dd.mm.yy HH24:mi:SS') Zeit 20 | ,NAME 21 | from V$RESTORE_POINT 22 | order by TIME 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/rman/set_newname.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: set_newname.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- spool set newname for all files 6 | -- 7 | set lines 2000 8 | set pages 0 9 | set trimspool on 10 | set feedback off 11 | 12 | 13 | select 'set newname for '|| decode(typ, '1', 'datafile','2','tempfile')||' '|| file_id || ' to ' 14 | ||''''|| file_name||''';' 15 | from (select file# file_id, name file_name, '1' typ 16 | from v$datafile 17 | union all 18 | select file# file_id, name file_name, '2' typ 19 | from v$tempfile 20 | ) 21 | order by file_id; 22 | 23 | 24 | set feedback on 25 | 26 | 27 | -------------------------------------------------------------------------------- /sql/rman/status_archive.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: status_archive.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- history for known archivelog backups 6 | -- 7 | set pages 100 8 | set lines 120 9 | 10 | column STATUS format a10 11 | column etime format a14 12 | column stime format a14 13 | column lzeit format 999999 14 | 15 | select to_char(start_time, 'dd.mm.yy HH24:mi') stime 16 | , to_char(end_time, 'dd.mm.yy HH24:mi') etime 17 | , round((end_time-start_time)*24*60) lzeit 18 | , object_type, status 19 | , round(input_bytes/1024/1024) imb 20 | , round(output_bytes/1024/1024) omb 21 | from( 22 | select * 23 | from V$RMAN_STATUS 24 | where operation='BACKUP' 25 | and object_type = 'ARCHIVELOG' 26 | order by start_time desc) 27 | where rownum < 60 28 | order by start_time 29 | ; 30 | -------------------------------------------------------------------------------- /sql/rman/status_archive_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: status_archive_stat.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- Statistics for archivelog backups 6 | -- 7 | set pages 100 8 | set lines 120 9 | 10 | column STATUS format a10 11 | column etime format a20 12 | column lzeit format 999999 13 | 14 | select 15 | trunc(end_time) etime 16 | , object_type, status 17 | , round(sum((end_time-start_time))*24*60) lzeit 18 | , round(sum(input_bytes)/1024/1024) imb 19 | , round(sum(output_bytes)/1024/1024) omb 20 | from( 21 | select * 22 | from V$RMAN_STATUS 23 | where operation='BACKUP' 24 | ) 25 | group by trunc(end_time) 26 | , object_type, status 27 | order by etime 28 | ; 29 | -------------------------------------------------------------------------------- /sql/rman/vbackup_async.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: vbackup_async.sql 221 2010-11-01 21:33:50Z tbr $ 4 | -- 5 | -- Metalink: Note:237083.1 Subject: Using V$BACKUP_ASYNC_IO / V$BACKUP_SYNC_IO to Monitor RMAN Performance 6 | -- 7 | -- statistical information from v$backup_async_io 8 | -- 9 | set lines 140 10 | set pages 100 11 | column filename format a70 12 | 13 | select * 14 | from (select 15 | --device_type "Device", 16 | type, 17 | filename, 18 | to_char(open_time, 'dd.mm.yy hh24:mi:ss') open, 19 | to_char(close_time,'hh24:mi:ss') close, 20 | elapsed_time ET, 21 | round(effective_bytes_per_second/1024) kbytes 22 | from v$backup_async_io 23 | where close_time > sysdate - 30 24 | order by open_time 25 | ) 26 | where rownum < 400 27 | ; 28 | -------------------------------------------------------------------------------- /sql/scheduler/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | block_stat.sql statistic information for dirty/clean buffers 2 | obj_statistic.sql objects-usage in buffer-cache 3 | 4 | -------------------------------------------------------------------------------- /sql/scheduler/runbg.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: runbg.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | begin 6 | dbms_scheduler.run_job('&1'||'.'||'&2',false); 7 | end; 8 | / 9 | 10 | -------------------------------------------------------------------------------- /sql/scheduler/runfg.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: runfg.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | begin 6 | dbms_scheduler.run_job('&1'||'.'||'&2',true); 7 | end; 8 | / 9 | 10 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerinfo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerinfo.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set lines 140 6 | set pages 100 7 | 8 | column owner format a20 9 | column job_name format a20 10 | column REPEAT_INTERVAL format a20 11 | column SCHEDULE_NAME format a20 12 | column STATE format a9 13 | 14 | select owner 15 | ,job_name 16 | ,to_char(NEXT_RUN_DATE, 'dd.mm.yy hh24:mi:ss') NEXT_RUN_DATE 17 | ,to_char(LAST_START_DATE, 'dd.mm.yy hh24:mi:ss') LAST_START_DATE 18 | ,REPEAT_INTERVAL 19 | ,enabled 20 | ,SCHEDULE_NAME 21 | ,STATE 22 | from DBA_SCHEDULER_JOBS 23 | order by 1,2; 24 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerinfo2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerinfo2.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set lines 140 6 | set pages 100 7 | 8 | column owner format a20 9 | column job_name format a20 10 | column SCHEDULE_NAME format a20 11 | column job_action format a60 12 | 13 | select owner 14 | ,job_name 15 | ,SCHEDULE_NAME 16 | ,job_action 17 | from DBA_SCHEDULER_JOBS 18 | order by 1,2; 19 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerinfo3.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerinfo3.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set lines 140 6 | set pages 100 7 | 8 | column owner format a20 9 | column job_name format a20 10 | column SCHEDULE_NAME format a20 11 | column prg format a60 12 | column narg format 99 13 | 14 | select owner 15 | ,job_name 16 | ,NUMBER_OF_ARGUMENTS narg 17 | ,program_owner||'.'||PROGRAM_NAME prg 18 | from DBA_SCHEDULER_JOBS 19 | order by 1,2; 20 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerlog.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerlog.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set pages 100 6 | set lines 125 7 | column ldate format a17 8 | column owner format a20 9 | column job_name format a30 10 | column status format a10 11 | column additional_info format a30 12 | column lzeit format a13 13 | 14 | select to_char(log_date, 'dd.mm.yy HH24:mi:ss') ldate 15 | , owner 16 | , job_name 17 | , status 18 | , to_char(duration, 'HH24:MM:SS') lzeit 19 | , additional_info 20 | from 21 | ( 22 | select * 23 | from ( 24 | select log_date 25 | , owner 26 | , job_name 27 | , status 28 | , run_duration duration 29 | , additional_info 30 | from DBA_SCHEDULER_JOB_RUN_DETAILS 31 | where owner like '&1' 32 | and job_name like '&2' 33 | ) 34 | order by log_date desc 35 | ) where rownum < 100 36 | order by log_date 37 | ; 38 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerprog.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerprog.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | set lines 140 6 | set pages 100 7 | 8 | column owner format a20 9 | column program_name format a20 10 | column program_action format a60 11 | column prg format a60 12 | column narg format 99 13 | 14 | select a.owner 15 | ,a.program_name 16 | ,a.program_action 17 | ,a.number_of_arguments narg 18 | ,a.enabled 19 | from DBA_SCHEDULER_PROGRAMS a 20 | order by 1,2; 21 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerrun.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerrun.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | column SESSION_STAT_CPU format a17 6 | column owner format a30 7 | column object_name format a30 8 | column session_id format 99999 9 | column SESSION_SERIAL_NUM format 99999 10 | 11 | select session_id 12 | ,SESSION_SERIAL_NUM 13 | ,SESSION_STAT_CPU 14 | ,owner 15 | ,object_name 16 | from V$SCHEDULER_RUNNING_JOBS vs 17 | join dba_objects db on vs.JOB_ID = db.OBJECT_ID 18 | ; 19 | -------------------------------------------------------------------------------- /sql/scheduler/schedulersubmit.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulersubmit.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | begin 6 | dbms_scheduler.create_job(job_name => '&JOB_NAME' 7 | ,job_type => 'PLSQL_BLOCK' 8 | --,job_type => 'STORED_PROCEDURE' 9 | ,job_action => '&PLSQLPROCEDURE' 10 | ,repeat_interval => null 11 | ,enabled => false 12 | ,comments => 'einmalig ausgefuehrter Job' 13 | ); 14 | end; 15 | / 16 | 17 | -------------------------------------------------------------------------------- /sql/scheduler/schedulersubmit_external.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulersubmit_external.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | begin 6 | dbms_scheduler.create_job(job_name => '&JOB_NAME' 7 | ,job_type => 'EXECUTABLE' 8 | ,job_action => '&script' 9 | ,repeat_interval => null 10 | ,enabled => false 11 | ,comments => 'einmalig ausgefuehrter Job' 12 | ); 13 | end; 14 | / 15 | 16 | -------------------------------------------------------------------------------- /sql/scheduler/schedulerwindow.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: schedulerwindow.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Note:368475.1 Subject: How To Extend Maintenance Windows For GATHER_STATS_JOB for More Than 8 Hours? 6 | 7 | column DURATION format a20 8 | column START_DATE format a15 9 | column END_DATE format a15 10 | column RESOURCE_PLAN format a15 11 | column WINDOW_NAME format a15 12 | 13 | select WINDOW_NAME 14 | ,RESOURCE_PLAN 15 | , START_DATE 16 | ,REPEAT_INTERVAL 17 | ,END_DATE 18 | ,DURATION 19 | ,ENABLED 20 | ,ACTIVE 21 | from dba_scheduler_windows 22 | ; 23 | -------------------------------------------------------------------------------- /sql/scheduler/start_all.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: start_all.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | --Note:459189.1 Subject: How to stop all dbms_scheduler jobs 6 | Exec dbms_scheduler.set_scheduler_attribute('SCHEDULER_DISABLED','FALSE'); 7 | 8 | -------------------------------------------------------------------------------- /sql/scheduler/stop_all.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: stop_all.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | --Note:459189.1 Subject: How to stop all dbms_scheduler jobs 6 | Exec dbms_scheduler.set_scheduler_attribute('SCHEDULER_DISABLED','TRUE'); 7 | 8 | -------------------------------------------------------------------------------- /sql/serveralert/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | alert_history.sql Displays Server Generated Alert History 2 | alert_thresholds.sql Lists all registered alert thresholds 3 | alert_types.sql Lists all Types from V$ALERT_TYPES 4 | alertall.sql List of all old and actual alerts 5 | alerts.sql List of actual alerts 6 | set_tbs_off.sql Disable an alert for a known Tablespace 7 | set_tbs_threshold.sql set a threshold for a given Tablespace 8 | set_threshold_example.sql examples for setting an alert 9 | 10 | -------------------------------------------------------------------------------- /sql/serveralert/alert_history.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: alert_history.sql 232 2010-11-13 18:09:48Z tbr $ 4 | -- 5 | -- Displays Server Generated Alert History 6 | -- 7 | set lines 120 8 | set pages 100 9 | 10 | column reason format a90 11 | column rid format 999 12 | column zeit format a18 13 | 14 | select reason_id rid 15 | , to_char(TIME_SUGGESTED, 'dd.mm.yy hh24:mi:ss') zeit 16 | , reason 17 | from (select * 18 | from DBA_ALERT_HISTORY 19 | order by sequence_id desc 20 | ) 21 | where rownum < 60 22 | order by TIME_SUGGESTED 23 | ; 24 | 25 | 26 | -------------------------------------------------------------------------------- /sql/serveralert/alert_thresholds.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: alert_thresholds.sql 232 2010-11-13 18:09:48Z tbr $ 4 | -- 5 | -- Display of all registered alert thresholds 6 | -- 7 | set lines 140 8 | set pages 100 9 | 10 | column metrics_name format a40 11 | column warn_val format a7 12 | column crit_val format a7 13 | column warn_op format a12 14 | column crit_op format a12 15 | column op format 999 16 | column co format 99 17 | column status format a7 18 | column object_name format a20 19 | 20 | select 21 | metrics_name 22 | ,WARNING_OPERATOR warn_op 23 | ,warning_value warn_val 24 | ,CRITICAL_OPERATOR crit_op 25 | ,critical_value crit_val 26 | ,OBSERVATION_PERIOD op 27 | ,CONSECUTIVE_OCCURRENCES co 28 | ,status 29 | ,object_name 30 | from DBA_THRESHOLDS 31 | order by metrics_name, object_name nulls first 32 | ; 33 | -------------------------------------------------------------------------------- /sql/serveralert/alert_types.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: alert_types.sql 224 2010-11-03 06:15:31Z tbr $ 4 | -- 5 | -- Lists all Types from V$ALERT_TYPES 6 | -- 7 | set lines 120 8 | set pages 1000 9 | column group_name format a20 10 | column scope format a8 11 | column internal_metric_category format a30 12 | column internal_metric_name format a30 13 | 14 | select group_name 15 | , scope 16 | , internal_metric_category 17 | , internal_metric_name 18 | from V$ALERT_TYPES 19 | order by group_name, internal_metric_name 20 | ; 21 | 22 | -------------------------------------------------------------------------------- /sql/serveralert/alertall.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: alertall.sql 232 2010-11-13 18:09:48Z tbr $ 4 | -- 5 | -- List of all old and actual alerts 6 | -- 7 | 8 | set feedback off 9 | set echo off 10 | @@alert_history 11 | PROMPT aktuelle Alerts 12 | @@alerts 13 | -------------------------------------------------------------------------------- /sql/serveralert/alerts.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: alerts.sql 232 2010-11-13 18:09:48Z tbr $ 4 | -- 5 | -- List of actual alerts 6 | -- 7 | set lines 120 8 | set pages 100 9 | set feedback off 10 | 11 | 12 | column alert_level format a12 13 | column reason format a70 14 | column zeit format a17 15 | 16 | select to_char(TIME_SUGGESTED, 'dd.mm.yy HH24:mi:ss') Zeit 17 | , decode(message_level, 5, 'WARNING', 1, 'CRITICAL') alert_level 18 | , reason 19 | from dba_outstanding_alerts; 20 | 21 | set feedback on 22 | -------------------------------------------------------------------------------- /sql/session/cancel_exec.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: cancel_exec.sql 558 2012-11-23 06:23:58Z tbr $ 4 | -- 5 | -- Cancel a running operation in Session 6 | -- 7 | set verify off 8 | 9 | begin 10 | dbms_system.set_ev(&1,&2,10237,1,''); 11 | dbms_lock.sleep(1); 12 | dbms_system.set_ev(&1,&2,10237,0,''); 13 | end; 14 | / 15 | -------------------------------------------------------------------------------- /sql/session/connect_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: connect_info.sql 832 2013-08-12 04:06:01Z tbr $ 4 | -- 5 | -- v$session_connect_info for all sessions 6 | -- 7 | set linesize 200 8 | set heading on 9 | set pagesize 1000 10 | column sid format 99999 11 | column osuser format a15 12 | column NETWORK_SERVICE_BANNER format a95 13 | 14 | SELECT SID, OSUSER,NETWORK_SERVICE_BANNER 15 | FROM V$SESSION_CONNECT_INFO 16 | WHERE (LOWER(NETWORK_SERVICE_BANNER) LIKE '%authentication service%' 17 | OR LOWER(NETWORK_SERVICE_BANNER) LIKE '%encryption service%' 18 | OR LOWER(NETWORK_SERVICE_BANNER) LIKE '%crypto_checksumming%') 19 | ORDER by 1; 20 | -------------------------------------------------------------------------------- /sql/session/cs.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: cs.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- alter session set current_schema 6 | -- 7 | -- Parameter 1. Username 8 | 9 | alter session set current_schema=&1; 10 | 11 | -------------------------------------------------------------------------------- /sql/session/gkill_session.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.com) 3 | -- 4 | -- kills a given session on instance 5 | -- 6 | -- Date: 15.07.2016 7 | -- Version: 1 8 | -- 9 | -- Parameter 1. SessionID 10 | -- Parameter 2. SerialNr 11 | -- 12 | alter system kill session '&1,&2,@&3'; 13 | -------------------------------------------------------------------------------- /sql/session/hash2sqlid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: hash2sqlid.sql 459 2012-09-02 18:13:26Z tbr $ 4 | -- 5 | -- get sqlid for OLD_HASH_VALUE from sqlarea 6 | -- 7 | -- Parameter 1: OLD_HASH_VALUE 8 | -- 9 | set lines 120 10 | set pages 100 11 | set verify off 12 | 13 | column OLD_HASH_VALUE format 99999999999 14 | column sql_id format a13 15 | column vc format 9999 16 | 17 | select gs.OLD_HASH_VALUE 18 | ,gs.SQL_ID 19 | ,gs.version_count vc 20 | from gv$sqlarea gs 21 | where gs.old_hash_value = '&1' 22 | ; 23 | 24 | -------------------------------------------------------------------------------- /sql/session/kill_session.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: kill_session.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- kills a given session 6 | -- 7 | -- Parameter 1. SessionID 8 | -- Parameter 2. SerialNr 9 | -- 10 | alter system kill session '&1,&2'; 11 | 12 | -------------------------------------------------------------------------------- /sql/session/lock_internal.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: lock_internal.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Information from dba_lock_internal 6 | -- 7 | 8 | set lines 140 pages 1000 9 | column lock_type format a30 10 | column MODE_HELD format a15 11 | column MODE_REQUESTED format a15 12 | column LOCK_ID1 format a90 13 | column LOCK_ID2 format a40 14 | column SID format 99999 15 | 16 | select SESSION_ID SID 17 | ,LOCK_TYPE 18 | ,MODE_HELD 19 | ,MODE_REQUESTED 20 | ,LOCK_ID1 21 | ,LOCK_ID2 22 | from DBA_LOCK_INTERNAL 23 | where 1=1 24 | and session_id ='&1' 25 | and MODE_REQUESTED not in ('None') 26 | and lock_type not in ('Media Recovery') 27 | and mode_held not in ('Null') 28 | order by 4,1,3 29 | ; 30 | -------------------------------------------------------------------------------- /sql/session/nlsf.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: nlsf.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- set nls_date_format in current session 6 | -- 7 | alter session set nls_date_format='dd.mm.yy hh24:mi:ss'; 8 | 9 | -------------------------------------------------------------------------------- /sql/session/ospid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: ospid.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Display Information for a given SID from v$session 6 | -- 7 | -- Parameter 1: SID 8 | -- 9 | 10 | set lines 120 11 | set pages 100 12 | 13 | column pid format 99999 14 | column spid format 999999 15 | column username format a30 16 | column machine format a30 17 | column osuser format a20 18 | 19 | select vp.pid 20 | ,vp.spid 21 | ,vp.username osuser 22 | ,vs.machine 23 | ,vs.username 24 | from v$process vp 25 | join v$session vs on vs.PADDR = vp.addr 26 | where vs.sid= &1 27 | ; 28 | 29 | -------------------------------------------------------------------------------- /sql/session/pid2sid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pid2sid.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- get session information for process id 6 | -- 7 | -- Parameter 1: Oracle SessionID 8 | -- 9 | set lines 120 10 | set pages 100 11 | 12 | column sid format 9999 13 | column serial# format 99999 14 | column pid format 99999 15 | column spid format 99999 16 | column osuser format a20 17 | column machine format a30 18 | column username format a30 19 | 20 | select vs.sid 21 | ,vs.serial# 22 | ,vp.pid 23 | ,vp.spid 24 | ,vp.username osuser 25 | ,vs.machine 26 | ,vs.username 27 | from v$process vp 28 | join v$session vs on vs.PADDR = vp.addr 29 | where vp.spid= &1 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/session/resumable.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: resumable.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Display Resumable Sessions 6 | -- 7 | 8 | set lines 120 9 | set pages 200 10 | 11 | column session_id format 999999 12 | column status format a9 13 | column timeout format 99999 14 | column suspend_time format a15 15 | column error_msg format a40 16 | 17 | select a.SESSION_ID 18 | , a.status 19 | , a.TIMEOUT 20 | , a.SUSPEND_TIME 21 | , a.ERROR_MSG 22 | from dba_resumable a 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/session/sessioni.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sessioni.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- some other Session Information for given SID 6 | -- 7 | -- Parameter 1: SessionID 8 | -- 9 | 10 | set lines 140 11 | set verify off 12 | 13 | column sid format 99999 14 | column serial# format 99999 15 | column username format a20 16 | column status format a8 17 | column server format a9 18 | column osuser format a10 19 | column PROCESS format 999999 20 | column program format a20 21 | column client_info format a20 22 | 23 | select sid, serial#, username, status, server, osuser, process 24 | ,to_char(logon_time, 'dd.mm.yy hh24:mi:ss') logon 25 | ,program 26 | ,client_info 27 | from v$session 28 | where sid=&1 29 | ; 30 | 31 | 32 | -------------------------------------------------------------------------------- /sql/session/slo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: slo.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Session Long Operations 6 | -- 7 | set pages 1000 8 | set lines 110 9 | column rt format 999999 10 | column message format a90 11 | 12 | select * 13 | from( 14 | select sid, time_remaining rt, message 15 | from v$session_longops 16 | where time_remaining > 0 17 | order by last_update_time desc 18 | ) 19 | where rownum < 20 20 | order by sid 21 | 22 | / 23 | -------------------------------------------------------------------------------- /sql/session/spid4killed.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: spid4killed.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- get process id for killes Oracle Sessions 6 | -- 7 | -- Doc ID: 387077.1 8 | -- Subject: How to find the process identifier (pid, spid) after the corresponding session is killed? 9 | -- 10 | set lines 80 pages 100 11 | 12 | column program format a40 13 | column spid format 99999 14 | 15 | select spid 16 | , program 17 | from v$process 18 | where program!= 'PSEUDO' 19 | and addr not in (select paddr from v$session) 20 | and addr not in (select paddr from v$bgprocess); 21 | 22 | 23 | -------------------------------------------------------------------------------- /sql/session/sql10.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sql10.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Session Information for SID with running SQL-Statement 6 | -- usable from 9i onwards 7 | -- 8 | set verify off 9 | column sql_text format a80 10 | select a.sid 11 | ,a.username 12 | ,a.lockwait 13 | ,a.logon_time 14 | ,a.machine 15 | ,a.osuser 16 | ,a.SQL_ID 17 | ,a.SQL_CHILD_NUMBER 18 | from v$session a 19 | where a.status = 'ACTIVE' 20 | and a.sid = &&1 21 | ; 22 | 23 | select 24 | b.sql_text 25 | from v$session a 26 | join V$SQLTEXT_WITH_NEWLINES b on a.SQL_ADDRESS = b.address 27 | and a.sql_id = b.sql_id 28 | where a.status = 'ACTIVE' 29 | and a.sid = &&1 30 | order by piece 31 | ; 32 | 33 | -------------------------------------------------------------------------------- /sql/session/sql8i.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sql8i.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Session Information for SID with running SQL-Statement 6 | -- usable from 8i onwards 7 | -- 8 | -- Parameter 1: Oracle SessionID 9 | -- 10 | select 11 | s.sid 12 | , s.username 13 | , s.lockwait 14 | , s.logon_time 15 | , sq.executions 16 | , s.machine 17 | , s.osuser 18 | , sq.sql_text 19 | from 20 | v$session s, v$open_cursor c, v$sql sq 21 | where 22 | s.sid = c.sid (+)and 23 | s.username = c.user_name (+) and 24 | c.address (+) = s.sql_address and 25 | c.saddr (+) = s.saddr and 26 | c.address = sq.address 27 | and s.sid = &&1 28 | ; 29 | 30 | -------------------------------------------------------------------------------- /sql/session/sql9.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sql9.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Session Information for SID with running SQL-Statement 6 | -- usable from 9i onwards 7 | -- 8 | -- Parameter 1: Oracle SessionID 9 | 10 | select a.sid 11 | ,a.username 12 | ,a.lockwait 13 | ,a.logon_time 14 | ,a.machine 15 | ,a.osuser 16 | from v$session a 17 | where a.status = 'ACTIVE' 18 | and a.sid = &&1 19 | ; 20 | select distinct HASH_VALUE 21 | from v$session a 22 | join V$SQLTEXT_WITH_NEWLINES b on a.SQL_ADDRESS = b.address 23 | where a.status = 'ACTIVE' 24 | and a.sid = &&1 25 | ; 26 | 27 | column sql_text format a70 28 | select /*+ RULE*/ sql_text 29 | from v$session a 30 | join V$SQLTEXT_WITH_NEWLINES b on a.SQL_ADDRESS = b.address 31 | where a.status = 'ACTIVE' 32 | and a.sid = &&1 33 | order by piece 34 | ; 35 | -------------------------------------------------------------------------------- /sql/session/sqlbind.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sqlbind.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Display Bind-Information for given sql_id 6 | -- 7 | -- Parameter 1: sql_id 8 | -- 9 | set lines 120 10 | set pages 1000 11 | 12 | column child_number format 999 13 | column p format 99 14 | column name format a5 15 | column datatype_string format a10 16 | column value_string format a30 17 | column last_captured format a10 18 | 19 | select child_number cn 20 | ,position p 21 | ,name 22 | ,datatype_string typ 23 | ,value_string 24 | ,to_char(last_captured,'HH24:MI:SS') LAST 25 | from v$sql_bind_capture 26 | where sql_id = '&1' 27 | order by child_number, position 28 | ; 29 | 30 | -------------------------------------------------------------------------------- /sql/session/sqlid2hash.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 17.07.2015 5 | -- 6 | -- get OLD_HASH_VALUE for sqlid from sqlarea 7 | -- 8 | -- Parameter 1: SQLID 9 | -- 10 | set lines 120 11 | set pages 100 12 | set verify off 13 | 14 | column OLD_HASH_VALUE format 99999999999 15 | column sql_id format a13 16 | column vc format 9999 17 | 18 | select gs.OLD_HASH_VALUE 19 | ,gs.SQL_ID 20 | ,gs.version_count vc 21 | from gv$sqlarea gs 22 | where gs.sqlid = '&1' 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/session/swall.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: swall.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- Dispay all sessions from v$session 6 | -- 7 | set linesize 200 8 | set heading on 9 | set pagesize 1000 10 | 11 | column status tru format a5 12 | column state format a10 13 | column event format a20 14 | column sid format 99999 15 | column sw format 99999 16 | column osuser format a15 17 | column username format a10 18 | column machine format a15 19 | 20 | select vs.status status 21 | , vs.sid sid 22 | , vs.serial# serial 23 | , vs.machine 24 | , vs.osuser 25 | , vs.username 26 | , sw.seconds_in_wait sw 27 | , sw.event 28 | , sw.state 29 | from v$session_wait sw, v$session vs 30 | where 1=1 31 | and vs.sid=sw.sid 32 | order by 1 desc 33 | ; 34 | -------------------------------------------------------------------------------- /sql/session/swpqwait.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 17.07.2015 5 | -- 6 | -- Display waiting PQ sessions in Queue 7 | -- 8 | set linesize 200 9 | set heading on 10 | set pagesize 1000 11 | column status tru format a5 12 | column state format a10 13 | column event format a20 14 | column sid format 99999 15 | column sw format 99999 16 | column osuser format a15 17 | column username format a10 18 | column machine format a15 19 | 20 | select vs.status status 21 | , vs.sid sid 22 | , vs.serial# serial 23 | , vs.machine 24 | , vs.osuser 25 | , vs.username 26 | , vs.CURRENT_QUEUE_DURATION sw 27 | , sw.event, 28 | sw.state 29 | from v$session_wait sw, v$session vs 30 | where type != 'BACKGROUND' 31 | and vs.pq_status='ENABLED' and vs.CURRENT_QUEUE_DURATION > 0 32 | and vs.sid=sw.sid 33 | order by vs.CURRENT_QUEUE_DURATION , status desc 34 | ; 35 | -------------------------------------------------------------------------------- /sql/session/swtop.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: swtop.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- display all Sessions from v$session ordered by seconds in wait 6 | -- 7 | set linesize 200 8 | set heading on 9 | set pagesize 1000 10 | column status tru format a5 11 | column state format a10 12 | column event format a20 13 | column sid format 99999 14 | column sw format 99999 15 | column osuser format a15 16 | column username format a10 17 | column machine format a15 18 | 19 | select vs.status status 20 | , vs.sid sid 21 | , vs.serial# serial 22 | , vs.machine 23 | , vs.osuser 24 | , vs.username 25 | , sw.seconds_in_wait sw 26 | , sw.event, 27 | sw.state 28 | from v$session_wait sw, v$session vs 29 | where type != 'BACKGROUND' 30 | and vs.sid=sw.sid 31 | order by sw.seconds_in_wait desc, status desc 32 | ; 33 | -------------------------------------------------------------------------------- /sql/session/swtop20.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: swtop20.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- display last 20 Sessions from v$session ordered by seconds in wait 6 | -- 7 | set linesize 200 8 | set heading on 9 | set pagesize 1000 10 | 11 | column status tru format a5 12 | column state format a10 13 | column event format a20 14 | column sid format 99999 15 | column sw format 99999 16 | column osuser format a15 17 | column username format a10 18 | column machine format a15 19 | 20 | select * 21 | from 22 | ( 23 | select vs.status status 24 | , vs.sid sid 25 | , vs.serial# serial 26 | , vs.machine 27 | , vs.osuser 28 | , vs.username 29 | , sw.seconds_in_wait sw 30 | , sw.event, 31 | sw.state 32 | from v$session_wait sw, v$session vs 33 | where type != 'BACKGROUND' 34 | and vs.sid=sw.sid 35 | order by sw.seconds_in_wait 36 | ) 37 | where rownum < 21 38 | order by sw desc, status desc 39 | ; 40 | -------------------------------------------------------------------------------- /sql/session/swuser.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 20.03.2015 5 | -- 6 | -- Sessions for a connected user from v$session 7 | -- 8 | -- Parameter 1: DB_USERNAME 9 | 10 | set linesize 200 11 | set heading on 12 | set pagesize 1000 13 | column status tru format a5 14 | column state format a10 15 | column event format a20 16 | column sid format 99999 17 | column sw format 99999 18 | column osuser format a15 19 | column username format a10 20 | column machine format a15 21 | 22 | select vs.status status 23 | , vs.sid sid 24 | , vs.serial# serial 25 | , vs.machine 26 | , vs.osuser 27 | , vs.username 28 | , sw.seconds_in_wait sw 29 | , sw.event, 30 | sw.state 31 | from v$session_wait sw, v$session vs 32 | where type != 'BACKGROUND' 33 | and vs.sid=sw.sid 34 | and username like '&1' 35 | order by sw.seconds_in_wait desc, status desc 36 | ; 37 | -------------------------------------------------------------------------------- /sql/session/transaction.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: transaction.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- active transactions 6 | -- 7 | set lines 120 8 | 9 | column username format a20 10 | column sid format 9999 11 | column sql_text format a50 12 | column status format a8 13 | column log_mb format 999999 14 | column start_time format a9 15 | 16 | SELECT --t.ADDR, 17 | t.status, 18 | s.sid, 19 | t.start_time, 20 | t.used_ublk, 21 | t.used_urec, 22 | trunc(t.log_io / 1024 / 1024) AS log_mb, 23 | t.phy_io 24 | FROM v$transaction t, 25 | v$session s 26 | WHERE s.taddr(+) = t.addr 27 | 28 | / 29 | 30 | -------------------------------------------------------------------------------- /sql/session/transaction10.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: transaction10.sql 233 2010-11-13 20:42:23Z tbr $ 4 | -- 5 | -- active transactions with running sqlstatement 6 | -- usable from Oracle 10g onwards 7 | -- 8 | set lines 120 9 | 10 | column username format a20 11 | column sid format 9999 12 | column sql_text format a50 13 | column status format a8 14 | column log_mb format 999999 15 | column start_time format a9 16 | 17 | SELECT distinct --t.ADDR, 18 | t.status, 19 | s.sid, 20 | t.start_time, 21 | t.used_ublk, 22 | t.used_urec, 23 | trunc(t.log_io / 1024 / 1024) AS log_mb, 24 | t.phy_io, 25 | q.sql_text 26 | FROM v$transaction t, 27 | v$session s, 28 | v$sql q 29 | WHERE s.taddr(+) = t.addr 30 | AND s.sql_id = q.sql_id(+) 31 | 32 | / 33 | 34 | -------------------------------------------------------------------------------- /sql/session/waiters.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- info from dba_waiters with parameter 5 | -- 6 | -- Parameter 1: for session or -1 for list of all entries from dba_waiters 7 | -- 8 | -- Date: 07.03.2016 9 | -- Version 1 10 | 11 | 12 | set lines 145 13 | set pages 30 14 | 15 | column WAITS format 99999 16 | column HOLDS format 99999 17 | column LOCK_ID1 format 9999999999 18 | column LOCK_ID2 format 9999999999 19 | column MODE_REQUESTED format a30 20 | column MODE_HELD format a20 21 | column LOCK_TYPE format a13 22 | 23 | select WAITING_SESSION WAITS 24 | ,HOLDING_SESSION HOLDS 25 | ,LOCK_TYPE 26 | ,MODE_HELD 27 | ,MODE_REQUESTED 28 | ,LOCK_ID1 29 | ,LOCK_ID2 30 | from dba_waiters 31 | where (&1 = -1) or (&1 = WAITING_SESSION) 32 | order by mode_held, HOLDING_SESSION 33 | ; 34 | -------------------------------------------------------------------------------- /sql/sga/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | librarycache.sql Display statistics from v$librarycache 2 | gather_session_cached_cursors.sql statistics for session cached cursors 3 | no_bind.sql get SQLs without bind-variables 4 | pin_stat.sql statistical information for pinned objects 5 | pinned_objects.sql Display pinned objects from shared_pool 6 | reserved_info.sql overall statistics from shared_pool 7 | resize_ops.sql all operations form v$sga_resize_ops 8 | resize_ops_errors.sql resize operations form v$sga_resize_ops with errors 9 | rowcache.sql rowcache information from shared_pool 10 | sga_dyn_components.sql memory sizing for buffers in SGA 11 | sga_free.sql freeable memory in SGA 12 | sga_heap.sql detail sga_heap from SGA 13 | subpool_cnt.sql get number of subpools from shared_pool -------------------------------------------------------------------------------- /sql/sga/librarycache.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: librarycache.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Display statistics from v$librarycache 6 | -- 7 | -- http://download.oracle.com/oowsf2005/003wp.pdf 8 | -- 9 | select namespace 10 | ,pins 11 | ,pins-pinhits 12 | ,reloads 13 | ,invalidations 14 | ,100*(reloads-invalidations)/(pins-pinhits) "%Reloads" 15 | from v$librarycache 16 | where pins > 0 17 | order by namespace; 18 | -------------------------------------------------------------------------------- /sql/sga/pin_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pin_stat.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- statistical information for pinned objects 6 | -- 7 | --column owner format a30 8 | column used format a7 9 | column cnt format 99999 10 | column sizekB format 99999 11 | set pages 200 12 | set lines 120 13 | set trimspool on 14 | 15 | select owner 16 | , case executions when 0 then 'notused' else 'used' end used 17 | , sum(SHARABLE_MEM)/1024 sizekB 18 | , count(1) 19 | from V$DB_OBJECT_CACHE a 20 | where kept = 'YES' 21 | group by grouping sets((owner, case executions when 0 then 'notused' else 'used' end),(case executions when 0 then 'notused' else 'used' end),()) 22 | order by owner, 2 23 | ; 24 | 25 | -------------------------------------------------------------------------------- /sql/sga/pinned_objects.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: pinned_objects.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Display pinned objects from shared_pool 6 | -- 7 | column owner format a30 8 | column name format a50 9 | column type format a30 10 | 11 | set pages 200 12 | set lines 120 13 | 14 | select owner 15 | , name 16 | , type 17 | from V$DB_OBJECT_CACHE 18 | where kept = 'YES' 19 | order by owner, type, name 20 | ; 21 | -------------------------------------------------------------------------------- /sql/sga/resize_ops.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: resize_ops.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- all operations form v$sga_resize_ops 6 | -- 7 | set lines 120 8 | set pages 200 9 | 10 | column parameter format a18 11 | column oper format a7 12 | 13 | select oper_type oper 14 | ,parameter 15 | ,initial_size/1024 isize 16 | ,target_size/1024 tsize 17 | ,final_size/1024 fsize 18 | ,status 19 | ,to_char(start_time,'dd.mm HH24:MI:SS') begtime 20 | ,to_char(end_time,'dd.mm HH24:MI:SS') endtime 21 | from( 22 | select * 23 | from V$SGA_RESIZE_OPS 24 | order by start_time desc 25 | ) 26 | where rownum<100 27 | order by start_time 28 | ; 29 | 30 | 31 | -------------------------------------------------------------------------------- /sql/sga/resize_ops_errors.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: resize_ops_errors.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- resize operations form v$sga_resize_ops with errors 6 | -- 7 | 8 | set lines 120 9 | set pages 200 10 | 11 | column parameter format a18 12 | column oper format a7 13 | 14 | select oper_type oper 15 | ,parameter 16 | ,initial_size/1024 isize 17 | ,target_size/1024 tsize 18 | ,final_size/1024 fsize 19 | ,status 20 | ,to_char(start_time,'dd.mm HH24:MI:SS') begtime 21 | ,to_char(end_time,'dd.mm HH24:MI:SS') endtime 22 | from( 23 | select * 24 | from V$SGA_RESIZE_OPS 25 | where status ='ERROR' 26 | order by start_time desc 27 | ) 28 | where rownum<100 29 | order by start_time 30 | ; 31 | 32 | 33 | -------------------------------------------------------------------------------- /sql/sga/rowcache.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: rowcache.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- rowcache information from shared_pool 6 | -- 7 | -- 8 | 9 | set lines 120 10 | set pages 100 11 | 12 | column parameter format a30 13 | column gets format 9999999 14 | column getmisses format 9999999 15 | column num format 9999999 16 | column usage format 99999 17 | 18 | select parameter 19 | ,sum(gets) gets 20 | ,sum(getmisses) getmisses 21 | ,sum("COUNT") num 22 | ,sum(usage) usage 23 | from v$rowcache 24 | where getmisses > 0 25 | group by parameter 26 | order by parameter; 27 | 28 | SELECT parameter 29 | , sum(gets) 30 | , sum(getmisses) 31 | , 100*sum(gets - getmisses) / sum(gets) pct_succ_gets 32 | , sum(modifications) updates 33 | FROM V$ROWCACHE 34 | WHERE gets > 0 35 | GROUP BY parameter; 36 | 37 | -------------------------------------------------------------------------------- /sql/sga/sga_dyn_components.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sga_dyn_components.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- memory sizing for buffers in SGA 6 | -- 7 | -- Metalink Note: 295626.1 Subject: How To Use Automatic Shared Memory Management (ASMM) In Oracle10g 8 | -- 9 | set pages 100 10 | set lines 120 11 | 12 | column component format a30 13 | column current_size_k format 99999999999 14 | column min_size_k format 99999999999 15 | column user_specified_size_k format 99999999999 16 | 17 | select component 18 | , current_size/1024 current_size_k 19 | , min_size/1024 min_size_k 20 | , user_specified_size /1024 user_specified_size_k 21 | from v$sga_dynamic_components; 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /sql/sga/sga_free.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sga_free.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- freeable memory in SGA 6 | -- 7 | prompt R-free Reserved List 8 | prompt R-freea Reserved List 9 | prompt free Free Memory 10 | prompt freeabl Memory for user/system processing 11 | prompt perm Memory allocated to the system 12 | prompt recr Memory for user/system processing 13 | 14 | SELECT KSMCHCLS CLASS 15 | , COUNT(KSMCHCLS) NUM 16 | , SUM(KSMCHSIZ) SIZ 17 | , To_char( ((SUM(KSMCHSIZ)/COUNT(KSMCHCLS)/1024)),'999,999.00')||'k' "AVG SIZE" 18 | FROM X$KSMSP 19 | GROUP BY KSMCHCLS; 20 | 21 | -------------------------------------------------------------------------------- /sql/sga/sga_heap.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: sga_heap.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- detail sga_heap from SGA 6 | -- 7 | set lines 120 8 | set pages 100 9 | 10 | col sga_heap format a15 11 | col size format a10 12 | 13 | select KSMCHIDX "SubPool", 'sga heap('||KSMCHIDX||',0)'sga_heap,ksmchcom ChunkComment, 14 | decode(round(ksmchsiz/1000),0,'0-1K', 1,'1-2K', 2,'2-3K',3,'3-4K', 15 | 4,'4-5K',5,'5-6k',6,'6-7k',7,'7-8k',8, 16 | '8-9k', 9,'9-10k','> 10K') "size", 17 | count(*),ksmchcls Status, sum(ksmchsiz) Bytes 18 | from x$ksmsp 19 | where KSMCHCOM = 'free memory' 20 | group by ksmchidx, ksmchcls, 21 | 'sga heap('||KSMCHIDX||',0)',ksmchcom, ksmchcls,decode(round(ksmchsiz/1000),0,'0-1K', 22 | 1,'1-2K', 2,'2-3K', 3,'3-4K',4,'4-5K',5,'5-6k',6, 23 | '6-7k',7,'7-8k',8,'8-9k', 9,'9-10k','> 10K'); 24 | 25 | -------------------------------------------------------------------------------- /sql/sga/subpool_cnt.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: subpool_cnt.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- get number of subpools from shared_pool 6 | -- 7 | select a.ksppinm "Parameter", 8 | b.ksppstvl "Session Value", 9 | c.ksppstvl "Instance Value" 10 | from sys.x$ksppi a, sys.x$ksppcv b, sys.x$ksppsv c 11 | where a.indx = b.indx and a.indx = c.indx 12 | and a.ksppinm like '%kghdsidx%'; 13 | 14 | -------------------------------------------------------------------------------- /sql/shared/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | dispatcher.sql Information for shared server Dispatchers 2 | shared.sql Infos for shared server processes -------------------------------------------------------------------------------- /sql/shared/dispatcher.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dispatcher.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Information for shared server Dispatchers 6 | -- 7 | SELECT NAME "NAME", SUBSTR(NETWORK,1,23) "PROTOCOL", OWNED, 8 | STATUS "STATUS", (BUSY/(BUSY + IDLE)) * 100 "%TIME BUSY" 9 | FROM V$DISPATCHER; 10 | 11 | SELECT D.NAME, Q.QUEUED, Q.WAIT, Q.TOTALQ, 12 | DECODE(Q.TOTALQ,0,0,(Q.WAIT/Q.TOTALQ)/100) "AVG WAIT" 13 | FROM V$QUEUE Q, V$DISPATCHER D 14 | WHERE D.PADDR = Q.PADDR; 15 | 16 | SELECT Q.TYPE, Q.QUEUED, Q.WAIT, Q.TOTALQ, 17 | DECODE(Q.TOTALQ,0,0,(Q.WAIT/Q.TOTALQ)/100) "AVG WAIT" 18 | FROM V$QUEUE Q 19 | WHERE TYPE = 'COMMON'; 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /sql/shared/server.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: server.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Infos for shared server processes 6 | -- 7 | 8 | SELECT DECODE(TOTALQ, 0, 'No Requests', 9 | WAIT/TOTALQ || ' HUNDREDTHS OF SECONDS') "AVERAGE WAIT TIME PER REQUESTS" 10 | FROM V$QUEUE 11 | WHERE TYPE = 'COMMON'; 12 | 13 | SELECT MAXIMUM_CONNECTIONS "MAX CONN", MAXIMUM_SESSIONS "MAX SESS", 14 | SERVERS_STARTED "STARTED", SERVERS_TERMINATED "TERMINATED", 15 | SERVERS_HIGHWATER "HIGHWATER" 16 | FROM V$SHARED_SERVER_MONITOR; 17 | 18 | SELECT NAME "NAME", PADDR, REQUESTS, 19 | (BUSY/(BUSY + IDLE)) * 100 "%TIME BUSY", STATUS 20 | FROM V$SHARED_SERVER; 21 | 22 | 23 | -------------------------------------------------------------------------------- /sql/sqzk.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | # Date: 13.03.2017 5 | # 6 | # This script is a wrapper for sq.sh. 7 | # It starts sq.sh with SQLPATH to ./sql of Zauberkasten 8 | # Thanks to Bartlomiej.Sowa@opitz-consulting.com for this great idea. 9 | # 10 | # Known issues: 11 | # SQLPLUS is not working under Oracle XE 11.2.0.2 12 | 13 | SQSHPATH=$(dirname $0) 14 | SQLPATH=$(dirname `readlink -f $0`); export SQLPATH 15 | ${SQSHPATH}/sq.sh "$*" 16 | 17 | -------------------------------------------------------------------------------- /sql/stat/aux_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: aux_stat.sql 30 2010-01-12 20:58:11Z oracle $ 4 | -- 5 | -- display system statistics 6 | -- 7 | set lines 100 8 | set pages 100 9 | 10 | column sname format a20 11 | column pname format a20 12 | column pval1 format 999,999,999.999 13 | column pval2 format a20 14 | 15 | select sname 16 | ,pname 17 | ,pval1 18 | ,pval2 19 | from sys.aux_stats$ 20 | ; 21 | 22 | 23 | 24 | 25 | / 26 | 27 | -------------------------------------------------------------------------------- /sql/stat/export_schema_stats.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: fill_stat_tab.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- export schema statistics, create destination table before 6 | -- 7 | -- Parameter 1. Owner for Statistics and Table 8 | -- Parameter 2: Tablename 9 | 10 | rem Note:117203.1 Subject: How to Use DBMS_STATS to Move Statistics to a Different Database 11 | 12 | exec dbms_stats.create_stat_table('&1','&2'); 13 | exec dbms_stats.EXPORT_SCHEMA_STATS('&1', '&2') 14 | -------------------------------------------------------------------------------- /sql/stat/fixed_object_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Date 03.02.2017 4 | -- 5 | -- Number of object with/without statistics and trnc(last_analyzed) 6 | -- 7 | 8 | set lines 120 pages 100 9 | 10 | column owner format a20 11 | column last_analyzed format a15 12 | column cnt format 99999 13 | 14 | select owner 15 | ,to_char(trunc(LAST_ANALYZED),'dd.mm.yy') last_analyzed 16 | ,count(1) cnt 17 | from dba_tab_statistics 18 | where OBJECT_TYPE = 'FIXED TABLE' 19 | group by owner,trunc(LAST_ANALYZED) 20 | order by 1,2; 21 | 22 | -------------------------------------------------------------------------------- /sql/stat/import_schema_stats.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: imp_stat_schema.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Import schema Statistics from table 6 | -- 7 | -- Parameter 1: Owner of statistic table 8 | -- Parameter 2: Table-Name of statistic table 9 | 10 | rem Note:117203.1 Subject: How to Use DBMS_STATS to Move Statistics to a Different Database 11 | 12 | exec dbms_stats.import_schema_stats('&1', '&2') 13 | -------------------------------------------------------------------------------- /sql/stat/import_table_stats.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: imp_stat_table.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Import Tablestattistics 6 | -- 7 | rem Note:117203.1 Subject: How to Use DBMS_STATS to Move Statistics to a Different Database 8 | prompt 1. Stattabowner 9 | prompt 2. Stattable 10 | prompt 3. Destination owner 11 | prompt 4. destination table 12 | begin 13 | dbms_stats.import_table_stats(statown => '&1' 14 | ,stattab => '&2' 15 | ,ownname => '&3' 16 | ,tabname => '&4' 17 | ,cascade => true 18 | ,no_invalidate => false 19 | ,force => true 20 | ); 21 | end; 22 | / 23 | 24 | 25 | -------------------------------------------------------------------------------- /sql/stat/lock_schema_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: lock_schema_stat.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Lock Statistics for a schema 6 | -- 7 | -- Parameter 1: Schemaname 8 | begin 9 | dbms_stats.lock_schema_stats('&1'); 10 | end; 11 | / 12 | 13 | -------------------------------------------------------------------------------- /sql/stat/modify_stats_jobs_example_10.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: modify_gather_stats_jobs.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Examle for modifying the default statistic job 6 | -- 10g related! 7 | -- 8 | BEGIN 9 | DBMS_SCHEDULER.DISABLE( 10 | Name=>'"SYS"."WEEKNIGHT_WINDOW"', 11 | force=>TRUE); 12 | END; 13 | / 14 | 15 | BEGIN 16 | DBMS_SCHEDULER.SET_ATTRIBUTE( 17 | name=>'"SYS"."WEEKNIGHT_WINDOW"', 18 | attribute=>'REPEAT_INTERVAL', 19 | value=>'freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=&startstunde;byminute=&startminute; bysecond=0' 20 | ); 21 | END; 22 | / 23 | 24 | BEGIN 25 | DBMS_SCHEDULER.ENABLE( 26 | name=>'"SYS"."WEEKNIGHT_WINDOW"'); 27 | END; 28 | / 29 | -------------------------------------------------------------------------------- /sql/stat/restore_tab_stat.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: restore_stat.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- create list of restore_table_stats for given parameters 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- 10 | set lines 240 11 | set pages 100 12 | set trimspool on 13 | set heading off 14 | set feedback off 15 | 16 | select 'exec dbms_stats.restore_table_stats(' 17 | ||''''||OWNER||'''' 18 | ||','''||table_name||'''' 19 | ||',as_of_timestamp=>to_date('''||to_char(STATS_UPDATE_TIME,'dd.mm.yy hh24:mi:ss')||'''' 20 | ||',''dd.mm.yy hh24:mi:ss'')' 21 | ||',force=>true,no_invalidate=>false);' 22 | from DBA_TAB_STATS_HISTORY 23 | where OWNER like ('&1') 24 | and TABLE_NAME like ('&2') 25 | ; 26 | 27 | set heading on 28 | set feedback on 29 | -------------------------------------------------------------------------------- /sql/stat/stat_flush.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: stat_flush.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Flush statistic monitoring information 6 | -- 7 | prompt DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO; 8 | begin 9 | DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO; 10 | end; 11 | / 12 | 13 | -------------------------------------------------------------------------------- /sql/stat/stat_operation.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: stat_operation.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- display optstat operations from dba_optstat_operations 6 | -- 7 | set pages 1000 8 | set lines 120 9 | column OPERATION format a40 10 | 11 | select operation, to_char(start_time, 'dd.mm.yy hh24:mi') startt, to_char(end_time, 'dd.mm.yy hh24:mi') endt 12 | from (select operation, start_time, end_time 13 | from DBA_OPTSTAT_OPERATIONS 14 | order by start_time desc 15 | ) 16 | where rownum < 20 17 | order by start_time 18 | ; 19 | 20 | -------------------------------------------------------------------------------- /sql/stat/tab_histograms2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tab_histograms2.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Display Histograms of a table column 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- Parameter 3: Column-Name 10 | -- 11 | set lines 140 12 | set pages 100 13 | 14 | column owner format a20 15 | column table_name format a30 16 | column column_name format a30 17 | column endpoint_actual_value format a20 18 | 19 | select owner 20 | ,table_name 21 | ,column_name 22 | ,endpoint_number en 23 | ,endpoint_value 24 | ,endpoint_actual_value 25 | from DBA_TAB_HISTOGRAMS 26 | where owner like '&1' 27 | and table_name like '&2' 28 | order by 1,2,3,4 29 | ; 30 | 31 | -------------------------------------------------------------------------------- /sql/stat/tab_history2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 2 5 | -- 6 | -- historical statistic information from wri$_optstat_tab_history 7 | -- savetime => Timestamp of inserting the data in data-Dictionary! 8 | -- 9 | -- Parameter 1. Owner 10 | -- Parameter 2: Tablename 11 | -- 12 | set lines 130 13 | set pages 100 14 | set echo off 15 | set trimspool on 16 | 17 | column owner format a20 18 | column table_name format a30 19 | column partition_name format a15 20 | 21 | select do.OWNER 22 | ,do.object_name TABLE_NAME 23 | ,do.SUBOBJECT_NAME PARTITION_NAME 24 | ,wot.ROWCNT 25 | ,wot.BLKCNT 26 | ,wot.AVGRLN 27 | ,wot.SAMPLESIZE sample 28 | ,to_char(wot.SAVTIME, 'dd.MM HH24:MI') Savetime 29 | from SYS.WRI$_OPTSTAT_TAB_HISTORY wot 30 | join dba_objects do on do.object_id = wot.obj# 31 | where do.OWNER like ('&1') 32 | and do.OBJECT_NAME like ('&2') 33 | order by wot.SAVTIME 34 | ; 35 | -------------------------------------------------------------------------------- /sql/stat/tab_pending.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Version: 1 5 | -- Date: 2019.10.29 6 | -- 7 | -- Show pending statistics from tables 8 | -- 9 | -- Parameter 1: Owner 10 | -- Parameter 2: Table-Name 11 | -- 12 | set lines 200 13 | set pages 200 14 | set verify off 15 | 16 | column table_name format a30 17 | column f_blk format 999999 18 | column owner format a20 19 | column blocks format 99999999 20 | column rowl format 999999 21 | column num_rows format 999999999 22 | column pfr format 99 23 | column analyzed format a14 24 | 25 | select a.owner 26 | , a.table_name 27 | , a.blocks 28 | , round(a.num_rows) num_rows 29 | , a.AVG_ROW_LEN rowl 30 | , to_char(a.last_analyzed, 'dd.MM.YY HH24:MI') analyzed 31 | from DBA_TAB_PENDING_STATS a 32 | where owner like ('%&1') 33 | and table_name like ('&2') 34 | ; 35 | -------------------------------------------------------------------------------- /sql/statspack/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | perfstat_sqlplan.sql Display plan from statspack data 2 | spinstance.sql Instance Inforamtion from stats$database_instance 3 | spreport_dbid.sql Creates a spreport for given parameter 4 | sprepsql_dbid.sql Creates a sprepsql for given parameter 5 | spsnap_dbid.sql List snapshots from stats$snapshot for DBID 6 | -------------------------------------------------------------------------------- /sql/statspack/spcreate/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | statspack_configuration.sql configurationfile for statspack_create.sql 2 | statspack_create.sql creates the statspack-Objects in the database 3 | statspack_job.sql script for generating the needed statspack jobs - RAC aware! 4 | -------------------------------------------------------------------------------- /sql/statspack/spinstance.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: spinstance.sql 55 2010-03-13 09:18:15Z tbr $ 4 | -- 5 | -- database-instance information from statspack 6 | -- 7 | 8 | set lines 120 pages 100 echo off 9 | 10 | column dbid format 99999999999 11 | column iid format 99 12 | column start_time format a17 13 | column DB_NAME format a10 14 | column L_SNAP format 999999 15 | column rac format a3 16 | column version format a15 17 | column instance_name format a13 18 | column host_name format a30 19 | 20 | select dbid 21 | ,DB_NAME 22 | ,INSTANCE_NAME 23 | ,INSTANCE_NUMBER iid 24 | ,to_char(STARTUP_TIME,'dd.mm.yy hh24:mi:ss') start_time 25 | ,SNAP_ID L_SNAP 26 | ,PARALLEL rac 27 | ,VERSION 28 | ,HOST_NAME 29 | from stats$database_instance 30 | order by dbid,db_name,STARTUP_TIME,instance_name; 31 | -------------------------------------------------------------------------------- /sql/statspack/spsnap_dbid.sql: -------------------------------------------------------------------------------- 1 | -- Parameter 1: DB-ID 2 | -- 3 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 4 | -- $Id: spsnap_dbid.sql 57 2010-03-13 10:00:31Z tbr $ 5 | -- 6 | -- Display Snapshots for given dbid 7 | -- 8 | 9 | set lines 120 pages 30 echo off verify off 10 | 11 | column inst_id format 99 12 | column start_time format a17 13 | column snapshot_time format a17 14 | column Start_SNAP_ID format 999999 15 | column sl format 99 16 | column b format a1 17 | 18 | select INSTANCE_NUMBER inst_id 19 | ,SNAP_ID Start_SNAP_ID 20 | ,to_char(SNAP_TIME,'dd.mm.yy hh24:mi:ss') snapshot_time 21 | ,snap_level sl 22 | ,baseline b 23 | ,to_char(STARTUP_TIME,'dd.mm.yy hh24:mi:ss') start_time 24 | from stats$snapshot 25 | where dbid=&1 26 | order by snap_time,instance_number; 27 | -------------------------------------------------------------------------------- /sql/table/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | col_info.sql search for columns in data dictionary 2 | long_non_sys_owner.sql Displays Non-Sys-Owner with %LONG%-Columns 3 | tab_frag.sql display table fragmentation, attention on tables with LOBs! 4 | tab_idx.sql display all indexes on a table 5 | tab_info.sql display table information from data-dictionary 6 | tab_info8i.sql display table information from data-dictionary 7 | tab_modification.sql Information from dba_tab_modifications 8 | tab_parallel.sql display all parallel attributes from tables and indexes 9 | tab_shrink.sql generates statements for shrinking tables 10 | tab_stat.sql Display lot of detail information for one table -------------------------------------------------------------------------------- /sql/table/col_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: col_info.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- search for columns in data dictionary 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- Parameter 3: Column-Name 10 | -- 11 | 12 | column owner format a30 13 | column table_name format a30 14 | column column_name format a30 15 | set lines 120 16 | set pages 200 17 | 18 | select owner 19 | ,table_name 20 | ,column_name 21 | from dba_tab_columns 22 | where owner like '&1' 23 | and column_name like '&2' 24 | order by owner, table_name, column_name 25 | ; 26 | 27 | -------------------------------------------------------------------------------- /sql/table/long_non_sys_owner.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: long_non_sys_owner.sql 249 2010-11-23 20:20:00Z tbr $ 4 | -- 5 | -- Displays Non-Sys-Owner with %LONG%-Columns 6 | -- 7 | set lines 120 8 | set pages 100 9 | column owner format a30 10 | 11 | select distinct owner 12 | from dba_tab_columns 13 | where data_type like '%LONG%' 14 | and owner not in ('SYS','SYSTEM','OUTLN','EXFSYS','SYSMAN','WMSYS') 15 | order by 1 16 | ; -------------------------------------------------------------------------------- /sql/table/tab_idx.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tab_idx.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- display all indexes on a table 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- 10 | set lines 120 11 | set pages 1000 12 | 13 | column owner format a20 14 | column index_name format a30 15 | column pos format 999 16 | column column_name format a30 17 | 18 | select di.owner 19 | ,di.index_name 20 | ,dic.column_name 21 | ,dic.column_position pos 22 | from dba_indexes di 23 | , DBA_IND_COLUMNS dic 24 | where di.table_owner like(('&1')) 25 | and di.table_name like(( '&2')) 26 | and dic.table_owner = di.table_owner 27 | and dic.table_name = di.table_name 28 | and dic.index_name = di.index_name 29 | order by di.table_owner, di.table_name, di.index_name, dic.column_position 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/table/tab_modification.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tabmodification.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Information from dba_tab_modifications 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- 10 | set pages 100 11 | set lines 140 12 | 13 | column table_owner format a20 14 | column partition_name format a20 15 | column ins format 999999999999 16 | column del format 999999999999 17 | column upd format 999999999999 18 | 19 | select table_owner 20 | ,table_name 21 | ,partition_name 22 | ,inserts ins 23 | ,updates upd 24 | ,deletes del 25 | ,to_char(timestamp, 'DD.MM.YY HH24:MI') zeit 26 | from dba_tab_modifications 27 | where table_owner like '&1' 28 | and table_name like '&2' 29 | order by 1,2 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/table/tab_parallel.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tab_parallel.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- display all parallel attributes from tables and indexes 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Table-Name 9 | -- 10 | set lines 120 11 | set pages 1000 12 | 13 | column table_name format a30 14 | column owner format a20 15 | 16 | select a.owner 17 | , a.table_name 18 | , a.degree 19 | , a.INSTANCES 20 | from dba_tables a 21 | where owner like upper('%&1') 22 | and table_name like upper('&2') 23 | and (nvl(ltrim(rtrim(degree)),'1') not in('0','1') or nvl(ltrim(rtrim(instances)), '0') not in ('0','1') ) 24 | ; 25 | 26 | 27 | -------------------------------------------------------------------------------- /sql/tbs/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | seg_big.sql Information from dba_tab_modifications 2 | seg_info.sql Detailinformation for a given Segment-Name 3 | tbs.sql Tablespace size information 4 | tbs12.sql Tablespace usage with PDB information 5 | tbs8i.sql Tablespace size information 8i compatible 6 | tbsinfo.sql tablespace details (no size information!) 7 | tbsinfo12.sql tablespace details (no size information!) 12c+ 8 | usage_assm.sql Detailinformation for an assm-Segment 9 | -------------------------------------------------------------------------------- /sql/tbs/seg_big.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: seg_big.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Display biggest segments of a tablespace 6 | -- 7 | -- Parameter 1: Tablespacename 8 | -- 9 | 10 | column owner format a15 11 | column tablespace_name format a20 12 | column segment_type format a20 13 | column segment_name format a30 14 | column mb format 999999 15 | column partition_name format a30 16 | 17 | set pages 100 18 | set lines 150 19 | 20 | select owner 21 | ,tablespace_name 22 | ,segment_type 23 | ,segment_name 24 | ,bytes/1024/1024 MB 25 | ,partition_name 26 | from (select * 27 | from dba_segments 28 | where tablespace_name like '&1' 29 | order by bytes desc 30 | ) 31 | where rownum < 30 32 | order by bytes desc 33 | ; 34 | -------------------------------------------------------------------------------- /sql/tbs/seg_info.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: seg_info.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Detailinformation for a given Segment-Name 6 | -- 7 | -- Parameter 1: Segment-Owner 8 | -- Parameter 2: Segment-Name 9 | -- 10 | 11 | set pages 100 12 | set lines 120 13 | 14 | column owner format a20 15 | column segment_name format a30 16 | column segment_type format a10 17 | column tablespace_name format a20 18 | column kbytes format 999,999,999 19 | column blocks format 999,999,999,999 20 | 21 | select owner 22 | ,segment_name || ' ' || partition_name segment_name 23 | ,segment_type 24 | ,tablespace_name 25 | ,bytes/1024 kbytes 26 | ,blocks 27 | from dba_segments 28 | where owner like '&1' 29 | and segment_name like '&2'; 30 | 31 | -------------------------------------------------------------------------------- /sql/tbs/tbsinfo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tbsinfo.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- tablespace details (no size information!) 6 | -- 7 | set lines 130 8 | set pages 1000 9 | 10 | column tablespace_name format a25 11 | column bs format 99999 12 | column status format a8 13 | column contents format a10 14 | column EXTENT_MANAGEMENT format a12 15 | column ALLOCATION_TYPE format a7 16 | column minext_kb format 999999999 17 | column ssm format a8 18 | 19 | 20 | select tablespace_name 21 | ,block_size bs 22 | ,status 23 | ,contents 24 | ,EXTENT_MANAGEMENT 25 | ,ALLOCATION_TYPE 26 | ,MIN_EXTLEN/1024 minext_kb 27 | ,SEGMENT_SPACE_MANAGEMENT ssm 28 | from dba_tablespaces 29 | order by tablespace_name 30 | ; 31 | 32 | -------------------------------------------------------------------------------- /sql/tbs/tbsinfo12.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 25.09.2015 5 | -- 6 | -- tablespace details (no size information! 12c+ 7 | -- 8 | set lines 130 9 | set pages 1000 10 | 11 | column pdb format a16 heading "PDB Name" 12 | column tablespace_name format a25 13 | column bs format 99999 14 | column status format a8 15 | column contents format a10 16 | column EXTENT_MANAGEMENT format a12 17 | column ALLOCATION_TYPE format a7 18 | column minext_kb format 999999999 19 | column ssm format a8 20 | 21 | 22 | select nvl(b.name, 'CDB$ROOT') pdb_name 23 | ,a.tablespace_name 24 | ,a.block_size bs 25 | ,a.status 26 | ,a.contents 27 | ,a.EXTENT_MANAGEMENT 28 | ,a.ALLOCATION_TYPE 29 | ,a.MIN_EXTLEN/1024 minext_kb 30 | ,a.SEGMENT_SPACE_MANAGEMENT ssm 31 | from cdb_tablespaces a 32 | left outer join v$pdbs b on a.con_id = b.con_id 33 | order by 1, tablespace_name 34 | ; 35 | 36 | -------------------------------------------------------------------------------- /sql/temptbs/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | readdtempfile.sql drop and add the given tempfile to a temp-TBS 2 | tempseg_usage.sql display temp segment Usage -------------------------------------------------------------------------------- /sql/temptbs/readdtempfile.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: readdtempfile.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- drop and add the given tempfile to a temp-TBS 6 | -- only useable, when temp-TBS has more then 2 Tempfiles 7 | -- 8 | -- Parameter 1: tempfilename 9 | -- 10 | 11 | alter database tempfile '&1' offline; 12 | alter tablespace temp drop tempfile '&1'; 13 | alter tablespace temp add tempfile '&1' reuse; 14 | 15 | 16 | -------------------------------------------------------------------------------- /sql/temptbs/tempseg_usage.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: tempseg_usage.sql 240 2010-11-14 11:33:29Z tbr $ 4 | -- 5 | -- display temp segment Usage 6 | -- 7 | set lines 120 8 | set pages 100 9 | 10 | column username format a30 11 | column size_MB format 99999 12 | select vu.username 13 | --,vu.user 14 | ,vu.session_num 15 | ,vu.tablespace 16 | ,round((vu.blocks*dt.block_size)/1024/1024) size_Mb 17 | from v$tempseg_usage vu 18 | left outer join dba_tablespaces dt on dt.tablespace_name = vu.tablespace 19 | ; 20 | 21 | -------------------------------------------------------------------------------- /sql/trace/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | login_trigger.sql example for a logon trigger for event 10046 2 | orad_tfn.sql Display tracefile-name for session in oradebug 3 | orad_trace_off.sql disable SQL-Trace in current oradebug session 4 | orad_trace_on.sql Enable SQL-Trace in current oradebug session 5 | setev.sql enable a SQL-Trace for a given session with level 6 | stop_sqltrace.sql disable SQL-Trace for a given Session 7 | stopall_sqltrace.sql disable SQL-Trace for all sessions in a database -------------------------------------------------------------------------------- /sql/trace/optimizer/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | parsetrace_disable.sql Disables Optimizer Trace for the given Session 2 | parsetrace_enable.sql Enables Optimizer Trace for the given Session -------------------------------------------------------------------------------- /sql/trace/optimizer/parsetrace_disable.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id$ 4 | -- 5 | -- Disables Optimizer Trace for the given Session 6 | -- 7 | -- Metalink Note: 225598.1 How to Obtain Tracing of Optimizer Computations (EVENT 10053) 8 | 9 | PROMPT Parameter 1: SID 10 | PROMPT Parameter 2: Serial-Nr 11 | 12 | begin 13 | dbms_system.set_ev(&1,&2,10053,0,''); 14 | end; 15 | / 16 | 17 | -------------------------------------------------------------------------------- /sql/trace/optimizer/parsetrace_enable.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id$ 4 | -- 5 | -- Enables Optimizer Trace for the given Session 6 | -- 7 | -- Metalink Note: 225598.1 How to Obtain Tracing of Optimizer Computations (EVENT 10053) 8 | 9 | PROMPT Parameter 1: SID 10 | PROMPT Parameter 2: Serial-Nr 11 | 12 | 13 | 14 | begin 15 | dbms_system.set_ev(&1,&2,10053,1,''); 16 | end; 17 | / 18 | 19 | -------------------------------------------------------------------------------- /sql/trace/orad_tfn.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: orad_tfn.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- Display tracefile-name for session in oradebug 6 | -- 7 | oradebug tracefile_name 8 | 9 | -------------------------------------------------------------------------------- /sql/trace/orad_trace_off.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: orad_trace_off.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- disable SQL-Trace in current oradebug session 6 | -- 7 | oradebug event 10046 trace name context off 8 | -------------------------------------------------------------------------------- /sql/trace/orad_trace_on.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: orad_trace_on.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- Enable SQL-Trace in current oradebug session 6 | -- 7 | prompt tracelevels: 8 | prompt 1 - Enable standard SQL_TRACE functionality (Default) 9 | prompt 4 - As Level 1 PLUS trace bind values 10 | prompt 8 - As Level 1 PLUS trace waits 11 | prompt 12 - As Level 1 PLUS both trace bind values and waits 12 | 13 | oradebug event 10046 trace name context forever, level &tracelevel 14 | oradebug TRACEFILE_NAME 15 | -------------------------------------------------------------------------------- /sql/trace/setev.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: setev.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- enable a SQL-Trace for a given session with level 6 | -- 7 | prompt tracelevels: 8 | prompt 1 - Enable standard SQL_TRACE functionality (Default) 9 | prompt 4 - As Level 1 PLUS trace bind values 10 | prompt 8 - As Level 1 PLUS trace waits 11 | prompt 12 - As Level 1 PLUS both trace bind values and waits 12 | prompt Parameter: 13 | prompt 1. Oracle SID 14 | prompt 2. Session# 15 | 16 | begin 17 | dbms_system.set_ev(&1,&2,10046,&tracelevel,''); 18 | end; 19 | / 20 | @@list_traces 21 | -------------------------------------------------------------------------------- /sql/trace/stop_sqltrace.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: stop_sqltrace.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- disable SQL-Trace for a given Session 6 | -- 7 | prompt Parameter: 8 | prompt 1. Oracle SID 9 | prompt 2. Session# 10 | 11 | begin 12 | dbms_system.SET_SQL_TRACE_IN_SESSION(&1, &2,false); 13 | end; 14 | / 15 | 16 | -------------------------------------------------------------------------------- /sql/trace/stopall_sqltrace.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: stopall_sqltrace.sql 253 2010-11-23 21:34:55Z tbr $ 4 | -- 5 | -- disable SQL-Trace for all sessions in a database 6 | -- 7 | 8 | begin 9 | for cur_user in(select sid 10 | ,serial# 11 | from v$session 12 | ) 13 | loop 14 | dbms_system.SET_SQL_TRACE_IN_SESSION(cur_user.sid, cur_user.serial#,false); 15 | end loop; 16 | end; 17 | / 18 | 19 | -------------------------------------------------------------------------------- /sql/undo/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | rollbacksegs.sql Information for all Rollback-Segments 2 | undostat.sql Undostat-Information from V$undostat (last 50 entries) 3 | undostat10.sql Undostat-Information from V$undostat for 10g+ (last 50 entries) 4 | undostatall.sql Undostat-Information from V$undostat 5 | undostat10all.sql Undostat-Information from V$undostat for 10g+ 6 | -------------------------------------------------------------------------------- /sql/undo/rollbacksegs.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: rollbacksegs.sql 258 2010-11-29 21:31:09Z tbr $ 4 | -- 5 | -- Information for all Rollback-Segments 6 | -- 7 | set lines 120 pages 30 8 | 9 | column segment_name format a25 10 | column s_id format 999 11 | column status format a10 12 | column tablespace_name format a15 13 | column IID format a3 14 | 15 | select segment_name 16 | ,segment_id s_id 17 | ,status 18 | ,tablespace_name 19 | ,instance_num IID 20 | from dba_rollback_segs 21 | order by status, segment_id; 22 | 23 | -------------------------------------------------------------------------------- /sql/user/dba_tab_priv.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dba_tab_priv.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- dba_tab_privs for an object 6 | -- 7 | -- Parameter 1: Owner 8 | -- Parameter 2: Object-Name 9 | -- 10 | 11 | column GRANTEE format a20 12 | column owner format a20 13 | column table_name format a30 14 | column grantor format a20 15 | column privilege format a30 16 | 17 | set pages 2000 18 | set lines 140 19 | 20 | select GRANTEE 21 | ,OWNER 22 | ,TABLE_NAME 23 | ,GRANTOR 24 | ,PRIVILEGE 25 | from dba_tab_privs 26 | where owner like '&1' 27 | and table_name like '&2' 28 | order by 2,3,1 29 | ; 30 | 31 | -------------------------------------------------------------------------------- /sql/user/network_acl_privileges.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 3 | -- Version: 0.1 4 | -- Date: 21.10.2024 5 | -- 6 | -- Info from DBA_NETWORK_ACL_PRIVILEGES 7 | set lines 120 pages 200 8 | 9 | column PRINCIPAL format a30 10 | column PRIVILEGE format a10 11 | column IS_GRANT format a8 12 | column START_DATE format a10 13 | column END_DATE format a8 14 | 15 | select PRINCIPAL 16 | ,PRIVILEGE 17 | ,IS_GRANT 18 | ,to_char(START_DATE, 'dd.mm.yy') start_date 19 | ,to_char(END_DATE, 'dd.mm.yy') end_date 20 | from DBA_NETWORK_ACL_PRIVILEGES 21 | where PRINCIPAL like '&1' 22 | ORDER BY PRINCIPAL, PRIVILEGE, START_DATE; 23 | -------------------------------------------------------------------------------- /sql/user/network_acls.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@googlemail.com) 3 | -- Version: 0.2 4 | -- Date: 21.10.2024 5 | -- 6 | -- Information about network ACLs for users 7 | set lines 120 pages 200 8 | 9 | column HOST format a30 10 | column LOWER_PORT format 99999 11 | column UPPER_PORT format 99999 12 | column PRINCIPAL format a30 13 | column PRIVILEGE format a10 14 | column IS_GRANT format a8 15 | column START_DATE format a10 16 | column END_DATE format a8 17 | 18 | select nap.PRINCIPAL 19 | ,PRIVILEGE 20 | ,na.HOST 21 | ,na.LOWER_PORT 22 | ,na.UPPER_PORT 23 | ,IS_GRANT 24 | ,to_char(START_DATE, 'dd.mm.yy') start_date 25 | ,to_char(END_DATE, 'dd.mm.yy') end_date 26 | from dba_network_acls na 27 | join DBA_NETWORK_ACL_PRIVILEGES nap on nap.acl = na.acl 28 | where PRINCIPAL like '&1' 29 | ORDER BY nap.PRINCIPAL, na.host, nap.PRIVILEGE, nap.START_DATE; 30 | -------------------------------------------------------------------------------- /sql/user/privs4user.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: privs4user.sql 30 2010-01-12 20:58:11Z oracle $ 4 | -- 5 | -- all priviledges for a user 6 | -- 7 | -- Parameter 1: Username or role 8 | -- 9 | --prompt SET MARKUP HTML ON ENTMAP on spool on 10 | set pagesize 10000 11 | set lines 100 12 | 13 | column grantee format a30 14 | column role_recht format a30 15 | column object_name format a30 16 | 17 | select grantee, granted_role role_recht ,object_name 18 | from 19 | ( 20 | select * 21 | from 22 | ( 23 | select grantee, granted_role,'1', ' ' object_name 24 | from dba_role_privs 25 | union all 26 | select grantee, privilege,'2',' ' 27 | from dba_sys_privs 28 | union all 29 | select grantee, privilege, '3',owner||'.'||table_name 30 | from dba_tab_privs 31 | ) 32 | where grantee like '&1' 33 | order by grantee,3,2,4 34 | ) 35 | ; 36 | -------------------------------------------------------------------------------- /sql/user/profile.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- Version: 0.1 4 | -- Date: 07.10.2018 5 | -- 6 | -- Info from dba_profiles 7 | 8 | set lines 200 pages 20 9 | 10 | column PROFILE format a30 11 | column resource_type format a13 12 | column resource_name format a30 13 | column limit format a20 14 | 15 | select profile 16 | , resource_type 17 | , resource_name 18 | , limit 19 | from dba_profiles 20 | order by 1,3,2; 21 | -------------------------------------------------------------------------------- /sql/user/savepwd.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: savepwd.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- Spool pre 11g user hash-values from dba_users 6 | -- 7 | -- Sichert alle HASH-Werte der Datenbankuser 8 | -- Das Ergebnis kann spaeter direkt ausgefuehrt werden, um die Passworte wieder herzustellen 9 | -- 10 | -- Folgende bedingungen sind erforderlich: 11 | -- 12 | -- Beim Einsatz von Password-Verify-Funktion muss es beim Profil DEFAULT erlaubt sein, ein beliebiges Password wieder zu verwenden 13 | -- 14 | 15 | set trimspool on 16 | set lines 200 17 | set heading off 18 | 19 | select 'alter user ' || username || ' identified by values '''||password||''' profile default;' 20 | from dba_users; 21 | 22 | select 'alter user ' || username || ' profile '||profile||';' 23 | from dba_users; 24 | 25 | 26 | -------------------------------------------------------------------------------- /sql/user/userinfo.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: userinfo.sql 30 2010-01-12 20:58:11Z oracle $ 4 | -- 5 | -- userinfo from dba_users 6 | -- 7 | set pages 200 8 | set lines 140 9 | 10 | column default_tablespace format a20 11 | column temporary_tablespace format a10 12 | column profile format a20 13 | column account_status format a18 14 | column created format a14 15 | column username format a30 16 | 17 | select username 18 | ,account_status 19 | ,profile 20 | ,default_tablespace 21 | ,temporary_tablespace 22 | ,to_char(created, 'dd.mm.yy HH24:mi') created 23 | from dba_users 24 | order by username; 25 | 26 | -------------------------------------------------------------------------------- /sql/user/userinfo12.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: userinfo12.sql 826 2013-08-10 08:35:34Z tbr $ 4 | -- 5 | -- userinfo from dba_users from RDBMS12c 6 | -- 7 | set pages 200 8 | set lines 140 9 | 10 | column default_tablespace format a20 11 | column temporary_tablespace format a10 12 | column PWD_VER format a8 13 | column account_status format a18 14 | column last_login format a14 15 | column created format a14 16 | column username format a30 17 | 18 | select username 19 | ,account_status 20 | ,PASSWORD_VERSIONS PWD_VER 21 | ,ORACLE_MAINTAINED om 22 | ,COMMON 23 | ,to_char(LAST_LOGIN, 'dd.mm.yy HH24:mi') last_login 24 | ,to_char(created, 'dd.mm.yy HH24:mi') created 25 | from dba_users 26 | order by username; 27 | 28 | -------------------------------------------------------------------------------- /sql/user/userinfo2.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: userinfo2.sql 10 2008-11-11 10:25:06Z oracle $ 4 | -- 5 | -- userinfo from dba_users with lock and expire-date 6 | -- 7 | set pages 200 8 | set lines 140 9 | 10 | column profile format a20 11 | column account_status format a18 12 | column lchange format a14 13 | column lock_date format a14 14 | column expiry_date format a14 15 | column username format a30 16 | 17 | select du.username 18 | ,du.account_status 19 | ,du.profile 20 | ,to_char(u.ptime, 'dd.mm.yy HH24:mi') lchange 21 | ,to_char(du.lock_date, 'dd.mm.yy HH24:mi') lock_date 22 | ,to_char(du.expiry_date, 'dd.mm.yy HH24:mi') expiry_date 23 | from dba_users du,sys.user$ u 24 | where du.username = u.name 25 | order by username; 26 | 27 | -------------------------------------------------------------------------------- /sql/user/userusedspace.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- Date: 12.03.2015 5 | -- 6 | -- used space from dba_segments for users 7 | -- 8 | -- Parameter 1: Owner 9 | 10 | set trimspool on lines 120 pages 100 numwidth 15 verify off 11 | column username format a30 12 | column TABLESPACE_NAME format a30 13 | select u.USERNAME 14 | , s.TABLESPACE_NAME 15 | , sum(round(s.bytes/1024/1024,1)) used_mb 16 | from dba_users u 17 | join dba_segments s on s.owner = u.username 18 | where u.username like '&1' 19 | group by grouping sets (username, tablespace_name) 20 | ,(username) 21 | order by 1,2; 22 | 23 | 24 | -------------------------------------------------------------------------------- /sql/xplan/_scriptinfo.txt: -------------------------------------------------------------------------------- 1 | dplan.sql display plan for last explain in current session 2 | dplanadv.sql display advanced plan for last explain in current session 3 | dplan9i.sql display plan for statement_id 4 | dplanallstatslast.sql Display plan for last sql with 'allstats_last' 5 | dplanawr.sql display plan for sql_id from AWR 6 | dplansid.sql display plan for running sql on session with SID 7 | dplansqlid.sql display plan for SQL_ID from shared_pool 8 | dplansqlidbind.sql display plan for SQL_ID from shared_pool with bind values 9 | dplansys.sql display plan for current session, switching to sys before 10 | -------------------------------------------------------------------------------- /sql/xplan/cs.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: cs.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- alter session set current_schema 6 | -- 7 | -- Parameter 1. Username 8 | -- 9 | alter session set current_schema=&1; 10 | 11 | -------------------------------------------------------------------------------- /sql/xplan/dplan.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplan.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for last explain in current session 6 | -- 7 | set pages 2000 8 | set lines 200 9 | column PLAN_TABLE_OUTPUT format a200 10 | 11 | select * from table(dbms_xplan.display()); 12 | 13 | -------------------------------------------------------------------------------- /sql/xplan/dplanadv.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- 4 | -- display advanced plan for last explain in current session 5 | -- 6 | -- Date: 04.06.2016 7 | -- 8 | set pages 2000 9 | set lines 200 10 | column PLAN_TABLE_OUTPUT format a200 11 | 12 | select * 13 | from table(dbms_xplan.DISPLAY_CURSOR(null,null,'ADVANCED')) 14 | ; 15 | 16 | -------------------------------------------------------------------------------- /sql/xplan/dplanallstatslast.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplanallstatslast.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- Display plan for last sql with 'allstats_last' 6 | -- 7 | set echo off 8 | set verify off 9 | set feedback off 10 | 11 | set feedback on 12 | 13 | set pages 2000 14 | set lines 200 15 | set trimspool on 16 | 17 | column PLAN_TABLE_OUTPUT format a200 18 | 19 | select * 20 | from table(dbms_xplan.DISPLAY_CURSOR(null,null,'ALLSTATS LAST')) 21 | ; 22 | 23 | 24 | -------------------------------------------------------------------------------- /sql/xplan/dplanawr.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplanawr.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for sql_id from AWR 6 | -- 7 | -- Parameter 1: sql_id 8 | -- 9 | set pages 2000 10 | set lines 200 11 | set trimspool on 12 | 13 | column PLAN_TABLE_OUTPUT format a200 14 | 15 | select * from table(dbms_xplan.DISPLAY_AWR('&1')); 16 | 17 | -------------------------------------------------------------------------------- /sql/xplan/dplansid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplansid.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for running sql on session with SID 6 | -- 7 | -- Parameter 1: SID 8 | 9 | 10 | set echo off 11 | set verify off 12 | set feedback off 13 | 14 | variable SQL_ID varchar2(20) 15 | variable SQL_CHILD_NUMBER number 16 | 17 | 18 | begin 19 | select SQL_ID 20 | ,SQL_CHILD_NUMBER 21 | into :SQL_ID 22 | ,:SQL_CHILD_NUMBER 23 | from v$session 24 | where sid = &&1; 25 | end; 26 | / 27 | 28 | set feedback on 29 | 30 | set pages 2000 31 | set lines 200 32 | set trimspool on 33 | 34 | column PLAN_TABLE_OUTPUT format a200 35 | 36 | select * from table(dbms_xplan.DISPLAY_CURSOR(:SQL_ID, :SQL_CHILD_NUMBER, 'ALL')); 37 | 38 | 39 | -------------------------------------------------------------------------------- /sql/xplan/dplansqlid.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplansqlid.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for SQL_ID from shared_pool 6 | -- 7 | -- Parameter 1: sql_id 8 | -- 9 | set echo off 10 | set verify off 11 | set feedback off 12 | 13 | set feedback on 14 | 15 | set pages 2000 16 | set lines 200 17 | set trimspool on 18 | 19 | column PLAN_TABLE_OUTPUT format a200 20 | 21 | --select * from table(dbms_xplan.DISPLAY_CURSOR('&1', 0, 'ALL')); 22 | select t.* 23 | from v$sql s 24 | join table(dbms_xplan.DISPLAY_CURSOR(s.sql_id,s.child_number,'ALLSTATS LAST')) t on 1=1 25 | where s.sql_id='&1'; 26 | 27 | -------------------------------------------------------------------------------- /sql/xplan/dplansqlidbind.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplansqlidbind.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for SQL_ID from shared_pool with bind values 6 | -- 7 | -- Parameter 1: sql_id 8 | -- 9 | set echo off 10 | set verify off 11 | set feedback off 12 | 13 | set feedback on 14 | 15 | set pages 2000 16 | set lines 200 17 | set trimspool on 18 | 19 | column PLAN_TABLE_OUTPUT format a200 20 | 21 | --select * from table(dbms_xplan.DISPLAY_CURSOR('&1', 0, 'ALL')); 22 | select t.* 23 | from v$sql s 24 | join table(dbms_xplan.DISPLAY_CURSOR(s.sql_id,null,'+peeked_binds')) t on 1=1 25 | where s.sql_id='&1'; 26 | 27 | -------------------------------------------------------------------------------- /sql/xplan/dplansys.sql: -------------------------------------------------------------------------------- 1 | -- 2 | -- Thorsten Bruhns (Thorsten.Bruhns@opitz-consulting.de) 3 | -- $Id: dplansys.sql 244 2010-11-14 14:35:23Z tbr $ 4 | -- 5 | -- display plan for current session, switching to sys before 6 | -- 7 | -- Parameter 1: sql_id 8 | -- 9 | @@cs sys 10 | set pages 2000 11 | set lines 200 12 | column PLAN_TABLE_OUTPUT format a200 13 | 14 | select * from table(dbms_xplan.display()); 15 | 16 | --------------------------------------------------------------------------------