SlideShare a Scribd company logo
1 of 22
Instance Management
Overview
• 实例管理主要讨论以下方面的内容:
 – 数据库初始化参数的设置
 – 数据库的启动和关闭
 – 数据库告警日志和跟踪文件
 – 数据字典和动态性能视图
实例的管理对于数据库的性能调优 和 灾难
恢复均十分重要, 一个好的oracle DBA应当十
分熟悉这些内容.
Initialization Parameters
             - Overview
• 初始化参数控制了oracle数据库的各个方面, 这
  些参数中大概有300个是支持DBA进行设定的,
  它们又分为基础参数(大概33个, 根据版本不同)
  和高级参数, 通常而言DBA需要考虑的是那些基
  础参数; 另外还有1500个左右的隐藏参数, 这些
  参数是不支持DBA进行设定的;
• 初始化参数分为静态的和动态两种类型, 前者
  在实例启动之后不能被修改, 大部分参数都是
  动态的, 这些参数的设置保存在pfile或者动态
  的spfile中; 除了DB_NAME参数之外所有的参数
  都有默认值, 如果没有在参数文件中进行设置,
  则会使用它们的默认值.
Initialization Parameters
                    - Parameter file
•   oracle数据库可以使用pfile或者spfile作为启动参数文件, pfile的命名格式为:
     – init${ORACLE_SID}.ora 或者 init.ora
    spfile是在oracle的后期版本引入的, 命名格式为:
     – spfile${ORACLE_SID}.ora 或者 spfile.ora
    spfile相比pfile的好处在于:
     – 动态改变参数, 无需重启数据库;
     – spfile不能被人工编辑, 从而减少错误的发生;
     – 可以使用RMAN对spfile进行备份.
•   实例在启动时会查看${ORACLE_HOME}/dbs(Unix, linux)或者
    ${ORACLE_HOME}/database目录, 并按照如下顺序读取参数文件:
     –   spfile${ORACLE_SID}.ora             (SPFILE = Server Parameter File)
     –   spfile.ora                          (SPFILE)
     –   init${ORACLE_SID}.ora               (PFILE)
     –   init.ora                            (PFILE)
    使用下面的sql语句查看当前使用的是pfile还是spfile:
    SELECT DECODE (value, NULL, 'PFILE', 'SPFILE') "Init File Type", value
          FROM sys.v_$parameter WHERE name = 'spfile';
•   使用如下语句创建pfile或者spfile
    create spfile [='spfilename'] from pfile [='pfilename'];
    create pfile [='pfilename'] from spfile [='spfilename'];
Initialization Parameters
         - Static vs. Dynamic
• 可以通过视图v$parameter和v$spparameter查
  看当前的启动参数的设置, 前者返回的是当前
  实例运行时参数设置, 后者则是spfile中保存的
  参数设置, 通常情况下两者相同. 不同的情况可
  能发生在: DBA修改了某个静态参数的值, 并且
  写入了spfile; 或者修改某个动态参数的值, 但未
  写入spfile.
• 通过如下sql语句判断参数是静态的还是动态的:
   select NAME, ISSES_MODIFIABLE, ISSYS_MODIFIABLE
    from v$parameter where name like '%%';
Initialization Parameters
        - Alter Parameter Value
• 使用alter system语句修改初始化参数, 该语句会在系统级别修改
  参数的值, 格式如下:
   alter system set pname=pvalue
             [scope=both|memory|spfile]
 scope选项各个值的含义分别是:
  – both       同时修改内存和spfile
  – memory 仅修改内存
  – spfile     仅修改spfile
  默认情况下scope值为both. 需要注意以下情况会导致
  该语句失败:
  – 修改静态参数但scope未指定为spfile;
  – 使用pfile启动数据库但指定scope为spfile;
• 根据不同的参数, 可以在system级别, session级别或者同时允许在
  这两个级别进行设置. 比如optimizer_mode参数既可以在system级
  别也可以在session级别设置, nls_date_format参数则只允许在会
  话级别进行设置. 会话级别设置则使用alter session 语句, 该语句
  的格式: alter session set pname=pvalue
Initialization Parameters
            - Basic Parameters
• 通常DBA需要考虑的是基础启动参数, 使用如下sql
  查询有哪些基础参数:
 select name,value from v$parameter
      where isbasic='TRUE' order by name;
 下面是基础参数的一个列表(这些参数将分别在之
 后的章节中讨论):
Initialization Parameters
    - Basic Parameters
Initialization Parameters
    - Basic Parameters
Database Control
                     - Overview
• Database Control是oracle提供的一个基于Java & Perl编写的工
  具, 用于实现对数据库服务器的远程控制, 需要通过web浏览器
  进行操作. 以oracle系统用户登录, 使用以下命令启动/停止/查
  看Database Control的状态(执行命令之前确保正确设置了
  ORACLE_HOME, ORACLE_SID, PATH等环境变量):
 emctl start|stop|status dbconsole
  使用类似如下的链接进行登录: https://hostname:port/em/, 会
  打开下面的页面. 默认端口为1158, 具体可以查看
  $ORACLE_HOME/install/portlist.ini文件.
• Database Control是oracle推荐用于数据库管理的方式, 可以用
  于执行如下动作:
  – 启动和关闭数据库以及监听器;
  – 查看数据库运行状态, 数据库配置状态;
  – 查看数据库性能信息.
Database Listener
• oracle数据库监听器用于接收对数据库的连接请求,
  有3中方式启动监听器:
 – 使用lsnrctl工具命令
   使用oracle用户登录后, 运行lsnrctl start|stop|status命令
 – 使用database control
    在相关的页面中可以找到启动与停止监听器的链接




 – windows平台上可注册为系统服务
SYSDBA vs. SYSOPER
• SYSDBA 和 SYSOPER是oracle数据库的角色, 角色是一
  个权限控制的概念在以后会讲到. 通过操作系统或
  者密码文件验证, 用户可以以SYSDBA或者SYSOPER角
  色登录. SYSOPER角色可以在sql*plus中执行如下命令:
   startup
   shutdown
   alert database mount|open|close|dismount
   alter [database|tablespace] begin|end backup
   recover
 SYSDBA角色拥有对数据库的最高控制权限, 比如以
 SYSDBA登录的用户可以创建用户, 创建数据库等; 默
 认情况下只有SYS用户拥有SYSDBA/SYSOPER角色, SYS
 用户可以将这些角色分配给其他的用户.
Database Startup
                    - Overview
• 可以通过两种方式启动oracle数据库:
  – 通过SQL*PLUS命令行工具
    SQL*PLUS是oracle自带的一个oracle客户端工具, 可以通过该工具连
    接本地或者远程数据库, 并进行相应的操作. DBA通常使用如下的两
    个步骤登录数据库:
    sqlplus /nolog # 进入sqlplus, 不提示验证信息
    connect username/passwd [as sysdba] # 登录数据库
    startup # 运行startup命令
  – 使用Database ControL
• Logon by OS Auth
  如果可以访问数据库所在的操作系统并且具备相应的权限, 那么
  则可以绕过数据库的验证直接以SYSDBA的身份登录, 这要求系
  统用户在dba系统用户组中. 在创建数据库时, 我们创建了oracle
  用户并将它设置在dba用户组中, 因此该用户可以直接以SYSDBA
  身份登录, 通过以下命令: sqlplus / as sysdba. 当用户以这种方式
  登录数据库时实际上是以SYS用户登录.
Database Startup
 - Startup: nomount, mount and open
• oracle数据库的启动可以分为这些阶段: 启动实例(内存+
  进程), 挂载数据库(mount), 打开数据库(open). 数据库具
  有如下状态:
  – SHUTDOWN(关闭)
  – NOMOUNT
    此时数据库实例已经启动但数据库没有被挂载.
  – MOUNT
    此时数据库实例已经启动, 并且已读取控制文件.
  – OPEN
    数据库实例已经启动, 数据文件被打开, 等待客户端用户连接.
• 在不同的数据库启动阶段需要读取相应的文件, 那么
  oracle是如何读取到这些文件的呢? 下面按照数据库启动
  的各个阶段进行介绍.
  – NOMOUNT
  此阶段需要读取数据库初始化参数文件, 参考《 Parameter file》
Database Startup
- Startup: nomount, mount and open
 – MOUNT
 此阶段需要读取控制文件, 控制文件是通过前一
 阶段读取的CONTROL_FILES参数进行定位的. 这一
 阶段会读取数据库数据文件/在线重做日志文件
 的位置信息, 但此时不会定位和读取这些文件.
 – OPEN
 此阶段会根据前一阶段读取的文件位置信息对这
 些文件进行定位和打开.
Database Startup
- Startup: nomount, mount and open
Database Shutdown
• 关闭数据库的顺序与打开数据库正好相反, 首先数据库被关闭,
  然后被卸载, 最后实例被终止. 在关闭数据库阶段, 所有的回话
  被终止, 活动的事务被回滚, CKPT进程被调用. 最后, 数据文件
  和在线重做日志文件被关闭; 卸载阶段, 控制文件被关闭; 最后,
  SGA内存被释放相应的后台进程被终止, 实例终止.
• Shutdown: NORMAL, TRANSACTIONAL, IMMEDIATE, and ABORT
  执行shutdown时, 可以指定为上述四个选项:
  NORMAL
  默认选项, 不允许新的会话, 当所有的用户都退出登录时, 数据库被关闭;
  TRANSACTIONAL
  不允许新的会话, 不处在事务中的会话被终止, 其它的会话在事务完成时被
  终止. 当所有的会话都终止时, 数据库被关闭;
  IMMEDIATE
  不允许新的会话, 所有当前连接的会话被终止, 活动的事务被回滚, 然后数
  据库被关闭;
  ABORT
  相当于断电(power failure), 实例被立即终止.
  TIP: ABORT操作不会损坏数据库, 但是在abort操作之后不建议对数据库作
  备份操作.
Database Shutdown
• Shutdown: NORMAL, TRANSACTIONAL, IMMEDIATE,
  and ABORT
  前三种类型的数据库关闭均被称为有序的(orderly),
  在所有的会话终止之后PMON会回滚所有未完成的
  事务, 之后CKPT进程被调用, LGWR进程将所有的重做
  日志写入文件; 最后文件句柄被关闭. 在这种情况下,
  数据库最终处在一致的(consistent)状态.
  ABORT类型的关闭被称为非有序的(disorderly), 此时
  数据库处在一种不一致的(inconsistent)状态. 在数据
  库下一次启动时, 会修复这种状态.
• 可以使用如下命令代替shutdown:
  alter database close;
  alter database dismount;
Alert Log and Trace File
• 告警日志文件(Alert log file)存放在数据库
  BACKGROUND_DUMP_DEST参数指定的位置, 按照alert_SID.log的
  格式命名, 该文件包含了对实例或者数据库采取的某些关键操作,
  具体包含:
   – 启动和停止数据库操作, 包含中间命令比如alter database mount;
   – 实例内部错误, 比如ORA-600错误;
   – 检测到的数据文件块损坏;
   – 死锁信息;
   – 影响数据库物理存储结构的操作, 比如创建或者重命名数据文件或
     者重做日志文件;
   – 修改启动参数的ALTER SYSTEM命令;
   – 重做日志切换和日志归档操作.
  关于数据库启动的告警日志会显示所有非默认配置的初始化参数, 结
  合ALTER SYSTEM/DATABASE命令的记录, 可以得到数据库/实例的所有
  历史变化, 这对于数据库问题的诊断有很大的价值.
  Tip: 对于很多的DBA而言, 告警日志是他们诊断问题的第一站.
Data Dictionary Views
• Oracle数据字典是对数据库的定义, 动态性能视图则包含
  了当前实例的运行性能信息, 这两者对于实例性能的监
  控和诊断非常具有参考价值.
• Data Dictionary Views
  数据字典包含的是数据库元数据, 它包括: 数据库的物理
  和逻辑描述, 数据库对象(表/索引/PLSQL过程)描述, 完整
  性约束, 用户定义, 安全信息, 以及性能监控信息. 数据字
  典以段(segment) 存储在SYSTEM/SYSAUX表空间中. 常用
  的数据字典视图有:
  –   DBA_OBJECTS A row for every object in the database
  –   DBA_DATA_FILES A row describing every datafile
  –   DBA_USERS      A row describing each user
  –   DBA_TABLES     A row describing each table
  –   DBA_ALERT_HISTORY     Rows describing past alert conditions
Dynamic Performance Views
• 有超过300多个的动态性能视图, 这些视图的名称以
  V$开头, 实际上它们是指向相应的V_$视图的同义词.
  动态性能视图的数据大部分基于实例, 比如
  V$INSTANCE/V$SYSSTAT是基于实例的视图, 这些视图
  的数据只要实例启动了就可以读取比如数据库处在
  nomount状态也可以读取这些视图;有一小部分则是
  根据控制文件得到的, 比如v$database, v$datafile, 这
  些视图必须等到数据库打开之后才能够被访问.
• 动态性能视图在数据库启动阶段被创建, 随着实例
  的运行数据会增加或者被更新. 在数据库关闭时, 这
  些视图被删除.
  TIP: 性能视图和数据字典视图会存在一些重叠, 比如
  v$tablespace描述的是数据字典信息; 另外字典视图
  通常是复数, 而性能视图为单数.
END

More Related Content

What's hot

2, OCP - installing and creating a database
2, OCP - installing and creating a database2, OCP - installing and creating a database
2, OCP - installing and creating a databaseted-xu
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 Lheima911
 
9, OCP - restore and recovery with rman
9, OCP - restore and recovery with rman9, OCP - restore and recovery with rman
9, OCP - restore and recovery with rmanted-xu
 
MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程Lixun Peng
 
【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 zmaclean liu
 
11g新特性streams同步捕获
11g新特性streams同步捕获11g新特性streams同步捕获
11g新特性streams同步捕获maclean liu
 
4, OCP - oracle networking
4, OCP - oracle networking4, OCP - oracle networking
4, OCP - oracle networkingted-xu
 
配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制maclean liu
 
Itpub电子杂志(第五期)
Itpub电子杂志(第五期)Itpub电子杂志(第五期)
Itpub电子杂志(第五期)yiditushe
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器Leyi (Kamus) Zhang
 
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)acqua young
 
MySQL源码分析.02.Handler API
MySQL源码分析.02.Handler APIMySQL源码分析.02.Handler API
MySQL源码分析.02.Handler APILixun Peng
 
Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档xuebao_zx
 
MySQL数据库生产环境维护
MySQL数据库生产环境维护MySQL数据库生产环境维护
MySQL数据库生产环境维护mysqlops
 
Essential oracle security internal for dba
Essential oracle security internal for dbaEssential oracle security internal for dba
Essential oracle security internal for dbamaclean liu
 
5, OCP - oracle storage
5, OCP - oracle storage5, OCP - oracle storage
5, OCP - oracle storageted-xu
 
Cassandra的初步使用及一些简单的操作
Cassandra的初步使用及一些简单的操作Cassandra的初步使用及一些简单的操作
Cassandra的初步使用及一些简单的操作zhubin885
 
CKAN 技術介紹 (基礎篇)
CKAN 技術介紹 (基礎篇)CKAN 技術介紹 (基礎篇)
CKAN 技術介紹 (基礎篇)Chengjen Lee
 

What's hot (20)

2, OCP - installing and creating a database
2, OCP - installing and creating a database2, OCP - installing and creating a database
2, OCP - installing and creating a database
 
Oracle Instance 介紹
Oracle Instance 介紹Oracle Instance 介紹
Oracle Instance 介紹
 
Oracle 索引介紹
Oracle 索引介紹Oracle 索引介紹
Oracle 索引介紹
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 L
 
9, OCP - restore and recovery with rman
9, OCP - restore and recovery with rman9, OCP - restore and recovery with rman
9, OCP - restore and recovery with rman
 
MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程
 
【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z【Ask maclean技术分享】oracle dba技能列表 z
【Ask maclean技术分享】oracle dba技能列表 z
 
11g新特性streams同步捕获
11g新特性streams同步捕获11g新特性streams同步捕获
11g新特性streams同步捕获
 
4, OCP - oracle networking
4, OCP - oracle networking4, OCP - oracle networking
4, OCP - oracle networking
 
配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制配置Oracle 10g 双向流复制
配置Oracle 10g 双向流复制
 
Itpub电子杂志(第五期)
Itpub电子杂志(第五期)Itpub电子杂志(第五期)
Itpub电子杂志(第五期)
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器
 
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
Install oracle ebs r12.1.1 on OEL5.6 x86(include demo)
 
MySQL源码分析.02.Handler API
MySQL源码分析.02.Handler APIMySQL源码分析.02.Handler API
MySQL源码分析.02.Handler API
 
Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档
 
MySQL数据库生产环境维护
MySQL数据库生产环境维护MySQL数据库生产环境维护
MySQL数据库生产环境维护
 
Essential oracle security internal for dba
Essential oracle security internal for dbaEssential oracle security internal for dba
Essential oracle security internal for dba
 
5, OCP - oracle storage
5, OCP - oracle storage5, OCP - oracle storage
5, OCP - oracle storage
 
Cassandra的初步使用及一些简单的操作
Cassandra的初步使用及一些简单的操作Cassandra的初步使用及一些简单的操作
Cassandra的初步使用及一些简单的操作
 
CKAN 技術介紹 (基礎篇)
CKAN 技術介紹 (基礎篇)CKAN 技術介紹 (基礎篇)
CKAN 技術介紹 (基礎篇)
 

Viewers also liked

Beyond the Platform: Enabling Fluid Analysis
Beyond the Platform: Enabling Fluid AnalysisBeyond the Platform: Enabling Fluid Analysis
Beyond the Platform: Enabling Fluid AnalysisEric Kavanagh
 
Elecciones USA 2012: los 12 factores decisivos
Elecciones USA 2012: los 12 factores decisivosElecciones USA 2012: los 12 factores decisivos
Elecciones USA 2012: los 12 factores decisivosAntoni
 
Inter-linking of Rivers
Inter-linking of RiversInter-linking of Rivers
Inter-linking of RiversSwapnil Nakate
 
1, java intro
1, java intro1, java intro
1, java introted-xu
 
Dish Network Profile (Business Communications, NYU Stern - Yu)
Dish Network Profile (Business Communications, NYU Stern - Yu)Dish Network Profile (Business Communications, NYU Stern - Yu)
Dish Network Profile (Business Communications, NYU Stern - Yu)Jason Rawlins
 
Consecuencias embarazo en adolescentes
Consecuencias embarazo en adolescentesConsecuencias embarazo en adolescentes
Consecuencias embarazo en adolescentesONUSIE
 
Ishavsbyen sykke lmagasinet 2014
Ishavsbyen sykke lmagasinet 2014Ishavsbyen sykke lmagasinet 2014
Ishavsbyen sykke lmagasinet 2014IshavsbyenSykkel
 
Interactive & E-Communication Marketing Plan
Interactive & E-Communication Marketing PlanInteractive & E-Communication Marketing Plan
Interactive & E-Communication Marketing PlanCathy Chao
 
[Imr2014]week01
[Imr2014]week01[Imr2014]week01
[Imr2014]week01JY LEE
 
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...Yoga Prasetyo
 
Wintech 회사소개서
Wintech 회사소개서Wintech 회사소개서
Wintech 회사소개서wte1027
 
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα Β
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα ΒΔιαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα Β
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα ΒΜάκης Χατζόπουλος
 
Solar panel roads
Solar panel roads Solar panel roads
Solar panel roads Roshan Jojo
 

Viewers also liked (16)

Beyond the Platform: Enabling Fluid Analysis
Beyond the Platform: Enabling Fluid AnalysisBeyond the Platform: Enabling Fluid Analysis
Beyond the Platform: Enabling Fluid Analysis
 
Elecciones USA 2012: los 12 factores decisivos
Elecciones USA 2012: los 12 factores decisivosElecciones USA 2012: los 12 factores decisivos
Elecciones USA 2012: los 12 factores decisivos
 
A bubble ply
A bubble plyA bubble ply
A bubble ply
 
California
CaliforniaCalifornia
California
 
Inter-linking of Rivers
Inter-linking of RiversInter-linking of Rivers
Inter-linking of Rivers
 
1, java intro
1, java intro1, java intro
1, java intro
 
Dish Network Profile (Business Communications, NYU Stern - Yu)
Dish Network Profile (Business Communications, NYU Stern - Yu)Dish Network Profile (Business Communications, NYU Stern - Yu)
Dish Network Profile (Business Communications, NYU Stern - Yu)
 
Consecuencias embarazo en adolescentes
Consecuencias embarazo en adolescentesConsecuencias embarazo en adolescentes
Consecuencias embarazo en adolescentes
 
Ishavsbyen sykke lmagasinet 2014
Ishavsbyen sykke lmagasinet 2014Ishavsbyen sykke lmagasinet 2014
Ishavsbyen sykke lmagasinet 2014
 
Nirmal_Resume
Nirmal_ResumeNirmal_Resume
Nirmal_Resume
 
Interactive & E-Communication Marketing Plan
Interactive & E-Communication Marketing PlanInteractive & E-Communication Marketing Plan
Interactive & E-Communication Marketing Plan
 
[Imr2014]week01
[Imr2014]week01[Imr2014]week01
[Imr2014]week01
 
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...
Allianz Indonesia - 11th MR Microinsurance Conference - Upselling on Credit L...
 
Wintech 회사소개서
Wintech 회사소개서Wintech 회사소개서
Wintech 회사소개서
 
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα Β
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα ΒΔιαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα Β
Διαγώνισμα 1ο ΓΕΛ Πετρούπολης - Συστήματα ομάδα Β
 
Solar panel roads
Solar panel roads Solar panel roads
Solar panel roads
 

Similar to 3, OCP - instance management

1, OCP - architecture intro
1, OCP - architecture intro1, OCP - architecture intro
1, OCP - architecture introted-xu
 
Oracle北大青鸟完全教程
Oracle北大青鸟完全教程Oracle北大青鸟完全教程
Oracle北大青鸟完全教程yiditushe
 
12, OCP - performance tuning
12, OCP - performance tuning12, OCP - performance tuning
12, OCP - performance tuningted-xu
 
6, OCP - oracle security
6, OCP - oracle security6, OCP - oracle security
6, OCP - oracle securityted-xu
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作maclean liu
 
11, OCP - awr & alert system
11, OCP - awr & alert system11, OCP - awr & alert system
11, OCP - awr & alert systemted-xu
 
8, OCP - backup with rman
8, OCP - backup with rman8, OCP - backup with rman
8, OCP - backup with rmanted-xu
 
Oracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptOracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptjames tong
 
中纺科技安装实施文档
中纺科技安装实施文档中纺科技安装实施文档
中纺科技安装实施文档liangsuilong
 
10, OCP - flashback
10, OCP - flashback10, OCP - flashback
10, OCP - flashbackted-xu
 
开源应用日志收集系统
开源应用日志收集系统开源应用日志收集系统
开源应用日志收集系统klandor
 
深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmmmaclean liu
 
Altibase管理培训 管理篇
Altibase管理培训 管理篇Altibase管理培训 管理篇
Altibase管理培训 管理篇小新 制造
 
My sql 同步
My sql 同步My sql 同步
My sql 同步Yiwei Ma
 
MySQL Replication新功能介绍
MySQL Replication新功能介绍 MySQL Replication新功能介绍
MySQL Replication新功能介绍 orczhou
 
Basic oracle for developer&beginner
Basic oracle for developer&beginnerBasic oracle for developer&beginner
Basic oracle for developer&beginnermaclean liu
 
中远公司 Java培训资料
中远公司  Java培训资料中远公司  Java培训资料
中远公司 Java培训资料yiditushe
 
1.oracle 11g 用户管理新功能
1.oracle 11g 用户管理新功能1.oracle 11g 用户管理新功能
1.oracle 11g 用户管理新功能WASecurity
 
诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 maclean liu
 

Similar to 3, OCP - instance management (20)

1, OCP - architecture intro
1, OCP - architecture intro1, OCP - architecture intro
1, OCP - architecture intro
 
Oracle北大青鸟完全教程
Oracle北大青鸟完全教程Oracle北大青鸟完全教程
Oracle北大青鸟完全教程
 
12, OCP - performance tuning
12, OCP - performance tuning12, OCP - performance tuning
12, OCP - performance tuning
 
6, OCP - oracle security
6, OCP - oracle security6, OCP - oracle security
6, OCP - oracle security
 
Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作Oracle数据库升级前必要的准备工作
Oracle数据库升级前必要的准备工作
 
11, OCP - awr & alert system
11, OCP - awr & alert system11, OCP - awr & alert system
11, OCP - awr & alert system
 
8, OCP - backup with rman
8, OCP - backup with rman8, OCP - backup with rman
8, OCP - backup with rman
 
Oracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.pptOracle数据库体系结构简介.ppt
Oracle数据库体系结构简介.ppt
 
中纺科技安装实施文档
中纺科技安装实施文档中纺科技安装实施文档
中纺科技安装实施文档
 
10, OCP - flashback
10, OCP - flashback10, OCP - flashback
10, OCP - flashback
 
开源应用日志收集系统
开源应用日志收集系统开源应用日志收集系统
开源应用日志收集系统
 
深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm深入了解Oracle自动内存管理asmm
深入了解Oracle自动内存管理asmm
 
Altibase管理培训 管理篇
Altibase管理培训 管理篇Altibase管理培训 管理篇
Altibase管理培训 管理篇
 
My sql 同步
My sql 同步My sql 同步
My sql 同步
 
MySQL Replication新功能介绍
MySQL Replication新功能介绍 MySQL Replication新功能介绍
MySQL Replication新功能介绍
 
Mysql Replication
Mysql ReplicationMysql Replication
Mysql Replication
 
Basic oracle for developer&beginner
Basic oracle for developer&beginnerBasic oracle for developer&beginner
Basic oracle for developer&beginner
 
中远公司 Java培训资料
中远公司  Java培训资料中远公司  Java培训资料
中远公司 Java培训资料
 
1.oracle 11g 用户管理新功能
1.oracle 11g 用户管理新功能1.oracle 11g 用户管理新功能
1.oracle 11g 用户管理新功能
 
诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础 诗檀软件 Oracle开发优化基础
诗檀软件 Oracle开发优化基础
 

More from ted-xu

7, business event system
7, business event system7, business event system
7, business event systemted-xu
 
6, workflow miscellaneous
6, workflow miscellaneous6, workflow miscellaneous
6, workflow miscellaneousted-xu
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activityted-xu
 
4, workflow tables & api
4, workflow tables & api4, workflow tables & api
4, workflow tables & apited-xu
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebsted-xu
 
2, a simple workflow
2, a simple workflow2, a simple workflow
2, a simple workflowted-xu
 
1, workflow intro
1, workflow intro1, workflow intro
1, workflow introted-xu
 
8, bes tables & api
8, bes tables & api8, bes tables & api
8, bes tables & apited-xu
 
OPM Recipe designer notes
OPM Recipe designer notesOPM Recipe designer notes
OPM Recipe designer notested-xu
 
5, sed
5, sed5, sed
5, sedted-xu
 
4, grep
4, grep4, grep
4, grepted-xu
 
3, regular expression
3, regular expression3, regular expression
3, regular expressionted-xu
 
2, bash synax simplified
2, bash synax simplified2, bash synax simplified
2, bash synax simplifiedted-xu
 
1, shell intro
1, shell intro1, shell intro
1, shell introted-xu
 
6, awk
6, awk6, awk
6, awkted-xu
 
8, lamp
8, lamp8, lamp
8, lampted-xu
 
6, vim
6, vim6, vim
6, vimted-xu
 
5, system admin
5, system admin5, system admin
5, system adminted-xu
 
4, files & folders
4, files & folders4, files & folders
4, files & foldersted-xu
 

More from ted-xu (19)

7, business event system
7, business event system7, business event system
7, business event system
 
6, workflow miscellaneous
6, workflow miscellaneous6, workflow miscellaneous
6, workflow miscellaneous
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activity
 
4, workflow tables & api
4, workflow tables & api4, workflow tables & api
4, workflow tables & api
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebs
 
2, a simple workflow
2, a simple workflow2, a simple workflow
2, a simple workflow
 
1, workflow intro
1, workflow intro1, workflow intro
1, workflow intro
 
8, bes tables & api
8, bes tables & api8, bes tables & api
8, bes tables & api
 
OPM Recipe designer notes
OPM Recipe designer notesOPM Recipe designer notes
OPM Recipe designer notes
 
5, sed
5, sed5, sed
5, sed
 
4, grep
4, grep4, grep
4, grep
 
3, regular expression
3, regular expression3, regular expression
3, regular expression
 
2, bash synax simplified
2, bash synax simplified2, bash synax simplified
2, bash synax simplified
 
1, shell intro
1, shell intro1, shell intro
1, shell intro
 
6, awk
6, awk6, awk
6, awk
 
8, lamp
8, lamp8, lamp
8, lamp
 
6, vim
6, vim6, vim
6, vim
 
5, system admin
5, system admin5, system admin
5, system admin
 
4, files & folders
4, files & folders4, files & folders
4, files & folders
 

3, OCP - instance management

  • 2. Overview • 实例管理主要讨论以下方面的内容: – 数据库初始化参数的设置 – 数据库的启动和关闭 – 数据库告警日志和跟踪文件 – 数据字典和动态性能视图 实例的管理对于数据库的性能调优 和 灾难 恢复均十分重要, 一个好的oracle DBA应当十 分熟悉这些内容.
  • 3. Initialization Parameters - Overview • 初始化参数控制了oracle数据库的各个方面, 这 些参数中大概有300个是支持DBA进行设定的, 它们又分为基础参数(大概33个, 根据版本不同) 和高级参数, 通常而言DBA需要考虑的是那些基 础参数; 另外还有1500个左右的隐藏参数, 这些 参数是不支持DBA进行设定的; • 初始化参数分为静态的和动态两种类型, 前者 在实例启动之后不能被修改, 大部分参数都是 动态的, 这些参数的设置保存在pfile或者动态 的spfile中; 除了DB_NAME参数之外所有的参数 都有默认值, 如果没有在参数文件中进行设置, 则会使用它们的默认值.
  • 4. Initialization Parameters - Parameter file • oracle数据库可以使用pfile或者spfile作为启动参数文件, pfile的命名格式为: – init${ORACLE_SID}.ora 或者 init.ora spfile是在oracle的后期版本引入的, 命名格式为: – spfile${ORACLE_SID}.ora 或者 spfile.ora spfile相比pfile的好处在于: – 动态改变参数, 无需重启数据库; – spfile不能被人工编辑, 从而减少错误的发生; – 可以使用RMAN对spfile进行备份. • 实例在启动时会查看${ORACLE_HOME}/dbs(Unix, linux)或者 ${ORACLE_HOME}/database目录, 并按照如下顺序读取参数文件: – spfile${ORACLE_SID}.ora (SPFILE = Server Parameter File) – spfile.ora (SPFILE) – init${ORACLE_SID}.ora (PFILE) – init.ora (PFILE) 使用下面的sql语句查看当前使用的是pfile还是spfile: SELECT DECODE (value, NULL, 'PFILE', 'SPFILE') "Init File Type", value FROM sys.v_$parameter WHERE name = 'spfile'; • 使用如下语句创建pfile或者spfile create spfile [='spfilename'] from pfile [='pfilename']; create pfile [='pfilename'] from spfile [='spfilename'];
  • 5. Initialization Parameters - Static vs. Dynamic • 可以通过视图v$parameter和v$spparameter查 看当前的启动参数的设置, 前者返回的是当前 实例运行时参数设置, 后者则是spfile中保存的 参数设置, 通常情况下两者相同. 不同的情况可 能发生在: DBA修改了某个静态参数的值, 并且 写入了spfile; 或者修改某个动态参数的值, 但未 写入spfile. • 通过如下sql语句判断参数是静态的还是动态的: select NAME, ISSES_MODIFIABLE, ISSYS_MODIFIABLE from v$parameter where name like '%%';
  • 6. Initialization Parameters - Alter Parameter Value • 使用alter system语句修改初始化参数, 该语句会在系统级别修改 参数的值, 格式如下: alter system set pname=pvalue [scope=both|memory|spfile] scope选项各个值的含义分别是: – both 同时修改内存和spfile – memory 仅修改内存 – spfile 仅修改spfile 默认情况下scope值为both. 需要注意以下情况会导致 该语句失败: – 修改静态参数但scope未指定为spfile; – 使用pfile启动数据库但指定scope为spfile; • 根据不同的参数, 可以在system级别, session级别或者同时允许在 这两个级别进行设置. 比如optimizer_mode参数既可以在system级 别也可以在session级别设置, nls_date_format参数则只允许在会 话级别进行设置. 会话级别设置则使用alter session 语句, 该语句 的格式: alter session set pname=pvalue
  • 7. Initialization Parameters - Basic Parameters • 通常DBA需要考虑的是基础启动参数, 使用如下sql 查询有哪些基础参数: select name,value from v$parameter where isbasic='TRUE' order by name; 下面是基础参数的一个列表(这些参数将分别在之 后的章节中讨论):
  • 8. Initialization Parameters - Basic Parameters
  • 9. Initialization Parameters - Basic Parameters
  • 10. Database Control - Overview • Database Control是oracle提供的一个基于Java & Perl编写的工 具, 用于实现对数据库服务器的远程控制, 需要通过web浏览器 进行操作. 以oracle系统用户登录, 使用以下命令启动/停止/查 看Database Control的状态(执行命令之前确保正确设置了 ORACLE_HOME, ORACLE_SID, PATH等环境变量): emctl start|stop|status dbconsole 使用类似如下的链接进行登录: https://hostname:port/em/, 会 打开下面的页面. 默认端口为1158, 具体可以查看 $ORACLE_HOME/install/portlist.ini文件. • Database Control是oracle推荐用于数据库管理的方式, 可以用 于执行如下动作: – 启动和关闭数据库以及监听器; – 查看数据库运行状态, 数据库配置状态; – 查看数据库性能信息.
  • 11. Database Listener • oracle数据库监听器用于接收对数据库的连接请求, 有3中方式启动监听器: – 使用lsnrctl工具命令 使用oracle用户登录后, 运行lsnrctl start|stop|status命令 – 使用database control 在相关的页面中可以找到启动与停止监听器的链接 – windows平台上可注册为系统服务
  • 12. SYSDBA vs. SYSOPER • SYSDBA 和 SYSOPER是oracle数据库的角色, 角色是一 个权限控制的概念在以后会讲到. 通过操作系统或 者密码文件验证, 用户可以以SYSDBA或者SYSOPER角 色登录. SYSOPER角色可以在sql*plus中执行如下命令: startup shutdown alert database mount|open|close|dismount alter [database|tablespace] begin|end backup recover SYSDBA角色拥有对数据库的最高控制权限, 比如以 SYSDBA登录的用户可以创建用户, 创建数据库等; 默 认情况下只有SYS用户拥有SYSDBA/SYSOPER角色, SYS 用户可以将这些角色分配给其他的用户.
  • 13. Database Startup - Overview • 可以通过两种方式启动oracle数据库: – 通过SQL*PLUS命令行工具 SQL*PLUS是oracle自带的一个oracle客户端工具, 可以通过该工具连 接本地或者远程数据库, 并进行相应的操作. DBA通常使用如下的两 个步骤登录数据库: sqlplus /nolog # 进入sqlplus, 不提示验证信息 connect username/passwd [as sysdba] # 登录数据库 startup # 运行startup命令 – 使用Database ControL • Logon by OS Auth 如果可以访问数据库所在的操作系统并且具备相应的权限, 那么 则可以绕过数据库的验证直接以SYSDBA的身份登录, 这要求系 统用户在dba系统用户组中. 在创建数据库时, 我们创建了oracle 用户并将它设置在dba用户组中, 因此该用户可以直接以SYSDBA 身份登录, 通过以下命令: sqlplus / as sysdba. 当用户以这种方式 登录数据库时实际上是以SYS用户登录.
  • 14. Database Startup - Startup: nomount, mount and open • oracle数据库的启动可以分为这些阶段: 启动实例(内存+ 进程), 挂载数据库(mount), 打开数据库(open). 数据库具 有如下状态: – SHUTDOWN(关闭) – NOMOUNT 此时数据库实例已经启动但数据库没有被挂载. – MOUNT 此时数据库实例已经启动, 并且已读取控制文件. – OPEN 数据库实例已经启动, 数据文件被打开, 等待客户端用户连接. • 在不同的数据库启动阶段需要读取相应的文件, 那么 oracle是如何读取到这些文件的呢? 下面按照数据库启动 的各个阶段进行介绍. – NOMOUNT 此阶段需要读取数据库初始化参数文件, 参考《 Parameter file》
  • 15. Database Startup - Startup: nomount, mount and open – MOUNT 此阶段需要读取控制文件, 控制文件是通过前一 阶段读取的CONTROL_FILES参数进行定位的. 这一 阶段会读取数据库数据文件/在线重做日志文件 的位置信息, 但此时不会定位和读取这些文件. – OPEN 此阶段会根据前一阶段读取的文件位置信息对这 些文件进行定位和打开.
  • 16. Database Startup - Startup: nomount, mount and open
  • 17. Database Shutdown • 关闭数据库的顺序与打开数据库正好相反, 首先数据库被关闭, 然后被卸载, 最后实例被终止. 在关闭数据库阶段, 所有的回话 被终止, 活动的事务被回滚, CKPT进程被调用. 最后, 数据文件 和在线重做日志文件被关闭; 卸载阶段, 控制文件被关闭; 最后, SGA内存被释放相应的后台进程被终止, 实例终止. • Shutdown: NORMAL, TRANSACTIONAL, IMMEDIATE, and ABORT 执行shutdown时, 可以指定为上述四个选项: NORMAL 默认选项, 不允许新的会话, 当所有的用户都退出登录时, 数据库被关闭; TRANSACTIONAL 不允许新的会话, 不处在事务中的会话被终止, 其它的会话在事务完成时被 终止. 当所有的会话都终止时, 数据库被关闭; IMMEDIATE 不允许新的会话, 所有当前连接的会话被终止, 活动的事务被回滚, 然后数 据库被关闭; ABORT 相当于断电(power failure), 实例被立即终止. TIP: ABORT操作不会损坏数据库, 但是在abort操作之后不建议对数据库作 备份操作.
  • 18. Database Shutdown • Shutdown: NORMAL, TRANSACTIONAL, IMMEDIATE, and ABORT 前三种类型的数据库关闭均被称为有序的(orderly), 在所有的会话终止之后PMON会回滚所有未完成的 事务, 之后CKPT进程被调用, LGWR进程将所有的重做 日志写入文件; 最后文件句柄被关闭. 在这种情况下, 数据库最终处在一致的(consistent)状态. ABORT类型的关闭被称为非有序的(disorderly), 此时 数据库处在一种不一致的(inconsistent)状态. 在数据 库下一次启动时, 会修复这种状态. • 可以使用如下命令代替shutdown: alter database close; alter database dismount;
  • 19. Alert Log and Trace File • 告警日志文件(Alert log file)存放在数据库 BACKGROUND_DUMP_DEST参数指定的位置, 按照alert_SID.log的 格式命名, 该文件包含了对实例或者数据库采取的某些关键操作, 具体包含: – 启动和停止数据库操作, 包含中间命令比如alter database mount; – 实例内部错误, 比如ORA-600错误; – 检测到的数据文件块损坏; – 死锁信息; – 影响数据库物理存储结构的操作, 比如创建或者重命名数据文件或 者重做日志文件; – 修改启动参数的ALTER SYSTEM命令; – 重做日志切换和日志归档操作. 关于数据库启动的告警日志会显示所有非默认配置的初始化参数, 结 合ALTER SYSTEM/DATABASE命令的记录, 可以得到数据库/实例的所有 历史变化, 这对于数据库问题的诊断有很大的价值. Tip: 对于很多的DBA而言, 告警日志是他们诊断问题的第一站.
  • 20. Data Dictionary Views • Oracle数据字典是对数据库的定义, 动态性能视图则包含 了当前实例的运行性能信息, 这两者对于实例性能的监 控和诊断非常具有参考价值. • Data Dictionary Views 数据字典包含的是数据库元数据, 它包括: 数据库的物理 和逻辑描述, 数据库对象(表/索引/PLSQL过程)描述, 完整 性约束, 用户定义, 安全信息, 以及性能监控信息. 数据字 典以段(segment) 存储在SYSTEM/SYSAUX表空间中. 常用 的数据字典视图有: – DBA_OBJECTS A row for every object in the database – DBA_DATA_FILES A row describing every datafile – DBA_USERS A row describing each user – DBA_TABLES A row describing each table – DBA_ALERT_HISTORY Rows describing past alert conditions
  • 21. Dynamic Performance Views • 有超过300多个的动态性能视图, 这些视图的名称以 V$开头, 实际上它们是指向相应的V_$视图的同义词. 动态性能视图的数据大部分基于实例, 比如 V$INSTANCE/V$SYSSTAT是基于实例的视图, 这些视图 的数据只要实例启动了就可以读取比如数据库处在 nomount状态也可以读取这些视图;有一小部分则是 根据控制文件得到的, 比如v$database, v$datafile, 这 些视图必须等到数据库打开之后才能够被访问. • 动态性能视图在数据库启动阶段被创建, 随着实例 的运行数据会增加或者被更新. 在数据库关闭时, 这 些视图被删除. TIP: 性能视图和数据字典视图会存在一些重叠, 比如 v$tablespace描述的是数据字典信息; 另外字典视图 通常是复数, 而性能视图为单数.
  • 22. END