Oracle超详细笔记3--数据库管理

廉价感情. 提交于 2019-12-27 11:52:07

一、数据库创建

利用图形界面DBCA(数据库配置向导)创建数据库。

DBCA(DataBase Configuration Assistant)是一款图形化用户界面工具,重要用来帮助数据库管理员快速直观地创建数据库。单击“开始/程序/ Oracle - OraDb11g_home1/配置和移植工具/ Database Configuration Assistant”命令

二、SQL*Plus概述

SQL*Plus是Oracle提供的访问数据库服务器的工具软件,是Oracle的核心产品。SQL指结构化查询语言;Plus指Oracle将标准SQL语言进行扩展,提供另外一些Oracle服务器能够接受和处理的命令。通过SQL*Plus直接存取Oracle数据库,包括数据提取、数据库结构的修改和数据库对象的管理。

 

SQL*Plus具有很强的功能,其主要作用如下

输入、编辑、存取和运行SQL命令。

测试SQL、PL/SQL程序段的正确性。

对查询结构进行格式化、计算、存储、打印或生成网络输出。

向其他客户端用户发送消息或接收反馈信息。

管理和维护数据库。

 

SQL*Plus连接数据库

AS: 用来指定管理权限,可选值有SYSDBA,SYSOPER和SYSASM.

      SYSDBA权限具有SYSOPER的所有权限,另外还能够创建数据库,并且授于SYSDBA或者SYSOPER权限给其他数据库用户;

      SYSOPER权限的管理员可以管理和关闭数据库,执行联机和脱机备份,归档当前重做日志文件,连接数据库;

      SYSASM权限是Oracle 11g的新特性,是ASM实例所特有的,用来管理数据库存储。

NOLOG:表示不记录日志文件。

 

例:打开SQL*Plus, sys用户以SYSDBA身份进入数据库

SQLPLUS sys/a123 AS SYSDBA

例:客户端连接SQL*Plus时指定网络服务器。

SQLPLUS sys/a123@orcl AS SYSDBA

 

SQL*Plus命令连接与断开数据库

例:使用CONNECT命令通过scott用户连接数据库,然后使用DISCONN命令断开数据库。

SQL> CONNECT scott/tiger;

SQL> DISCONN;

SQL> SELECT * FROM scott.emp;

SQL> CONN sys/a123 AS SYSDBA;

退出SQL*Plus,关闭SQL*Plus窗口,可以执行EXIT或者QUIT命令

 

SQL*Plus命令使用:

1.Help命令,获取某个具体命令的帮助信息,如HELP CONNECT;

2.DESCRIBE命令,查看表结构,获取函数、存取过程和包的描述,如DESC user_tables;

3.显示SQL缓冲区的命令LIST,SQL*Plus会将上一次执行的SQL命令保存到缓冲区,用户可以对缓冲区中的信息进行编辑。使用LIST命令可以显示当前SQL缓冲区的内容。

4. 修改SQL命令CHANGE.

5. 编辑命令EDIT.

6. 保存命令SAVE,将SQL命令存储到磁盘上,文件后缀名默认为.SQL。

7. GET命令,把磁盘上的命令文件内容调入当前缓冲区,并显示在屏幕上。

8. 运行命令文件命令START或@.

9. SPOOL命令。

10.SHOW命令。

 

三、数据库启动与关闭

在用户试图连接到数据库前,必须先启动数据库。每个启动的数据库都对应一个实例。

当前系统中所有的服务均可以通过“服务”窗口进行查看和设置。启动Oracle数据库服务,首先在“服务”窗口中查看Oracle数据库服务是否已经启动,Oracle数据库服务的名称为OracleService<SID>,如果它的状态显示为“已启动,则说明数据库实例已经在正常方式下启动。

如果数据库实例未启动,可以通过该服务的“属性”对话框进行启动。当数据库服务的启动类型设为“自动”时,也应将Oracle监听程序服务OracleOraDb11g_home1TNSListener的启动类型设置为“自动”。

 

连接数据库的方式有两种:

1.图形化用户界面方式 :

运行“开始/程序/ Oracle - OraDb11g_home1/应用程序开发/ SQL Plus”应用程序

 

2.数据库启动方式:

2.1STARTUP  NOMOUNT

表示数据库启动时,只读取数据库实例的参数,不打开控制文件,不打开数据库。启动数据库实例,即启动SGA和后台进程,这种启动只需要init.ora文件。此选项用于数据库的控制文件全部损坏,需要重新创建数据库控制文件或创建一个新的数据库时使用。这种方式下启动可执行重建控制文件、重建数据库操作。

2.2STARTUP  MOUNT  数据库名

表示数据库启动时,装载数据库实例打开控制文件,但不打开数据库。此选项用于修改数据库的运行方式或进行数据库修复。这种方式启动下可执行:数据库日志归档、数据库恢复、重新命名一些数据库文件 ,如:系统表空间或日志文件。

2.3STARTUP OPEN  数据库名

表示数据库启动时,装载数据库并启动数据库实例,打开控制文件,并打开数据库,包括Redo log文件在内的所有数据库文件, 这种方式下可访问数据库中的数据。

STARTUP OPEN 数据库名 PARALLEL 表示打开数据库并将数据库切换到并行(PARALLEL)模式下运行

STARTUP OPEN 数据库名 EXCLUSIVE 表示打开数据库并将数据库切换到互斥(EXCLUSIVE)模式下运行

建议一般情况下只要使用STARTUP OPEN 数据库名 命令正常打开数据库即可。

2.4STARTUP

这是数据库默认启动选项,等于以下三个命令:startup nomount、alter database mount、alter database open

2.5STARTUP FORCE

以强制启动方式启动数据库,可用于数据库的重新启动。当不能关闭数据库时,可使用STARTUP FORCE先关闭数据库,再执行正常启动数据库命令。

2.6STARTUP RESTRICT

表示数据库以受限方式或约束方式启动,这种方式能够启动数据库,但只允许具有RESTRICTED SESSION 权限的用户访问。只有具有RESTRICT SESSION权限的用户可以连接数据库,没有RESTRICT SESSION权限的用户不能连接数据库。

2.7STARTUP  PFILE=参数文件名

带初始化参数文件的启动方式 ,先读取参数文件,再按参数文件中的设置启动数据库,如startup pfile=E:\Oracle\admin\oradb\pfile\init.ora

 

数据库关闭方式:

1.SHUTDOWN NORMAL 

NORMAL是默认选项,表示正常关闭数据库。等候客户的请求完成,所有的事务提交,拒绝再次进行连接。

2.SHUTDOWN  IMMEDIATE

表示立即关闭数据库。使用这种方式关闭数据库,系统将连接到数据库的所有用户没有提交的事务全部回退,中断连接,然后关闭数据库,下一次启动不需要任何恢复过程

执行SHUTDOWN  IMMEDIATE,数据库并不立即关闭, 而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源), 当使用SHUTDOWN不能关闭数据库时,SHUTDOWN  IMMEDIATE可以完成数据库关闭的操作。

3.SHUTDOWN  ABORT

表示直接异常关闭数据库,正在访问数据库的会话会被突然终止, 如果数据库中有大量操作正在执行,这时执行SHUTDOWN ABORT后,重新启动数据库需要很长时间。该方式关闭数据库时,系统立即关闭数据库实例, 对于连接到数据库的所有数据库不作任何检查,也不作数据库完整性检查。它不答应新连接,马上断开所有的用户连接,终止事务,不回滚事务,下一次启动需要恢复过程

在使用SHUTDOWN ARORT进行关闭数据库后,需要使用:STARTUP OPEN RECOVER 进行启动示例,装载数据库并启动数据库介质恢复过程。

4.SHUTDOWN  TRANSACTIONAL

表示事务终结后再关闭数据库,该方式中,数据库必须等待所有用户的事务终结。它不答应新连接,完成事务后,有连接的用户将被解除连接,下一次启动不需要任何恢复过程。

 

四、数据库的修改与删除

1.数据库修改:

1.1数据库由未挂载实例修改为挂载实例状态

      STARTUP NOMOUNT 启动数据库时只读取数据库实例参数,并不挂载数据库实例,可以使用ALTER DATABASE MOUNT 来挂载数据库实例

例:SQL  > STARTUP NOMOUNT;

    SQL  > ALTER DATABASE MOUNT EXCLUSIVE;   

1.2数据库由挂载实例修改为打开状态

STARTUP MOUNT来启动数据库,并挂载上数据库,但是保持数据库的关闭状态。可以使用ALTER DATABASE OPEN来打开数据库。

例:SQL  > STARTUP  MOUNT;

    SQL  >  ALTER DATABASE OPEN EXCLUSIVE;

1.3数据库状态修改为只读或可读写方式

数据库状态可读可写是默认的操作。

例:SQL  >  ALTER DATABASE OPEN READ ONLY;

SQL  >  ALTER DATABASE OPEN READ WRITE;

1.4启用或取消数据库的受限制

STARTUP RESTRICT来启动装载数据库并以受限方式打开数据库实例。可以使用ALTER SYSTEM DISABLE RESTRICTED SESSION来取消数据库的受限制。

例:SQL  > ALTER SYSTEM DISABLE RESTRICTED SESSION;

    SQL  >  ALTER SYSTEM ENABLE RESTRICTED SESSION;

1.5修改数据库的字符集
例:将数据库的字符集修改为ZHS16GBK

ALTER DATABAE CHARACTER SET SIMPLIFIED                 

CHINESE_CHINA.ZHS16GBK;

 

2.数据库删除:

选择“开始/程序/Oracle - OraDb11g_home1/配置和移植工具/Database Configuration Assistant”

 

五、数据库用户

SYS用户和SYSTEM用户

Oracle在构建数据库时,默认将建立两个管理员用户,利用这两个管理员用户可以执行对数据库服务器的管理操作。 SYS是在数据库创建的时候就自动创建,并且给予SYSDBA权限. 所有的dict都存储在SYS中。SYS用户具有SYSDBA和SYSOPER权限

SYSTEM用户主要具有SYSOPER权限。

SYS是Oracle数据库中权限最高的帐号,具有CREATE DATABASE的权限,主要是数据库的系统管理,而SYSTEM没有这个权限,主要是dba管理,是数据库的基本管理

 

“SYSDBA”即数据库管理员权限 :

打开数据库服务器

关闭数据库服务器

备份数据库

恢复数据库

日志归档

会话限制

管理功能

创建数据库

“SYSOPER” 即数据库操作员权限:

打开数据库服务器

关闭数据库服务器

备份数据库

恢复数据库

日志归档

会话限制

 

例3-6:查看各帐户的设置情况

            SELECT  USERNAME,  ACCOUNT_STATUS  FROM  DBA_USERS;

例3-7:查询当前oracle数据库用户名

            SHOW  USER;

 

SCOTT用户

用过ORACLE数据库软件的人都知道有个Scott用户,它是Oracle公司第一个员工的名字。SCOTT用户是 Oracle自带的示例用户,它默认的密码是”Tiger”(Tiger是Scott养的猫的名字),它具有NORMAL即普通用户权限,可以用来查询某些数据表的数据。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!