因为工作中经常接触 Oracle 数据库,现在在这里整理一些 Oracle 数据库常用的运维语句。
1.查看对象引用关系
(1)以DBA方式查询
--查询引用对象
SELECT * FROM dba_dependencies WHERE referenced_name = '<object_name>';
--查询引用的相关语句
SELECT * FROM dba_source WHERE text like '%<object_name>%';
(2)以普通数据库用户形式查询
--查询引用对象
SELECT * FROM all_dependencies WHERE referenced_name = '<object_name>';
--查询引用的相关语句
SELECT * FROM user_source WHERE text like '%<object_name>%';
2.查看/编译失效对象
--检查失效对象
SELECT * FROM dba_objects WHERE status = 'INVALID';
SELECT * FROM dba_invalid_objects;
--编译失效对象
BEGIN
dbms_utility.compile_schema('<username>', false);
END;
--查询编译报错信息
SELECT * FROM dba_errors