zoukankan      html  css  js  c++  java
  • 数据库起动三阶段、停库四种模式、手工创建数据库

    
    
    

    startup nomount

    nomount 状态可以做什么?startup nomount

    • 可以修改参数
    • 可以查看内存和后台进程的信息
    • 可以创建数据库
    • 可以重建控制文件

    alter database mount;

    mount 状态可以做什么?

    • 可以备份、还原、恢复
    • 可以移动数据库的文件
    • 可以进行数据文件的offline
    • 可以打开和关闭归档模式
    • 可以打开和关闭闪回数据库的功能

    关闭服务

    SQL> conn / as sysdba
    已连接。
    SQL> shut immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL>

    关闭后尝试连接scott

    SQL> show user
    USER 为 "SYS"
    SQL> conn scott/tiger
    ERROR:
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    进程 ID: 0
    会话 ID: 0 序列号: 0

    启动数据库到 nomount 状态

    SQL> conn / as sysdba
    已连接到空闲例程。
    SQL> startup nomount
    ORACLE 例程已经启动。
    
    Total System Global Area 3373858816 bytes
    Fixed Size                  2180424 bytes
    Variable Size            1862273720 bytes
    Database Buffers         1493172224 bytes
    Redo Buffers               16232448 bytes
    SQL> conn scott/tiger
    ERROR:
    ORA-01033: ORACLE initialization or shutdown in progress
    进程 ID: 0
    会话 ID: 0 序列号: 0

    查看启动到那个阶段

    SQL> conn / as sysdba
    已连接。
    SQL> select status from v$instance;
    
    STATUS
    ------------------------
    STARTED

    查看数据库实例

    SQL> show parameter name
    
    NAME                                 TYPE                   VALUE
    ------------------------------------ ---------------------- ------------------------------
    db_file_name_convert                 string
    db_name                              string                 orcl
    db_unique_name                       string                 orcl
    global_names                         boolean                FALSE
    instance_name                        string                 orcl
    lock_name_space                      string
    log_file_name_convert                string
    service_names                        string                 orcl
    SQL>

    启动nomount查看内存相关信息

    SQL> select * from v$sgainfo;
    
    NAME                                                                  BYTES RESIZE
    ---------------------------------------------------------------- ---------- ------
    Fixed SGA Size                                                      2180424 No
    Redo Buffers                                                       16232448 No
    Buffer Cache Size                                                1493172224 Yes
    Shared Pool Size                                                  469762048 Yes
    Large Pool Size                                                    16777216 Yes
    Java Pool Size                                                     16777216 Yes
    Streams Pool Size                                                         0 Yes
    Shared IO Pool Size                                                       0 Yes
    Granule Size                                                       16777216 No
    Maximum SGA Size                                                 3373858816 No
    Startup overhead in Shared Pool                                   100663296 No
    Free SGA Memory Available                                        1358954496
    
    已选择12行。

    启动数据库到第 mount 状态

    SQL> alter database mount;
    
    数据库已更改。
    
    SQL> select status from v$instance;
    
    STATUS
    ------------
    MOUNTED

    可以查看有多少个数据文件

    SQL> select name from v$datafile;
    
    NAME
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    E:ORACLEORADATAORCLSYSTEM01.DBF
    E:ORACLEORADATAORCLSYSAUX01.DBF
    E:ORACLEORADATAORCLUNDOTBS01.DBF
    E:ORACLEORADATAORCLUSERS01.DBF
    E:ORACLEORADATAORCLEXAMPLE01.DBF

    有多少个临时文件

    SQL> select name from v$tempfile;
    
    NAME
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    E:ORACLEORADATAORCLTEMP01.DBF

    有多少个日志文件

    SQL> select member from v$logfile;
    
    MEMBER
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    E:ORACLEORADATAORCLREDO03.LOG
    E:ORACLEORADATAORCLREDO02.LOG
    E:ORACLEORADATAORCLREDO01.LOG

    启动数据库到最后一个阶段

    SQL> alter database open;
    
    数据库已更改。

    这时数据库正常启动了

    SQL> conn scott/tiger
    已连接。
    SQL> select * from tab;
    
    TNAME                          TABTYPE  CLUSTERID
    ------------------------------ ------- ----------
    AAA                            TABLE
    BONUS                          TABLE
    COPY_EMP                       TABLE
    DEPT                           TABLE
    EMP                            TABLE
    SALGRADE                       TABLE
    T01                            TABLE
    T03                            TABLE
    VU10                           VIEW
    VU20                           VIEW
    VU30                           VIEW

    以只读的方式打开 用这种方式打开后只能用select

    SQL> alter database open read only;

    数据库的停止(四种模式)

    1.正常停库: shutdown normal = shutdown

    普通用户的连接不允许建立

    等待查询结束

    等待事物结束

    产生检查点(数据同步)

    关闭联机日志和数据文件

    关闭控制文件

    关闭实例

    2、事务级停库: shutdown transactional

    普通用户的连接不允许建立

    查询被终止

    等待事务结束

    产生检查点(数据同步)

    关闭联机日志和数据文件

    关闭控制文件

    关闭实例

    3、立即停库: shutdown immediate(生产库最常用的停库方式)

    普通用户的连接不允许建立

    查询被终止

    事务被回退

    产生检查点(数据同步)

    关闭联机日志和数据文件

    关闭控制文件

    关闭实例

    4、强制停库: shutdown abort

    相当于拔电源

        (停止之后的数据库是脏库)

  • 相关阅读:
    POJ3061(尺取法)
    POJ2739(尺取法)
    HDOJ4763(KMP原理理解)
    HDOJ5521(巧妙构建完全图)
    UVALive7261(2015ACM/ICPC北京赛区现场赛A)
    POJ1745动态规划
    POJ1273(最大流入门)
    HDOJ5883(欧拉路)
    HDOJ5437(优先队列)
    HDOJ5875(线段树)
  • 原文地址:https://www.cnblogs.com/shizhengwen/p/14673461.html
Copyright © 2011-2022 走看看