主页 > 知识库 > shell脚本操作oracle删除表空间、创建表空间、删除用户

shell脚本操作oracle删除表空间、创建表空间、删除用户

热门标签:华锋e路航港口地图标注 客服外呼系统怎么样 打电话机器人接我是他的秘书 江苏云电销机器人公司 地图标注员都是年轻人 揭阳智能电话机器人推荐 河南信誉好的不封卡电话外呼系统 百度地图标注错了有责任吗 如果做线上地图标注

oracle下表空间的导出,用户的删除,表空间删除,用户新建,表空间新建,数据导入的shell
使用非oracle用户执行该脚本
参数说名
$1:base表空间的用户名
$2:同步表空间的用户名
使用场景
测试用,base表空间用于升级建立一些固化数据。同步表空间用于测试用,每次去和base表空间拉平数据

复制代码 代码如下:

#!/bin/sh
oraclehome=$ORACLE_HOME
echo $oraclehome
localdir="/oracle/data"
echo $localdir
#删除已经存在的临时dmp文件
rm -rf $localdir/$2temp.dmp
rmresult=$?
echo "rm $2temp.dmp result:$rmresult"
#将用户$1的表空间导出
su - oracle -c "exp dba/dba file=$localdir/$2temp.dmp owner=$1"
expresult=$?
if [ "$expresult" != "0" ];then
        echo "exp $1 tablespace failure!!!"
fi
#先删除用户$2及其表空间,然后再新建该用户及表空间
su - oracle -c "${ORACLE_HOME}/bin/sqlplus /nolog" EOF
connect / as sysdba
drop user $2 cascade;
drop tablespace $2 including contents and datafiles;
create tablespace $2 datafile '/oracle/product/10.2.0/oradata/$2.dbf' size 5M autoextend on;
create user $2 identified by "$2" default tablespace $2 temporary tablespace TEMP profile DEFAULT;
grant connect to $2;
grant resource to $2;
grant create any table to $2;
grant create any trigger to $2;
grant create any type to $2;
grant create any view to $2;
grant unlimited tablespace to $2;
exit
EOF

crdrresult=$?
if [ "$crdrresult" != "0" ];then
        echo "drop user and tablespace failure!!!"
        echo "create user and tablespace failure!!!"
else
#刚建完的用户不能马上使用,等候10秒
        sleep 10s
#更换dmp文件中的表空间名
        sed -i 's/TABLESPACE "$1"/TABLESPACE "$2"/g' $localdir/$2temp.dmp
#使用imp命令导出表空间数据到用户$2的表空间
        su - oracle -c "imp dba/dba file=$localdir/$2temp.dmp  fromuser=$1 touser=$2"
        impresult=$?
        if [ "$impresult" != "0" ];then
                echo "imp failure!!!"
        else
                echo "imp success!!!"
        fi
fi

您可能感兴趣的文章:
  • 使用sqlplus命令行工具为oracle创建用户和表空间
  • oracle创建表空间、授权、创建用户、导入dmp文件
  • Oracle 删除用户和表空间详细介绍
  • Linux下Oracle删除用户和表空间的方法
  • Oracle新建用户、角色,授权,建表空间的sql语句
  • Oracle数据库的实例/表空间/用户/表之间关系简单讲解

标签:娄底 马鞍山 许昌 邵阳 赤峰 巴彦淖尔 淘宝邀评 金昌

巨人网络通讯声明:本文标题《shell脚本操作oracle删除表空间、创建表空间、删除用户》,本文关键词  shell,脚本,操作,oracle,删除,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《shell脚本操作oracle删除表空间、创建表空间、删除用户》相关的同类信息!
  • 本页收集关于shell脚本操作oracle删除表空间、创建表空间、删除用户的相关信息资讯供网民参考!
  • 推荐文章