• Oracle入门


    本节要点:

    • l  Oracle出生
    • l  Oracle使用前准备
    • l  Oracle体系结构
    • l  与Oracle数据库的连接
    • l  Oracle 的结构化查询语言(SQL)及工具
    • l  Oracle用户管理

    一、             Oracle出生

    Oracle是一个生产中间件和数据库的较大的生产商,Oracle原本的含义:“神喻”,指的是神说的话。中国在商朝的时代,把一些刻龟壳上的文字当成是上天的指示,所以在中国将Oracle也翻译成“甲骨文”。

    Oracle公司由larry Ellison创建,当时是受启发于IBM研究员发表的一篇论文《大型共享数据库的关系数据库模型》,larry Ellison和另外两个合伙人Bob Miner和Edward Oates开始研发关系型数据库。他们的第一个项目是给美国政府做的,项目的名字当时就叫做Oracle,此后,larry Ellison就把研发的数据库叫做Oracle,后来把自己的公司名字也改成了Oracle,所以一般认为larry Ellison为Oracle的创始人。

    二、             Oracle使用前准备

    • l  Oracle安装
    • l  创建监听程序
    • l  创建数据库实例
    • l  安装PL/SQL工具
    • l  PL/SQL连接Oracle数据库(配置tnsnames.ora文件)

    详细操作步骤省略

    原因:每个工具软件都具有不同版本,不同版本在安装方法和使用方法上不尽相同,建议根据不同版本在网上有针对性的搜索

    三、             Oracle体系结构

    1. 1.         Oracle 数据库简介
    •   Oracle是关系型数据库管理系统 (RDBMS)
    •   在管理信息系统、企业数据处理、因特网及电子商务等领域使用非常广泛
    •   在数据安全性与数据完整性控制方面性能优越
    •   跨操作系统、跨硬件平台的数据互操作能力
    •   基于客户机/服务器(C/S)技术
      • 客户机 - 用户和数据库之间的接口
      • 服务器 - 存储和管理数据

      

    1. 2.         Oracle组成

    Oracle服务器提供开放、全面和综合的信息管理,它由Oracle数据库Oracle实例组成,Oracle数据库是一个数据的集合,Oracle实例是用来管理数据库的后台进程和内存结构的集合。下面是Oracle 主要组件图:

     

    对于第一次接触“实例”和“数据库”的人来说,容易把二者混淆。实例是“内存”和“后台进程”的集合。数据库是数据的物理存储。特别注意,一个实例可以用于一个数据库,多个实例也可以同时用于一个数据库。

    举个例子,如果把数据库比作一架飞机,实例就是飞机的发动机。那么,一台发动机可以驱动飞机,两台发动机也可以同时驱动一架飞机。

    Oracle实例:

    是oracle使用到的内存和进程的总称。

    一个oracle数据库可以有多个实例,单机中是一个实例对应一个数据库(我们一般所接触到的)。

    安装oracle时候如果同时建立一个orcl的数据库的话;那么SID就是orcl,这是一个数据库,有一个实例与它对应;如果你又通过DBCA建立了另外一个db_test,这是就有两个SID;需要两个实例分别打开各自的数据库。

    Oracle数据库:

    •   Oracle 数据库由操作系统文件组成,这些文件为数据库信息提供实际物理存储区
    •   Oracle 数据库包括逻辑组件和物理组件
      •   物理结构包含数据库中的一组操作系统文件。
      •   逻辑结构指数据库创建之后形成的逻辑概念之间的关系

    物理组件就是Oracle数据库所使用的操作系统物理文件。物理文件可分为三类:

    • u  数据文件:存储数据库数据,如表、索引数据等;
    • u  控制文件:记录数据库物理结构的二进制文件;
    • u  日志文件:记录对数据库的所有修改信息,用于故障恢复。

    逻辑组件是从逻辑的角度分析数据库的组成,包括:表空间、段、区、数据块、模式。

    表空间:

    • l  表空间是数据库中最大的逻辑单位,一个 Oracle 数据库至少包含一个表空间,就是名为SYSTEM的系统表空间。
    • l  每个表空间是由一个或多个数据文件组成的,一个数据文件只能与一个表空间相关联。
    • l  表空间的大小等于构成该表空间的所有数据文件大小之和。
    • l  Oracle 数据库中的典型表空间是:SYSTEM 表空间  、DATA 表空间、USER 表空间、TOOLS 表空间、TEMP 表空间

    段:

    • l  段是构成表空间的逻辑存储结构,段由一组区组成。
    • l  按照段所存储数据的特征,将段分为四种类型,即数据段、索引段、回退段和临时段。

    区:

    • l  区为段分配空间,它由连续的数据块组成。
    • l  当段中的所有空间已完全使用时,系统自动为该段分配一个新区。
    • l  区不能跨数据文件存在,只能存在于一个数据文件中。

    数据块:

    • l  数据块是Oracle服务器所能分配、读取或写入的最小存储单元。
    • l  Oracle服务器以数据块为单位管理数据文件的存储空间。

    模式:

    • l  模式是对用户所创建的数据库对象的总称。
    • l  模式对象包括表、视图、索引、同义词、序列、过程和程序包等。

    四、             与Oracle数据库的连接

    要想操作数据库,首先要访问数据库。

    只有用合法的用户帐号才能访问Oracle数据库。

    Oracle 有几个默认的数据库用户 :

    • l  SYS:数据库中所有数据字典表和视图都存储在 SYS 模式中。SYS用户主要用来维护系统信息和管理实例。
    • l  SYSTEM: 默认的系统管理员,该用户拥有Oracle管理工具使用的内部表和视图。通常通过SYSTEM用户管理数据库用户、权限和存储等
    • l  SCOTT: 是Oracle 数据库的一个示范帐户,在数据库安装时创建

    五、             Oracle 的结构化查询语言(SQL)及工具

    SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

    • l  数据定义语言(DDL)

        CREATE 命令、ALTER 命令、DROP 命令、TRUNCATE 命令

    • l  数据操纵语言(DML)

        INSERT、SELECT、UPDATE、DELETE

    • l  数据控制语言(DCL)

        GRANT、REVOKE

    • l  事务处理和数据控制命令(TCL)

        COMMIT、ROLLBACK

           PL/SQL语言是SQL 语言的扩展 ,PL/SQL语言工具:SQL Plus和PL/SQL Developer等。

             工具的使用方法略,现在使用较多的是PL/SQL Developer。

    六、             Oracle用户管理

    要连接到Oracle数据库,就需要创建一个用户账户,每个用户都有一个默认表空间和一个临时表空间。

    1. 1.         创建新用户

    CREATE USER命令用于创建新用户,CREATE USER命令的语法是:

         CREATE USER username

         IDENTIFIED BY password

         [DEFAULT TABLESPACE tablespace]

         [TEMPORARY TABLESPACE tablespace];

    创建一个名称为david的用户,其密码为davidpass,例:

    CREATE USER david

         IDENTIFIED BY davidpass

         DEFAULT TABLESPACE  USERS

         TEMPORARY TABLESPACE TEMP

    1. 2.         给用户授予权限

    权限指的是执行特定命令或访问数据库对象的权利,权限有两种类型,系统权限对象权限,其中系统权限允许用户执行某些数据库操作,如创建表就是一个系统权限;对象权限允许用户对数据库对象(如表、视图、序列等)执行特定操作。角色是一组相关权限的组合,可以将权限授予角色,再把角色授予用户,以简化权限管理。

    GRANT命令可用于为用户分配权限或角色。

    分配连接权限:

    Grant connect to david; 允许用户连接至数据库,并创建数据库对象

    分配资源权限:

    Grant RESOURCE to david; 允许用户使用数据库中的存储空间

    授予表操作权限:

    Grant select on test to david; 允许用户查询test表中的记录

    Grant update on test to david; 允许用户更新test表中的记录

    Grant all on test to david; 允许用户插入、删除、更新和查询test表中的记录

    1. 3.         更改和删除用户

    ALTER USER命令可用于更改口令:

    alter useR DAVID IDENTIFIED BY davidpassword; 修改DAVID用户的密码

    DROP USER命令用于删除用户:

    DROP useR DAVID CASCADE; 删除DAVID用户模式

  • 相关阅读:
    raw_input() 与 input()对比
    你很熟悉CSS,却没掌握这些CSS技巧
    CSS样式设置
    javascript基本语法和变量(转)
    手机/移动前端开发需要注意的20个要点
    移动端”宴席知多少
    git第一次提交代码到远程仓库
    java对过反射调用方法
    站点收集
    别人抢红包,我们研究一下红包算法
  • 原文地址:https://www.cnblogs.com/zhouyeqin/p/7267349.html
Copyright © 2020-2023  润新知