Oracle使用SQL脚本创建表空间,用户,分配权限
2012-09-19 10:46
791 查看
一.背景
拿到客户现场的一个oracle数据库备份,要在公司服务器上创建相应的数据库,还原数据库,以便程序开发之用。在服务器上安装好Oracle数据库,创建了对应的数据库实例后, 就需要创建表空间,创建数据库用户,并给数据库用户分配相关的权限了。于是写了个简单的脚本来完成这个工作, 以后如果又要做类似的工作时, 简单修改下脚本就可以了。二.思路
弹不上思路,就是几个简单的步骤:1. 声明变量, 存放表空间名称,用户名,密码,数据文件路径等, 以后只要修改这些信息, 就可以创建不同的数据库信息了。
2. 判断表空间,用户名在数据库中是否已经存在, 是否需要删除已经存在的表空间和用户信息
3. 创建表空间
4. 创建用户,指定默认表空间
5. 给用户分配权限
三.示例
示例中的表空间,用户名,密码等信息不是真实的值, 实际项目中应当使用有意义的值。/** 使用SQL脚本创建表空间,用户,分配权限 @author chengjiarong @date Auguest 21st. 2012 数据库信息: 用户名:test_username 密码:123456 表空间:test_namespace 数据文件:D:\data\oradata\orcl\test_namespace.dbf 初始大小: 100m 增长幅度:10m PS: a.新建的表空间名称最好和备份文件dmp的表空间名称一致, 因子如果表中含有BLOB类型字段时,表空间的名称必须是一致的,不然imp导入会出错 b.表空间名称重命名方法:alter tablespace test_namespace rename to new_namespace; **/ -- 1. 声明变量: declare --用户名 usrName varchar2(20) := 'test_username'; --密码 pwd varchar2(20) := '123456'; --表空间名称 tsName varchar2(20) := 'test_namespace'; --数据文件存储路径 dfPath varchar2(300) := 'D:\data\oradata\orcl\test_namespace.dbf'; --临时字符串变量 tmpStr varchar2(300); --是否删除已经存在的用户和表空间 isDelUsrAndTs boolean := true; begin -- 2. 删除已存在的用户和表空间 if isDelUsrAndTs then tmpStr := 'drop user '||usrName||' cascade'; execute immediate tmpStr; tmpStr := 'drop tablespace '||tsName||' including contents and datafiles'; execute immediate tmpStr; end if; -- 3. 创建表空间 tmpStr := 'create tablespace '||tsName||' datafile '''||dfPath||''' size 100m autoextend on next 10m maxsize unlimited'; execute immediate tmpStr; -- 4. 创建用户,分配默认表空间 tmpStr := 'create user '||usrName||' identified by '||pwd||' default tablespace '||tsName; execute immediate tmpStr; -- 5. 给用户分配权限 tmpStr := 'grant connect,resource,dba to '||usrName; execute immediate tmpStr; end;
相关文章推荐
- Oracle 创建表空间,用户,权限分配脚本
- oracle 使用plsql 创建表空间,用户以及分配权限
- Oracle 使用sql创建表空间及用户
- oracle创建表空间、用户、分配权限
- Oracle创建表空间,用户,分配权限
- Oracle创建表空间、用户、分配权限语句
- Oracle创建表空间、用户、分配权限语句
- oracle创建表空间、用户以及给用户分配权限
- ORACLE创建用户、创建表空间、分配权限、删除用户操作
- oracle 基础 创建表空间并分配用户权限
- Oracle 创建用户并分配表空间、权限
- oracle 使用pl/sql创建用户和表空间
- oracle sql语句创建表空间、用户、并给用户赋予权限
- oracle 创建表空间 与创建用户与分配用户权限
- (一)oracle创建用户、表空间、临时表空间、分配权限步骤详解
- Oracle 创建用户、修改用户信息、为用户分配权限、为用户分配表空间配额、删除用户
- oracle创建表空间,删除表空间,同时pl/sql 创建用户的时候赋予的权限
- Oracle创建用户、分配权限、定时机制、创建表空间等
- Oracle——创建用户、工作空间以及导入sql脚本
- (通过SQL*Plus)Oracle创建表空间、用户并授予权限命令,切换当前用户