Oracle数据库创建用户与数据库备份小结

发表于:2018-2-05 09:48  作者:张丰哲   来源:简书

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件开发 数据库 Oracle

  前言:使用Oracle开发系统过程中,会涉及到数据库用户的建立,及给该用户分配权限。刚开始接触开发的时候,对这些操作是一种茫茫然的状态。后,经过积累,对这方面有了一定的认识,现总结一些,一则,巩固自身,也希望收到大家的指正;再则,希望能帮助疑惑的童鞋,实现人生的小价值,嘿嘿嘿。
  创建用户以及授权代码:
-- Create the user
create user myName -- 创建用户
identified by myPwd --设置密码
default tablespace USERS  --默认表空间 USERS
temporary tablespace TEMP --默认临时表空间 TEMP
profile DEFAULT;
-- Grant/Revoke role privileges  给用户 授予/撤销 角色权限
grant ctxapp to myName; --没有搞清意思,但是没有这句话,运行时,语句好像报错
grant exp_full_database to myName; --赋给用户 exp_full_database权限 有这个权限 就可以执行全库方式的导出
grant imp_full_database to myName; --赋给用户 imp_full_database权限 有这个权限 就可以执行全库方式的导入
-- Grant/Revoke system privileges --给用户授予/撤销系统权限
grant change notification to myName;
grant create any directory to myName;--创建任何文件夹
grant create any table to myName;--创建任何表
grant drop any directory to myName;--删除任何文件夹
grant execute any procedure to myName;--执行任何存储过程
grant unlimited tablespace to myName; --无限制的表空间配额
--直接将某些角色所有的权限转给用户
grant ctxapp to myName; --没有搞清意思,但是没有这句话,运行时,语句好像报错
grant connect to myName;--将connect角色的权限给myName用户
grant dba to myName; --将dba角色的权限给myName用户
grant resource to myName;--将resource角色的权限给myName用户
  如上代码所示,我创建用户的代码共有四个小块,
  第一步是创建用户,并默认表空间与临时表空间(这两个名词解释,在网上查阅了一番,还是有些茫然,先给出解释的连接,再希望有心人能为我解惑),
  第二步与第三步是授权给该用户一些具体权限,各权限具体功能可参考注释
  第四步是分别将三个角色的权限转给用户,以下详细介绍这三个角色
  DBA:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
  RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构(比较疑惑这个概念)。
  CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体(实体应该就是数据库,数据表、字段、触发器、存储过程等吧),不可以创建数据库结构。
  对于普通用户:授予connect, resource权限。
  对于DBA管理用户:授予connect,resource, dba权限。
  注:数据库结构与实体的概念我也有些模糊,对其的理解只是猜测,在网上也没有查询到详细概念,希望专家解惑。。。。
  关于各角色的具体权限也可以通过以下sql语句进行查询
select grantee,privilege from dba_sys_privs where grantee='RESOURCE' order by privilege;
select grantee,privilege from dba_sys_privs where grantee='CONNECT' order by privilege;
select grantee,privilege from dba_sys_privs where grantee='DBA' order by privilege;
  如图:查询的是 RESOURCE 角色的权限
  关于创建用户知识点的总结就到这里了,还有一些不足的地方,望大家指正。
  另附上在cmd 命令框架中,导出,导入数据库的语句,请大家一并笑纳,嘿嘿
  导出语句以及实例
  exp 用户名/密码@服务器IP/ORCL file=e:\0202daochu.dmp owner=(用户名)
  exp myName/myPwd@127.0.0.1/ORCL file=e:\0202daochu.dmp owner=(myName)
  导入语句以及实例
  imp 用户名/密码@服务器IP/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log
  imp myName2/myPwd2@127.0.0.1/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log
  以上语句是将 用户名为 myName的数据库导出,在E盘生成文件 0202daochu,
  并通过导入语句,将数据库内容导入给myName2用户,并生成日志文件
  大体操作流程:  ctrl+r ,切出运行程序,输入cmd ,在控制台输入以上相应语句,即可,如下图为导出myName数据库
版权声明:51Testing软件测试网原创出品,未经明确的书面许可,任何人或单位不得对本文进行复制、转载或镜像,否则将追究法律责任。

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2018, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道