通过进程找sql
通过进程找sqlselect p.spid,s.machine,s.username,s.sid,s.serial#,s.status from v$session s,v$process p where s.sid in (select sid from v$session wher
sqlplus执行脚本时遇到错误自动停止
当一个脚本中存在大量的sql/plsql语句时,执行该脚本时,如果其中有一条sql语句执行失败,用sqlplus可能很难发现。如果能让碰到错误时,让sql*plus退出,再结合spool命令查看日志,就很容易知道脚本的执行情况。这可以通过whenever命令来实现。SQL>whenever sqlerror exit rollback一旦脚本中该语句之后的某sq
导出oracle公有同义词
set head off spool pub.sql SELECT 'CREATE PUBLIC SYNONYM '||synonym_name||' FOR '||table_owner||'.'||table_name||';' FRO
查看表名和表的行数
oracleselect '重庆HRP' 系统, 'hrp' 库名, t.table_name, comments, num_rows, timestamp 最近更新时间 from user_tables t left join user_tab_comments c on
通过外键找主键
1、执行下面sql语句报错: SQL>delete from mtrl_export_master where EXPORT_MASTER_ID in ('25956471') 异常信息:ORA-02292: integrity constraint (HRP_1001.FK_MTRL
查看数据字典
查看oracle数据字典SELECT a.TABLE_NAME 表名, c.COMMENTS 表注释, A.COLUMN_NAME AS "字段名", A.DATA_TYPE AS "字段类型", A.CHAR_LENGTH AS "字段长度", A.NULLABLE AS "能否为空", B.comments AS
创建dblink
CREATE DATABASE LINK "HISDBLINK" CONNECT TO "HIS_CQWY" IDENTIFIED BY " " USING '172.16.xx.xx:1521/orcl';
查看oracle数据库中,哪些表的字段是null值比较多
查看oracle数据库中,哪些表的字段是null值比较多,说明该字段没有用,后期重构系统中,可以考虑移除该字段,从而减少表的行的长度。SELECT c.table_name, column_name, num_rows, num_nulls, CASE WHEN num_rows = 0 
禁止oracle表的触发器trigger
SQL> select OWNER,TRIGGER_NAME,STATUS from dba_triggers where TRIGGER_NAME='TR_MTRL_STOCK_THREE_CLOUDHIS'; OWNER  
归档oracle alert日志
参照https://my.oschina.net/u/4317546/blog/3526861/print ,用zabbix监控oracle alert log,现在已经能正常工作了。 但是有个问题,就是如果alert 日志太大,会导致zabbix 监控慢,设置会超时,所以要定期
查看oracle被锁的表是谁锁的
SELECT b.session_id AS sid, NVL(b.oracle_username, '(oracle)') AS username,
查看oracle数据库真实大小
通过查看监控orabbix,看到一个sql语句,可以查看oracle数据库真实大小。SELECT to_char( sum( NVL( a.bytes / 1024 / 1024 / 10 - NVL( f.bytes /&
oracle表空间的整理
--查看表空间使用情况SELECT UPPER(F.TABLESPACE_NAME)"表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB-F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GRO
静默升级oracle 11g (从11.2.0.1升级到11.2.0.4)
一个环境是oracle 11.2.0.1,另外一个环境是oracle 11.2.0.4,同样的数据,同样的sql,在两个版本数据库表现不一样。于是,干脆都统一为11.2.0.4。 但由于环境限制,只能用静默的方法,把oracle 11.2.0.1 升级到 11.2.0.4。
利用oracle的日志挖掘实现回滚
archery对mysql的支持非常完美,虽然也支持oracle,但是对oracle只支持查询和执行,不支持备份和审核,还是有很大的遗憾。 现在,我们急需要一个oracle的备份功能,于是我想到了oracle自带的功能——日志挖掘,它可以实现sql语句的备份功能。 &nb