01 Oracle 基本操作

Oracle 基本操作

初使用步骤

1.创建表空间

2.创建用户、设置密码、指定表空间

3.给用户授权

4.切换用户登录

5.创建表

注意点:oracle中管理表的基本单位是用户

文章目录

回顾之前的内容

了解Oracle体系结构

Oracle数据库、实例、用户、表空间、表之间的关系

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

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

​ 每个实例可以创建多个表空间,每个表空间下可以创建多个用户和数据库文件。

  • 用户:用户是在实例下建立的。不同实例可以建相同名字的用户。

  • 表空间:表空间是一个用来管理数据存储逻辑概念,表空间只是和数据文件(ORA或者DBF文件)发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。

​ 每个数据库至少有一个表空间(称作SYSTEM表空间)。一个数据库实例可以有N个表空间,一个表空间下可以有N张表。

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

1.创建表空间

创建表空间 必须 使用有超级管理员的用户来创建表空间

安装Oracle后会有默认的实例,即ORCL。一般不创建多个实例,在默认实例下创建表空间和用户等。

在oracle中,表空间是存储概念上的,建立表空间需要有对应的数据文件,数据文件建立好之后直接会把一定的磁盘空间分配给它,这样可以对数据库的存储空间进行有效的管理。然后在建表的时候指定对应的表空间,该表的数据就会都存在表空间对应的数据文件上,和Mysql那种每个表一个文件的方式比起来,存储的可控性更强。

  • sys用户是超级用户,具有oracle最高的权限,具有sysdba角色有create database的权限,该用户默认的密码是manager

  • system用户是管理操作员,权限也很大,具有sysoper角色,没有create database的权限,该用户默认的密码是change-on-install

就是说:这两个用户最大的区别是有没有create database权限。一般讲,对数据库维护,使用system用户登录就可以了,

使用plsql 工具 登陆system用户


使用Plsql工具连接oracle创建表空间

sql 复制代码
--创建表空间
create tablespace mytest01
datafile 'E:\data\mytest01.dbf'
size 100m
autoextend on
next 10m;

mytest01 为表空间名称

datafile 指定表空间对应的数据文件

size 定义表空间的初始大小

autoextend on 自动增长,当表空间存储都占满时,自动增长

next 一次自动增长的大小

点击【执行】按钮,或按F8执行

看到data文件下有了mytest01.dbf,且直接右键删除是删不掉的如下图

2.删除表空间

sql 复制代码
-- 删除表空间
drop tablespace mytest01;

这时在去data文件下去删除mytest01.dbf可以直接删除

3.创建用户

sql 复制代码
-- 创建用户
create user mytest01      --将来登陆的用户名mytest01
identified by mytest01    --将来登陆的密码mytest01
default tablespace mytest01; --指定用户出生的表空间

用户mytest01可以和表空间同名,他们存在不同的位置下如下图

4.给用户授权

sql 复制代码
--给用户授权
--oracle数据库中常用的角色
connect --连接角色,基本角色
resource --开发者角色
dba -- 超级管理员角色 

mytest01授权

sql 复制代码
-- 给`mytest01`授予超级管理员dba角色
grant dba to mytest01;

5.切换用户登录

点击【会话】-->【注销】-->【全部】;

再重新点【会话】-->【登录】

(也可以直接点击 钥匙 按钮 重新开个窗口)

这样 mytest01用户就登录成功了

6.表操作

数据类型了解

数据类型 描述
Varchar , varchar2 表示一个字符串 varchar2表示可变长度
NUMBER NUMBER(n)表示一个整数,长度是n NUMBER(m,n)表示一个小数,总长度是m,小数是n
DATA 表示日期类型
CLOB 大对象,表示大文本数据类型,可存4G
BLOB 大对象,表示二级制数据,可存4G

创建表

sql 复制代码
--创建一个person表
create table person(
       pid number(20),
       pname varchar(10)
);

完整的常规操作如下

sql 复制代码
--创建表空间
create tablespace mytest01
datafile 'E:\data\mytest01.dbf'
size 100m
autoextend on
next 10m;

-- 创建用户
create user mytest01      --将来登陆的用户名mytest01
identified by mytest01    --将来登陆的密码mytest01
default tablespace mytest01; --指定用户出生的表空间

-- 给`mytest01`授予超级管理员dba角色
grant dba to mytest01;
相关推荐
Goat恶霸詹姆斯几秒前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七23 分钟前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草25 分钟前
redis-9-哨兵
数据库·redis·bootstrap
明哥说编程30 分钟前
Dataverse自定义表查询优化:D365集成大数据量提速实战【索引配置】
数据库·查询优化·dataverse·dataverse自定义表·索引配置·d365集成·大数据量提速
xiaowu08040 分钟前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
讯方洋哥1 小时前
HarmonyOS App开发——关系型数据库应用App开发
数据库·harmonyos
惊讶的猫2 小时前
Redis持久化介绍
数据库·redis·缓存
Apple_羊先森2 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
全栈前端老曹2 小时前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
神梦流3 小时前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库