Шпаргалка по командам Oracle

Приконнектиться как sysdba:
sqlplus "sys/PASSWORD@SID as sysdba"

Показать список заблокированных пользователей:
select username,account_status from dba_users where account_status like '%LOCK%';

Посмотреть парольные политики:
SELECT resource_name, limit
FROM dba_profiles 
WHERE profile = 'DEFAULT'
AND resource_type = 'PASSWORD';
Изменить парольную политику:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Отключить лимит на количество попыток ввода неправильного пароля:
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;

Разблокировать пользователя:
alter user SA account unlock;

Изменить пароль для пользователя:
alter user SA identified by SA;

Посмотреть лог удачных/неудачных попыток входа:
select
os_username,
username,
terminal,
to_char(timestamp,'MM-DD-YYYY HH24:MI:SS')
from
dba_audit_trail;

Посмотреть invalid-объекты:
select * from all_objects where status='INVALID';

Перекомпилировать invalid-объекты:
exec dbms_utility.compile_schema(schema => 'ИМЯ', compile_all => false, reuse_settings => true);

Посмотреть параметры NLS, например кодировку:
select * from nls_database_parameters;

The user you are logged in as doesn't have the right privileges, so check what it does have access to:

 

-- list system privileges for the user or role

SELECT * FROM dba_sys_privs

WHERE grantee IN (&user_role, 'PUBLIC');

 

-- list object privileges for the user or role

SELECT grantee, owner||'.'||table_name object, privilege, grantable

FROM dba_tab_privs

WHERE grantee IN (&user_role)

ORDER BY grantee, owner||'.'||table_name, privilege;