Oracle与MySQL的区别
Oracle是以用户为核心的,也就是说在Oracle中管理表(Table)的基本单位是用户,当前用户下有哪几张表。而MySQL是以数据库为核心的,管理表(Table)的基本单位是数据库,当前数据库下有哪几张表。
表空间
创建表空间
CREATE TABLESPACE test_cnblogs --创建一个表空间叫test_cnblogs
DATAFILE 'E: est_cnblogs.dbf' --存储位置设置在E盘根路径下,切记名称后缀为.dbf
SIZE 100m --初始空间设置为100MB大小
AUTOEXTEND ON --设置动态扩容,每次10MB
NEXT 10m;
删除表空间
DROP TABLESPACE test_cnblogs; --删除名叫test_cnblogs的表空间
用户
创建用户
CREATE USER liuxiaojiang --创建登录用户liuxiaojiang
IDENTIFIED BY liuxiaojiang --设置该用户密码为liuxiaojiang
DEFAULT TABLESPACE test_cnblogs; --指定该用户出生的表空间为test_cnblogs
给用户授权(GRANT)
Oracle数据库中常用角色
connect --连接角色,基本角色
resource --开发者角色
dba --超级管理员角色
--授予liuxiaojiang用户connect、resource角色权限。一般创建应用程序开发用户可以授予这两个角色的权限。
GRANT CONNECT,RESOURCE TO liuxiaojiang;
--授予liuxiaojiang用户dba角色权限。
GRANT DBA TO liuxiaojiang; --给liuxiaojiang这个用户授权dba角色(注意:GRANT属于DCL,不属于DDL)
--授予用户liuxiaojiang用户在zhang用户下person表的SELECT,DELETE,UPDATE,INSERT权限,授予具体的对象权限是对于权限严格控制的一种方案。
GRANT SELECT,DELETE,UPDATE,INSERT ON zhang.person TO CHENMH;
--授予用户chenmh用户zhang下person表的所有权限
GRANT ALL PRIVILEGES ON zhang.person to liuxiaojiang;
回收权限(REVOKE)
--回收liuxiaojiang用户的角色权限
REVOKE CONNECT,RESOURCE FROM liuxiaojiang;
--回收liuxiaojiang用户的系统权限
REVOKE CREATE FROM liuxiaojiang;
--回收用户对象权限,回收liuxiaojiang用户在zhang用户下person表的所有权限,如果是单个授予的权限需要单个的收回
REVOKE ALL PRIVILEGES ON zhang.person FROM liuxiaojiang;
切换用户
--使用PL/SQL Developer,点击session(会话)手动注销当前登录账号,输入账号与密码切换登录用户
解锁用户
--示例
--解锁scott用户,scott用户的密码默认为tiger
--解锁scott用户
ALTER USER scott ACCOUNT UNLOCK;
--解锁scott用户的密码
ALTER USER scott IDENTIFIED BY tiger;