对数据库管理、配置和维护的简单认识

 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;(文件需要手动删除)

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

转载于:https://www.cnblogs.com/wjshan0808/archive/2013/04/12/3017046.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值