zoukankan      html  css  js  c++  java
  • 对数据库管理、配置和维护的简单认识

     1.创建数据库

    分享李老师做的纯手工创建数据库的视频(较早的):http://pan.baidu.com/share/link?shareid=408632&uk=3912660076

    感谢.

    1. 创建必要的相关目录
    2. 创建初始化参数文件
    3. 设置环境变量Oracle_sid
    4. 创建实例
    5. 创建口令文件
    6. 启动数据库到nomount(实例)状态
    7. 执行建库脚本
    8. 执行catalog脚本创建数据字典
    9. 执行catproc创建package包
    10. 执行pupbld
    11. 由初始化参数文件创建spfile文件
    12. 执行scott脚本创建scott方案
    13. 用命令测试数据库创建是否完成
    14. 配置EM,使得能够通过浏览器管理和控制数据库

    Forexam:创建StuDB数据库-》

    (1.打开命令行工具,创建必要的相关目录
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\adump
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\bdump
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\cdump
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\dpdump
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\udump
    C:\>mkdir C:\oracle\product\10.2.0\admin\StuDB\pfile
    C:\>mkdir C:\oracle\product\10.2.0\oradata\StuDB

    C:\oracle\product\10.1.0\admin\StuDB目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。

                    \bdump目录存放的是数据库运行过程中的各个后台进程的跟踪信息。

                    \Udump目录存放和特定会话相关的跟踪信息

    C:\oracle\product\10.2.0\oradata\StuDB\目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件

       2、创建初始化参数文件:(可以通过拷贝现有的初始化参数文件并将其做适当的修改即可,从而不必要用手工去一句一句地写出来,因为初始化参数文件                                           的结构体系基本上都是一样的。 安装Oracle的时候,系统已经安装了一个名为orcl的数据库,

                 于是可以从它那里得到一份初始化参数文件。)

                找到C:\oracle\product\10.2.0\admin\orcl\pfile\init.ora文件,拷贝一份,

                粘贴到C:\oracle\product\10.2.0\db_1\database目录下,将其改名为:initStuDB.ora。

                记事本打开将里面的orcl替换为‘StuDB'

       3、打开命令行,设置环境变量oracle_sid
              C:\>set oracle_sid=book

    4、创建实例(即后台控制服务)

      C:\>oradim –new –sid  book

        oradim是创建实例的工具程序名称,

        -new表明执行新建实例,

        -delete表明执行删掉实例,

        -sid指定实例的名称。

      5、创建口令文件
        C:\>orapwd file=C:\oracle\product\10.2.0\db_1\database\PWDStuDB.ora password=o123 entries=2
            orapwd是创建口令文件的工具程序各称,

            file参数指定口令文件所在的目录和文件名称,

            password参数指定sys用户的口令,

            entries参数指定数据库拥用DBA权限的用户的个数。


    请注意,这里的命令要一行输入,中间不得换行,否则会出现不必要的错误。
    口令文件是专门存放sys用户的口令,因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的口令单独存放在口令文件中,这样数据库未打开时也能进行口令验证

      6、启动数据库到nomount(实例)状态
          C:\>sqlplus /nolog
          SQL>connect sys/o123 as sysdba ---这里是用sys连接数据库
          SQL>startup nomount

    7、执行建库脚本StuDB.sql

     Create database StuDB
    controlfile reuse
    datafile  'c:\oracle\product\10.2.0\oradata\StuDB\system01.dbf' size 300M reuse autoextend on next 10240K maxsize unlimited extent management local
    sysaux datafile  'c:\oracle\product\10.2.0\oradata\StuDB\sysaux01.dbf'
    size 120M reuse autoextend on next 10240K maxsize unlimited
    default temporary tablespace temp
    tempfile  'c:\oracle\product\10.2.0\oradata\StuDB\temp01.dbf' size 20M reuse autoextend on next 640K maxsize unlimited
    undo tablespace "UNDOTBS1"
    datafile  'c:\oracle\product\10.2.0\oradata\StuDB\undotbs01.dbf' size 200M reuse autoextend on next 5120K maxsize unlimited
    logfile group 1  ('c:\oracle\product\10.2.0\oradata\StuDB\redo01.log')  size 10240K,
          group 2  ('c:\oracle\product\10.2.0\oradata\StuDB\redo02.log')  size 10240K,
          group 3  ('c:\oracle\product\10.2.0\oradata\StuDB\redo03.log')  size 10240K
    character set zhs16gbk;

      8、执行catalog脚本创建数据字典

        SQL>@ C:\oracle\product\10.2.0\db_1\rdbms\admin\catalog.sql

      9、执行catproc创建package包

        SQL>@ C:\oracle\product\10.2.0\db_1\rdbms\admin\catproc.sql

      10、执行pupbld

        在执行pupbld之前要把当前用户(sys)转换成system,即以system账户连接数据库。因为此数据库是刚建的,所以system的口令是系统默认的口令,即manager。你可以在数据库建好以后再来重新设置此账户的口令。

         SQL>connect system/manager

         SQL>start C:\oracle\product\10.2.0\db_1\sqlplus\admin\pupbld.sql

        用以下语句将用户切换到SYS

          Connect sys/o123 as sysdba 

      11、由初始化参数文件创建spfile文件
        SQL>create spfile from pfile;
      12、执行scott脚本创建scott方案
        SQL>start C:\oracle\product\10.2.0\db_1\rdbms\admin\scott.sql
      13、用以下命令测试数据库创建是否完成:
        SQL>select * from scott.emp;
    如果能够看到雇员信息正确显示,就说明数据库建立已完成。

    执行以上步骤之后,并没有创建EM资料库,也就是OracleDBConsolebook服务尚未创建,无法通过EM进行数据库管理和控制

      14、配置EM,使得能够通过浏览器管理和控制数据库

        SQL> alter user dbsnmp identified by o123;

        C> CD C:\oracle\product\10.2.0\db_1\bin

        C> Set oracle_sid=book

        C> emca –repos recreate

        C> emca –config  dbcontrol db

        C> emctl status dbconsole

    .....................................

    强烈建议:一定要保存数据库的创建脚本信息。不时的查看有助于学习。(这里未给出相关内容)

    呵呵,完成了。

    2.启动数据库的步骤

      步骤一 创建并启动例程
           此时的例程还没有与一个确定的数据库相联系,或者说数据库是否存在对例程的启动并没有影响。如果初始化参数文件或参数设置有误,则无法启动例程。

          参数文件中初始化参数决定如何启动例程

       步骤二 装载数据库       

        装载数据库时,例程将打开数据库的控制文件,根据初始化参数control_files的设置找到控制文件,并从中获取数据库名称、数据文件的位置和名称等关于数据库物理结构的信息,为下一步打开数据库做好准备。在装载阶段,例程并不会打开数据库的物理文件、即数据文件和重做日志文件,所以数据库还是处于关闭状态。只有数据库管理员通过部分命令修改数据库,而用户无法与数据库建立连接或会话。

      步骤三 打开数据库       

        打开数据库时,例程将打开所有的联机状态的数据文件和重做日志文件。         

    只有将数据库设置为打开状态,数据库才处于正常运行状态,此时用户才能与数据库建立连接或会话,以存取数据库中的信息。

    3.Oracle数据库实例的状态

        已启动(NOMOUNT):只读取初始化参数文件、初始化SGA和启动后台进程,创建并启动实例,但不装载数据库。该模式用于重新创建控制文件,对控制文件进行恢复或从头重新创建数据库。因为此状态下没有打开数据库,所以不允许用户访问。该状态也称为“不装载”。

    (数据库服务器操作:
     读取参数文件
     根据参数设置分配空间
     启动后台进程
     打开报警(或跟踪)文件,记录启动过程
     
    用户操作:
     创建数据库,创建文件
     重建控制文件)

        已装载(MOUNT):读取初始化参数文件、初始化SGA和启动后台进程,创建并启动实例。并且根据初始化参数control_files的值,找到并打开控制文件,找出数据库的物理结构信息装载数据库,但不打开数据库。该模式用于更改数据库的归档模式或执行恢复操作,还用于数据文件恢复。因为此状态下没有打开数据库,所以不允许用户访问。

    (数据库操作:  读取控制文件:得到数据库信息  将数据库和实例关联在一起

    用户操作:  操作数据库的归档和非归档模式,改变归档模式  修改控制文件,重做数据文件的名称和路径  数据库的备份和恢复)

        打开(OPEN):读取初始化参数文件、初始化SGA和启动后台进程,创建并启动实例。并且根据初始化参数control_files的值,找到并打开控制文件,找出数据库的物理结构信息装载数据库,打开各种数据库文件,处于联机状态。该模式是默认的启动模式,它允许任何有效用户连接到数据库,并执行典型的数据访问操作。

    (数据库操作:  读取文件的SCN号,判断数据一致性,是否打开或回滚。  检查数据文件状态

    用户操作:  查看数据)

        关闭(CLOSE):将Oracle实例从允许用户访问数据库的状态转变为休止状态。关闭操作首先终止用户访问数据库所需的进程,然后释放计算机中供Oracle运行使用的那部分内存。

    4.启动数据库命令

    ( 默认的启动数据库操作,直接使用STARTUP命令即可实现此功能。使用此种方式启动数据库后,用户可以连接到数据库并执行数据访问操作。
          除了启动数据库实例、装载并打开数据库外,STARTUP命令还将从默认位置读取初始化参数。)

    5.关闭数据库实例

      只有以SYSDBA或SYSOPER身份登录到SQL*Plus之后,才能执行关闭数据库的操

    6.关闭数据库的模式

    7.关闭数据库实例

      在Em中关闭数据库实例(准备:要将本机开机用户管理员加进本地安全设置---》作为批处理作业登录)很重要

         不然会出现   RemoteOperationException: ERROR: Wrong password for user

    8.在Enterprise Manager中关闭数据库

      用户需要拥有管理员的权限才能关闭数据库实例,包括主机操作系统的管理员和当前数据库实例的SYSDBA用户

        界面操作易于理解的......(*^__^*) 嘻嘻……

      相反的也可以启动的。

    9.改变数据库的状态

    装载数据库实例。   

    可用以下语句将数据库由Nomount状态改变到mount状态

          alter database mount;   

    将数据库由mount状态改变到open状态

          alter database open;   

    以只读方式打开数据库。

          alter database open read only;

    数据库状态可以由低级向高级转换,但不能跳级,也不可逆向

    10.删除数据库(Database Configuration Assistant)

       命令: DROP DATABASE;(文件需要手动删除)

    ..........................


  • 相关阅读:
    Oracle中字符串连接的实现方法
    Could not Open Install.Log File解决方法
    重新注册IIS
    Sqlserver 语法总结
    无法向会话状态服务器发出会话状态请求
    Windows Live Writer发布测试
    IIS不支持apk文件下载
    “未能加载文件或程序集“×××”或它的某一个依赖项。试图加载格式不正确的程序”问题的解决
    IIS安装
    Eclipse运行内存溢出
  • 原文地址:https://www.cnblogs.com/wjshan0808/p/3017046.html
Copyright © 2011-2022 走看看