《Oracle系列》Oracle SQL命令,创建用户、表空间,并赋予用户一系列权限

1. 创建用户

sql 复制代码
-- 创建一个名为ywgl的用户,并设置其密码为ywgl  
create user ywgl identified by ywgl;

2. 创建表空间

sql 复制代码
-- 创建一个名为TS_YWGL的表空间,数据文件存储在/home/u01/oradata/orcl/YWGL.dbf,  
-- 初始大小为1500M,当空间不足时自动扩展5M,最大大小为30000M  
create tablespace TS_YWGL datafile '/home/u01/oradata/orcl/YWGL.dbf' size 1500M autoextend on next 5M maxsize 30000M;

创建了一个名为TS_YWGL的表空间,并指定了数据文件的位置、初始大小、自动扩展参数和最大大小。

3. 设置用户默认表空间

sql 复制代码
-- 将ywgl用户的默认表空间设置为TS_YWGL  
alter user ywgl default tablespace TS_YWGL;

ywgl用户的默认表空间设置为TS_YWGL

4. 授权

sql 复制代码
-- 注意:下面的授权操作在逻辑上有些冗余,因为DBA角色包含了大部分权限  
-- 如果打算赋予用户DBA角色,那么以下单独的权限授予是不必要的  
  
-- 授予ywgl用户DBA权限(谨慎使用,这会给用户带来过大的权限)  
-- grant dba to ywgl; -- 注释掉或删除这行,除非你确实需要赋予DBA权限  
  
-- 单独授予ywgl用户一些权限(这些权限在DBA角色下是多余的)  
grant connect, resource to ywgl; -- 授予ywgl连接和资源的基本权限  
-- grant create session to ywgl; -- 这行是多余的,因为connect角色已经包含了create session权限  
grant create any sequence to ywgl; -- 允许ywgl创建任意序列  
grant create any table to ywgl; -- 允许ywgl创建任意表  
grant delete any table to ywgl; -- 允许ywgl删除任意表  
grant insert any table to ywgl; -- 允许ywgl向任意表插入数据  
grant select any table to ywgl; -- 允许ywgl查询任意表  
grant update any table to ywgl; -- 允许ywgl更新任意表  
grant unlimited tablespace to ywgl; -- 允许ywgl使用不受限制的表空间  
grant execute any procedure to ywgl; -- 允许ywgl执行任意存储过程  
grant create any view to ywgl; -- 允许ywgl创建任意视图  

注意:在实际应用中,应该仔细考虑需要授予哪些权限,并避免过度授权

5. 权限撤销

sql 复制代码
-- 撤销ywgl用户的DBA权限(如果之前授予了的话)  
revoke dba from ywgl; -- 如果之前授予了DBA权限,这里可以撤销它
相关推荐
BlackHeart12037 小时前
【SQL】Oracle中序列(Sequence)作为默认值引发的ORA-00979
数据库·sql·oracle
一点事8 小时前
docker:安装oracle 19c
docker·oracle·容器
Drache_long10 小时前
CentOS7安装Oracle数据库
数据库·oracle
徐sir(徐慧阳)12 小时前
记一次生产库ORA-00257故障处理
windows·oracle·ora-00257
许彰午13 小时前
开发转兼职DBA(三):数据库起不来了——WAL、事务与redo日志
数据库·oracle·dba
dishugj13 小时前
HANA同库不同租户间备份,还原
数据库·oracle
basketball61614 小时前
SQL INSERT / UPDATE / DELETE 增删改查总结
数据库·sql·oracle
韶博雅16 小时前
oracle备份
数据库·oracle
迷枫71216 小时前
从本地达梦迁移数据到 Docker Oracle
docker·oracle·容器
QWQ___qwq16 小时前
Text2SQL 完整流程模拟详细笔记
jvm·笔记·oracle