oracle数据库基本介绍,oracle数据库教程介绍

Oracle基础简介

数据库实例

表空间

登录身份和角色

用户和授权数据类型

数据操作

导入数据库

一、Oracle基础:

1、简介

Oracle创建数据库不能像SQL Server那样用一个简单的CREATE DATABASE命令就能完成,虽然一个 Oracle 数据库服务器中可以安装多个数据库,但是一个数据库需要占用非常大的内存空间。

因此一般一个服务器只安装一个数据库。每一个数据库可以有很多用户,不同的用户拥有自己的数据库对象(比如:数据库表),一个用户如果访问其他用户的数据库对象,必须由对方用户授予一定的权限。

不同的用户创建的表,只能被当前用户访问。因此在 Oracle 开发中,不同的应用程序只需使用不同的用户访问即可。

2、数据库实例:

用Oracle官方描述:实例是访问Oracle数据库所需的一部分计算机内存和辅助处理后台进程,是由进程和这些进程所使用的内存(SGA)所构成一个集合。

其实就是用来访问和使用数据库的一块进程,它只存在于内存中。就像Java中new出来的实例对象一样。

我们访问Oracle都是访问一个实例,但这个实例如果关联了数据库文件,就是可以访问的,如果没有,就会得到实例不可用的错误。

实例名指的是用于响应某个数据库操作的数据库管理系统的名称。她同时也叫SID。实例名是由参数instance_name决定的。

3、表空间:

Oracle数据库是通过表空间来存储物理表的,一个数据库实例可以有N个表空间,一个表空间下可以有N张表。

有了数据库,就可以创建表空间。

表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)。为了便于管理和提高运行效率,可以使用一些附加表空间来划分用户和应用程序。例如:USER表空间供一般用户使用,RBS表空间供回滚段使用。一个表空间只能属于一个数据库。

查看当前用户拥有的表空间语句:SELECT NAME FROM V$DATABASE

创建表空间语法:Create TableSpace 表空间名称

DataFile          表空间数据文件路径

Size              表空间初始大小

Autoextend on     是否自动拓展空间

如:create tablespace db_test

datafile 'D:\oracle\product\10.2.0\userdata\db_test.dbf'  size 50m

autoextend on;

4、登录身份和角色:

4-1 身份

在oracle中分为三种连接身份 Normal 和 sysDBA 和 sysyoper

Normal    :普通用户,权限只能查询某些表的数据

SysDBA   : 即数据库管理员,权限包括:打开数据库服务器;关闭数据库服务器;备份数据库;恢复数据库;日志归档;会话限制;管理功能;创建数据库

Syssyoper:即数据库操作员,权限包括:打开数据库服务器;关闭数据库服务器;备份数据库;恢复数据库;日志归档;会话限制;

4-2 角色

角色:还有一个概念就是数据库角色(role),数据库角色就是若干个系统权限的集合。

Oracle 用户对数据库管理或对象操作的权利,分为系统权限和数据库对象权限。系统权

限比如:CREATE SESSION,CREATE TABLE 等,拥有系统权限的用户,允许拥有相应的系统操

作。数据库对象权限,比如对表中的数据进行增删改操作等,拥有数据库对象权限的用户可

以对所拥有的对象进行对应的操作。

如新建一个用户UserA,但是UserA还是不能登录系统的,因为他没有权限,每个用户登录系统至少需要CREATE SESSION的角色权限。角色名称介绍说明

CONNECT主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予CONNECT role。CONNECT 是使用 Oracle 的简单权限,

拥有 CONNECT 角色的用户,可以与服务器建立连接会话(session,客户端对服务器连接,称为会话)。

RESOURCE更可靠和正式的数据库用户可以授予 RESOURCE role。RESOURCE

提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器

(trigger)、索引(index)等。

DBADBA role 拥有所有的系统权限----包括无限制的空间限额和给其他用户授

予各种权限的能力。用户 SYSTEM 拥有 DBA 角色。

5、用户和授权:

SYS和SYSTEM 是每个ORACLE 数据库系统缺省安装的两个帐户。SYS 是所有内部数据库表、结构、过程包、等拥有者,此外它还拥有 V$ 和数据字典视图,并创建所有封装的数据库角色(DBA,CONNECT,RESOURCE)。 Sys是一个唯一能访问特定内部数据字典的用户。 System 也是在安装ORACLE 时创建的用户,用于 DBA 任务的管理。

Oracle创建好以后,系统会预设几个用户,sys  和  system  和  sott账号/密码身份说明

sys/change_on_installSYSDBA 或 SYSOPER不能以 NORMAL 登录,可作为默认的系统管理员

system/managerSYSDBA 或 NORMAL不能以 SYSOPER 登录,可作为默认的系统管理员

scott/tigerNORMAL普通用户

Oracle 的用户可以用 CREATE USER 命令来创建。其语法是:CREATE USER 用户名

IDENTIFIED BY 密码

ACCOUNT UNLOCK/LOCK(是否锁定)DEFAULT TABLESPACE 表空间

TEMPORARY TABLESPACE 临时表空间

如CREATE USER TestUser

IDENTIFIED BY 123 ACCOUNT UNLOCKDEFAULT TABLESPACE DB_ROADFLOWTEMPORARY TABLESPACE ROADFLOW_TEMP

创建完用户以后角色授权GRANT CONNECT TO TESTUSER    --普通的连接权限GRANT RESOURCE TO TESTUSER   --数据库操作权限GRANT DBA TO TESTUSER        --超级管理员GRANT SELECT ON MENU TO TESTUSER  --将MENU表的权限赋值给TESTUSER

通过 GRANT SELECT ON MENU TO TESTUSER 语句 将 MENU 表的权限赋值给 TESTUSER。

如:用户 USER 创建 Menu 表,然后通过上面的 GRANT 语句 将 Menu 表的操作权限赋值给 TESTUSER ,查询的语句如下GRANT SELECT ON MENU TO TESTUSER  --将MENU表的权限赋值给TESTUSERSELECT * FROM USER.MENU     --查询的时候需要加上原表权限拥有者的名字+表名

用system账号创建A用户,然后用A用户创建表(N个),用system账号创建B用户,然后授权A的一个表的查询权限给B。查询的时候要 select * from A.表名;因此表属于A不属于B的

二、数据类型

Oracle常见数据类型如下:类型含义

CHAR(length)存储固定长度的字符串。参数 length 指定了长度,如果存储的字符串长

度小于 length,用空格填充。默认长度是 1,最长不超过 2000 字节。

VARCHAR2(length)存储可变长度的字符串。length 指定了该字符串的最大长度。默认长度

是 1,最长不超过 4000 字符。

NUMBER(p,s)既可以存储浮点数,也可以存储整数,p 表示数字的最大位数(如果是

小数包括整数部分和小数部分和小数点,p 默认是 38 为),s 是指小数位

DATE存储日期和时间,存储纪元、4 位年、月、日、时、分、秒,存储时间

TIMESTAMP不但存储日期的年月日,时分秒,以及秒后 6 位,同时包含时区。

CLOB存储大的文本,比如存储非结构化的 XML 文档

BLOB存储二进制对象,如图形、视频、声音等。

导入数据库:

导入oracle数据库可以使用 PL/SQL 工具来进行,下面主要是介绍使用CMD命令来导入数据库

导入之前需要拥有 DBA 的 权限,参考 用户和授权 设置DBA角色打开CMD命令,输入 imp

命令框提示输入用户名和密码(密码输入时不显示的),然后回车。

出现导入 导入文件: EXPDAT.DMP>  命令时,输入导入文件的路径+文件名,比如我的保存在E盘目录下下文件名是roadflow-oracle.dmp,那么就输入 E:\Work\OA\DB\roadflow-oracle.dmp。然后回车。

然后按照提示确认几个步骤,确认完以后会进行导入操作。

1611542648110771.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值