Как узнать сколько каждая схема занимает места?

Допустим необходимо узнать сколько места занимает какая-нибудь схема, для этого подключимся к Oracle из под sysdba и выполнить запрос: select owner,to_char(sum(bytes)/1024/1024)||’Mb’ sch_size from dba_segments group by owner order by sch_size desc

Oracle dblink с 10g на 11g

Допустим у нас есть две базы данных, одна их них 11g, другая — 10g. Наша задача сделать доступными данные с 11g на 10g. Но когда делаешь обычный dblink ничего не происходит, и система каждый раз ругается на ошибку логина и пароля. чтобы это исправить нужно на базе 11g выполнить из под SYS команду: ALTER SYSTEM […]

REGRESS.RDBMS.DEV.US.ORACLE.COM

Способ 1: Либо отключить глобальные имена: alter session set global_names = false;alter database rename global_name to MYDB;update global_name set global_name = ‘MYDB’;select global_name from global_name; Затем нужно перезапустить базу через shutdown/startup. Способ 2:  Либо использовать полное TNS имя при создании DBLink’a LINK1.REGRESS.RDBMS.DEV.US.ORACLE.COM

Мониторинг активных сессиий черезе SQL Developer

Для того чтобы отобразить список сессий нужно открыть программу и в верхнем меню выбрать пункт «Tools» в выпавшем меню выбираем «Session Monitoring»: В открывшемся окошке выбираем конфигурацию и нажимаешь «Ok». Там же, воспользовавшись Combobox, можно выбрать с какой частотой будет происходить «Refresh».

Как узнать SID сессии и убить её по SQL_ID

Через sqlplus выполним запрос:  select sid, serial#, machine, program from v$session where sql_id in (‘7aqfaga9ax4fv’);  Вот пример функции, которая использует указанный ранее запрос: begin for x in (  select sid, serial#, machine, program  from v$session  where sql_id in (‘7aqfaga9ax4fv’) ) loop execute immediate ‘Alter System Kill Session »’|| x.Sid || ‘,’ || x.Serial# || »’ IMMEDIATE’; end loop;end;/

Выполнить CROSSCHECK DBF-файлов Oracle

Данными командами можно вывести полный список ошибок базы, после чего сгенерим скрипт, затем выполним его: list failure;advise failure;repair failure; Теперь необходимо выполнить кроссчеки: CROSSCHECK backup;CROSSCHECK copy;CROSSCHECK backup of database;CROSSCHECK backup of controlfile;CROSSCHECK archivelog all;

Как убить зависшие процессы RMAN

Из под oracle зайти rman target / Отобразить все сессии select sid, serial#, status, logon_time from v$session where program like ‘%rman%’; Отобразить все работы пользователя SYS select username, program from v$session where username = ‘SYS’; Сгенерировать команды удаления зависших процессов rman select ‘kill -9 ‘||p.spid  kill_rman_processfrom  v$session s, v$process pwhere s.paddr=p.addrand s.program like ‘rman%’order by […]

Запросить таблицы доступные через Database Link

Там можно выгрузить все таблицы: SELECT OWNER, TABLE_NAME FROM ALL_TABLES@<dblink>; А таr можно запросить все пользовательские таблицы: SELECT TABLE_NAME FROM USER_TABLES@<dblink>;

Отключение бекапа конфигурационных файлов в Oracle 11g через RMAN

oracle@oracledb:~$ rman TARGET sys/***@test NOCATALOG Recovery Manager: Release 11.2.0.2.0 — Production on Mon Apr 29 14:19:21 2013 Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved. connected to target database: TESTusing target database control file instead of recovery catalog RMAN> configure controlfile autobackup off; old RMAN configuration parameters:CONFIGURE CONTROLFILE AUTOBACKUP ON;new RMAN configuration […]

Если не стартует Enterprise Manager на HP-UX

Залогинимся в базу из под SYS sqlplus /nologconn / as sysdba  Очистить базу от старых настроек exec DBMS_AQADM.DROP_QUEUE_TABLE(queue_table=>’SYSMAN.MGMT_NOTIFY_QTABLE’,force=>TRUE); DECLARECURSOR c1 ISSELECT owner, synonym_name nameFROM dba_synonymsWHERE table_owner = ‘SYSMAN’;BEGINFOR r1 IN c1 LOOPIF r1.owner = ‘PUBLIC’ THENEXECUTE IMMEDIATE ‘DROP PUBLIC SYNONYM ‘||r1.name;ELSEEXECUTE IMMEDIATE ‘DROP SYNONYM ‘||r1.owner||’.’||r1.name;END IF;END LOOP;END;/ DROP USER mgmt_view CASCADE;DROP ROLE mgmt_user;DROP USER sysman […]