oracle 快速入门之第一章 数据库基础

一:Oracle数据库基本概念:

      Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的适应高吞吐量的数据库解决方案。

      平常所说的Oracle可以指Oracle数据库管理系统。Oracle数据库管理系统是管理数据库访问的计算机软件(Oracle database manager system)。它由Oracle 数据库和Oracle 实例( instance)构成(区分mysql, mysql没有实例的概念)。

数据库(database): 物理操作系统文件或磁盘的集合。

       Oracle实例 : 位于物理内存的数据结构,它由操作系统的多个后台进程和一个共享的内存池所组成,共享的内存可以被所有进程访问。Oracle用它们来管理数据库访问。用户如果要存取数据库(也就是硬盘上的文件〉里的数据,必须通过Oracle实例才能实现,不能直接读取硬盘上的文件。实际上,Oracle 实例就是平常所说的数据库服务( service)。在任何时刻,一个实例只能与一个数据库关联,访问一个数据库; 而同一个数据库可由多个实例访问(RAC)

二:Oracle的组成结构:

1.数据库
​     Oracle数据库是数据的物理存储。这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。其实Oracle数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是Oracle就只有一个大数据库。

2.实例
​     一个Oracle实例(Oracle Instance)有一系列的后台进程(Backguouud Processes)和内存结构(Memory Structures)组成。一个数据库可以有n个实例。

​     注: 一组Oracle后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。

3.用户
​     用户是在实例下建立的。不同实例可以建相同名字的用户。用户登陆后只能看到和操作自己的表, ORACLE 的用户与 MYSQL 的数据库类似,每建立一个应用需要创建一个用户。

​     注: Oracle 数据库建好后,要想在数据库里建表,必须先为数据库建立用户,并为用户指定表空间

4.表空间
​     表空间是Oracle对物理数据库上相关数据文件(ORA或者DBF 文件)的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为system表空间)。

​     注: 每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。

5.数据文件(dbf、ora)
​     数据文件 是 数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行

​     注: 表的数据,是由用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。由于oracle的数据库不是普通的概念,oracle是由用户和表空间对数据进行管理和存放的。但是表不是由表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表! 这里区分就是用户了!
 

三:Oracle历史版本介绍:

Oracle 8/Oracle 8i(1CD): “i”表示internet,表示Oracle开始进军网络

Oracle 9i(3CD):属于Oracle 8i的稳定版本,现在依然大范围使用(使用率非常高,因为正好是中国进行电子化信息改革的开始)

Oracle 10g(630M):使用了网格计算的方式,提升了数据库的分布式的访问性能

Oracle 11g(1.7G):属于Oracle 10g的稳定版本,现在新项目使用较多。

Oracle 12C:指的是云服务的支持。

oracle 快速入门之第一章 数据库基础_第1张图片

 

四:Oracle常见管理工具:

SQL PLUS(Oracle自带) SQL*Plus是SQL命令行和PL/SQL语言的界面和连接Oracle数据库客户和服务器的报告工具。SQL*Plus能够交替使用并通过脚本运行。

PL/SQL Developer 是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发。不能连接其他数据库。

针对Oracle软件的Toad

Workflow Builder

XML Publisher Discoverer

JDeveloper

Developer 6i(9i and 10g)——Forms and Reports

五:Oracle安装

1、解压两个压缩包到同一目录,即"database",然后单击解压目录下的"setup.exe"文件,如下图所示:

oracle 快速入门之第一章 数据库基础_第2张图片

 

2、执行安装程序后会出现如下的命令提示行。

oracle 快速入门之第一章 数据库基础_第3张图片

 

3、等待片刻之后就会出现启动画。

oracle 快速入门之第一章 数据库基础_第4张图片

 

4、稍微等待一会,就会出现如下图所示的安装画面,取消下图所示的选中,然后单击"下一步"继续,同时在出现的信息提示框单击"是"继续。

oracle 快速入门之第一章 数据库基础_第5张图片

5、之后就会出现安装选项对话框,默认点击"下一步"继续

oracle 快速入门之第一章 数据库基础_第6张图片

 

 6、之后会出现安装类型对话框,点击"下一步"继续,如果奔出你是安装在Windows Server上的话就选择服务器类。

oracle 快速入门之第一章 数据库基础_第7张图片

 

7、然后就是安装配置,在这要注意的是:管理口令的格式要至少包含一个大写字母,一个小写字母和一个数字,长度8位以上,否则会提示警告,正确输入后点击"下一步"继续。

oracle 快速入门之第一章 数据库基础_第8张图片

 

8、之后会出现"先决条件检查"对话框,选中"全部忽略"并单击"下一步"以继续。(也有可能会直接跳过,不用担心)

oracle 快速入门之第一章 数据库基础_第9张图片

 

9、之后点击"完成"就开始安装了

oracle 快速入门之第一章 数据库基础_第10张图片

 

10、安装画面如下图所示:

oracle 快速入门之第一章 数据库基础_第11张图片

 11、 当上述进度到达100%时会出现线面的对话框,请耐心等待它完成,不要捉急

oracle 快速入门之第一章 数据库基础_第12张图片

 之后弹出口令管理窗口,进行口令设置

oracle 快速入门之第一章 数据库基础_第13张图片 

                  将sys和system的用户密码重新设置

                  把scott用户的勾去掉 并重新设置密码

                   一般hr用户密码设置为hr。Scott用户密码设置为tiger

         oracle 快速入门之第一章 数据库基础_第14张图片

 

oracle 快速入门之第一章 数据库基础_第15张图片

  12.然后再弹出的确认对话框点击"确定"这时会回到主界面然后再单击"关闭"完成安装。

   oracle 快速入门之第一章 数据库基础_第16张图片

 

oracle 快速入门之第一章 数据库基础_第17张图片

 13、 至此,Oracle11g R2已经安装完成,你可以在开始菜单->Oracle - OraDb11g_home1->Database Control - orcl中打开访问网址。

oracle 快速入门之第一章 数据库基础_第18张图片

 14、登陆:在连接身份里选择"SYSDBA",再用户名处输入"sys",密码为你最初设定的密码,点击"登陆"你就可以访问数据库了

oracle 快速入门之第一章 数据库基础_第19张图片

六:Oracle服务

 Windows下,安装Oracle 11g后生成多个服务

通过选择“控制面板”→“管理工具”→“服务”,打开“服务”窗口,可以看到Oracle服务 

oracle 快速入门之第一章 数据库基础_第20张图片

注意:Oracle数据库安装完成之后会有2个服务是必须开启的
           oracleserverORCL
             .....listener

七:Oracle常见登录用户介绍

  1. SYS和SYSTEM用户

  2. SCOTT用户

  • SYS用户具有DBA权限,并且拥有SYS模式,只能通过SYSDBA登陆数据库。是Oracle数据库中权限最高的帐号
  • SYSTEM具有DBA权限。但没有SYSDBA权限。

       我们常用的账户是---scott

  • scott用户第一次使用时是锁定的    
  • 使用scott用户需要SYS超级管理员登录解锁
  • cmd----sqlplus / as sysdba;
  • 解锁scott用户
  •  alter user scott account unlock identified by 123;
  • Oracle用户

Oracle数据库建好后,要想在数据库里建表,必须先为数据库建立用户,并为用户指定表空间。

语法:   create user          用户名  

             identified by        密码  

             default tablespace  表空间(默认USERS)  

注意:用户必须赋予相应的权限

  • 权限

  1. 权限是指执行特定类型sql命令或是访问其它方案对象的权利,包括系统权限和对象权限两种。
  2. 系统权限和对象权限
  3. 系统权限允许用户执行某些数据库操作
  4. 对象权限允许用户对某一特定对象执行特定的操作
  • 角色

  1. 角色就是相关权限的命令集合,使用角色的主要目的就是为了简化权限的管理。
  2. 预定义角色
  3. connect角色:创建连接权限
  4. resource角色:resource角色具有应用开发人员所需要的其它权限(存储过程、触发器等)
  5. dba角色:dba角色具有所有的系统权限
  6. 自定义角色

  • 语法:

  1. #分配权限或角色
  2. grant  privileges or role to user;
  3. #撤销权限或角色
  4. revoke  privileges or role from user;
​
​
#把connect、resource角色授予用户epet
grant connect,reource to epet;
#撤销用户epet的RESOURCE角色
revoke resource from epet; 
#允许用户查看 EMP 表中的记录
grant select on emp to epet;
#允许用户更新 EMP 表中的记录
grant update on emp to epet;

​

​
  • Oracle数据类型

  •  字符数据类型

  1. CHAR:存储固定长度的字符串  
  2. VARCHAR2 :存储可变长度的字符串
  3. NCHAR和NVARCHAR2 :存储Unicode字符集类型
  • 数值数据类型

  1. NUMBER:存储整数和浮点数,格式为NUMBER(p, s)
  2. column_name  NUMBER                 { p = 38, s = 0}
  3. column_name  NUMBER (p)              {整数}
  4. column_name  NUMBER (p, s)            {浮点数}
  • 日期时间数据类型

  1. DATE:存储日期和时间数据
  2. TIMESTAMP:比DATE更精确  
  • LOB数据类型

  1. BLOB:存储二进制对象,如图像、音频和视频文件
  2. CLOB:存储字符格式的大型对象

案例:通过CREATE TABLE命令创建数据库表

​
//创建主人表
CREATE TABLE master(
  	id  NUMBER(11,0)  PRIMARY KEY,
  	loginid  NVARCHAR2(50)  NOT NULL,
  	password  NVARCHAR2(20)  NOT NULL,
  	status  CHAR(1)   DEFAULT 1 NOT NULL 
);

​

你可能感兴趣的:(数据库架构,数据库)