zoukankan      html  css  js  c++  java
  • OCA读书笔记(4)

     Objectives:

    •Start and stop the Oracle database and components
    •Use Oracle Enterprise Manager
    •Access a database with SQL*Plus
    •Modify database initialization parameters
    •Describe the stages of database startup
    •Describe database shutdown options
    •View the alert log
    •Access dynamic performance views
    --------------------------------------------------------------------------------------------------

    1.启动企业管理器

    su - grid
    lsnrctl start

    su - oracle
    emctl status dbconsole
    emctl start dbconsole

    https://machinename:port/em
    port can be found in $ORACLE_HOME/install/portlist.ini

    firefox https://easthome:1158/em

    2.使用SQL*Plus
    alter user scott account unlock identified by tiger;
    sqlplus /nolog;
    conn scott/tiger;

    help index
    help @

    当前会话生效
    define _editor='vi'
    ed

    永久生效
    cd $ORACLE_HOME/sqlplus/admin
    vi glogin.sql

    col empno for 9999
    col ename for a8
    col job for a10
    col mgr for 9999

    set pagesize 100
    set linesize 140

    3.初始化参数文件
    二进制(服务器参数文件):$ORACLE_HOME/dbs/spfileorcl.ora
    文本(初始化参数文件):$ORACLE_HOME/dbs/initorcl.ora

    sid: vi .bash_profile

    根据二进制创建文本:
    create pfile from spfile;
    /u01/app/oracle/product/11.2.0/db/dbs/init<ORACLE_SID>.ora

    根据文本创建二进制:
    create spfile from pfile;
    /u01/app/oracle/product/11.2.0/db/dbs/spfile<ORACLE_SID>.ora

    select name, value from v$parameter;
    select name, value from v$parameter where name like '%asm%';

    show parameter asm;

    静态参数:只允许改参数文件
    动态参数:可以改内存也可以改参数文件
    alter session set * = *;(会话级别) -- 当不指定scope时,内存和参数文件都改变
    alter system set * = * scope = spfile/memory/both;(系统级别)

    select distinct issys_modifiable from v$parameter;
    IMMEDIATE--立即生效
    FALSE--重启生效(静态)
    DEFERRED--延迟生效

    class 2
    -------------------------------------------------------------------
    4.数据库启动和关闭

    1) NoMount-Instance started
    实例:内存和后台进程
    读取参数文件:$ORACLE_HOME/dbs/spfileorcl.ora
    rm -rf initorcl.ora
    mv spfileorcl.ora /u01/app/oracle
    sqlplus / as sysdba
    shutdown abort
    startup

    echo $ORACLE_SID
    先找spfileorcl.ora,再找initoracl.ora,找不到报initoracl.ora找不到
    mv /u01/app/oracle/spfileorcl.ora $ORACLE_HOME/dbs/spfileorcl.ora

    startup nomount
    ipcs -m

    ----------------------------------------------------
    su - grid
    crs_stat -t
    srvctl stop database -d orcl -o abort
    srvctl remove database -d orcl

    tail -f alert.log
    ----------------------------------------------------
    演示:更改参数文件之后启动NoMount

    2) Mount:
    alter database mount;
    读取控制文件
    show parameter db_name
    alter database backup controlfile to trace as '/u01/app/oracle/control.bak'

    vi /u01/app/oracle/control.bak
    startup nomount;

    create pfile from spfile;

    cd $ORACLE_HOME/dbs/

    vi initorcl.ora -- modify db_name to 'orcl1'

    sqlplus / as sysdba;

    shutdown immediate;

    startup nomount;

    create spfile from pfile;

    alter database mount; -- error

    shutdown immediate;

    vi initorcl.ora -- modify db_name back to 'orcl'
    startup nomount;

    create spfile from pfile;
    alter database mount;
    演示:创建新的数据库,相互挂载;
    控制文件中的名字和参数文件中的名字一致即为挂载。

    cd $ORACLE_BASE/diag
    vi alert_orcl.log
    演示:校验控制文件的完整性和一致性
    完整性:实际存在的控制文件要和参数文件中定义的一致
    一致性:多份控制文件中内容必须一致

    !cp new old

    3) 打开数据库
    alter database open;
    读取控制文件中定义的数据文件和日志文件
    校验校验数据文件和日志文件的完整性
    校验控制文件,数据文件,日志文件的一致性

    4) Shutdown

    Abort -- 非一致性关闭

    Immediate
    强制执行检查点和关闭文件(直接rollback)

    Transactional
    强制执行检查点和关闭文件
    等待当前事务结束(commit[显式和隐式],rollback)

    Normal
    强制执行检查点和关闭文件
    等待当前所有事务结束
    等待当前所有会话结束(关闭连接才算会话结束)

    默认是Normal

    5.查看告警日志

    警告日志文件位置:ORACLE_BASE/diag/rdbms/oradb1/oradb1/trace

    6.动态性能视图
    来源于内存和控制文件
    select name from v$fixed_table where name like '%V$%'
    desc dba_objects
    select object_name, object_type from dba_objects where object_name='V$INSTANCE';
    desc dba_synonyms
    select owner, synonym_name, table_name from dba_synonyms where synonym_name='V$INSTANCE';
    select object_name, object_type from dba_objects where object_name='V_$INSTANCE';
    desc dba_views;
    select text from dba_views where view_name='V_$INSTANCE';

    select * from dictionary;
    select * from dict;

    dba_  仅dba可见,包含所有
    all_  当前用户可以访问的所有,包括自己和和经过授权的别人的
    user_ 当前用户拥有的所有

  • 相关阅读:
    Martix工作室考核题 —— 打印一个菱形
    Martix工作室考核题 —— 打印一个菱形
    Martix工作室考核题 —— 打印九九乘法表
    Martix工作室考核题 —— 打印九九乘法表
    Martix工作室考核题 —— 打印九九乘法表
    Martix工作室考核题 —— 201938 第三题
    Martix工作室考核题 —— 201938 第三题
    Martix工作室考核题 —— 201938 第三题
    Martix工作室考核题 —— 201938 第一题
    fiddler模拟发送post请求
  • 原文地址:https://www.cnblogs.com/thlzhf/p/3357817.html
Copyright © 2011-2022 走看看