Oracle相关

  1. 使用绑定变量的SQL效率更高。因为硬编码的语句对于Oracle来说完全是全新的语句,每次都需要编译。绑定变量的语句只需编译一次。
  2. runstats脚本
    • Oracle 只在修改时才对数据加行级锁, 正常情况下不会升级到块级锁或表级锁
  • 读(read)不会被写(write)阻塞
  • 写入器想写某行数据,但另一个写入器已经锁定了这行数据,此时该写入器才会被阻塞
  • 读取器绝对不会阻塞写入器
  1. 多版本:使用SCN(System Commit Number)记录Oracle内部时钟,每个时间节点均可回溯。
eric@PDBORCL> variable SCN number
eric@PDBORCL> exec :scn := dbms_flashback.get_system_change_number
eric@PDBORCL> delete from emp;
13 rows deleted.
eric@PDBORCL> commit;
Commit complete.
eric@PDBORCL> select * from (select count(*) from emp),                       
  2  (select count(*) from emp as of scn :scn);
  COUNT(*)   COUNT(*)
 ---------- ----------
     0     13

此项功能保证了读一致性,而不必使用读锁。

  1. 实例:Oracle的进程和内存;
    数据库:保存数据的物理文件。
  2. init.ora是遗留参数文件,不太好,必须安装在管理服务器的机器上才行;spfile$ORACLE_SID.ora是新的服务器参数文件,仅存放在服务器上,比较好。其设置命令为:
alter system set parameter=value    

你可能感兴趣的:(Oracle相关)