释放表空间更新Oracle数据库,exp导出 imp导入数据库

本文详细介绍了如何在Oracle数据库中释放表空间、删除用户、解决删除用户时遇到的问题,以及如何导出和导入数据。内容涵盖查看用户连接、强制终止会话、创建表空间、创建用户、分配权限等操作,并提供了错误处理方案和数据迁移的步骤。
摘要由CSDN通过智能技术生成

释放表空间更新数据库

注:需要重新创建用户直接从第3步开始,需要释放以前的表空间和删除用户从步骤1开始

 释放表空间

drop tablespace orderweb including contents and datafiles;

注:orderweb 填写的是表空间名字

注:表空间以及数据文件会一起删除

级联,就把这个用户下的所有东西都给删掉

级联删除用户

drop user orderweb_zzzzyy cascade;   

遇到的问题:

如果执行上面的删除命令出现“oracle无法删除当前连接用户方法

解决1:主要是这个用户的帐号有应用程序在连接;  把这个应用程序暂时关闭即可;

解决2:

 (1)查看用户的连接状况 

select username,sid,serial# from v$session 

如下结果: 

username          sid                serial# 
----------------------------------------
NETBNEW          513              22974 
NETBNEW          514              18183 
NETBNEW          516              21573 
NETBNEW          531              9 
WUZHQ             532              4562

 

(2)找到要删除用户的sid,和serial,并删除 

如:你要删除用户'WUZHQ',可以这样做: 

alter system kill session '532,4562' 

(3)删除用户 

drop user username cascade 

如果在drop 后还提示ORA-01940:无法删除当前已链接的用户,说明还有连接的session,可以通过查看session的状态来确定该session是否被kill 了,用如下语句查看:

select saddr,sid,serial#,paddr,username,status from v$session where username is not null

结果如下(以我的库为例):

saddr         sid       serial#       paddr       username       status

564A1E28       513       22974       569638F4       NETBNEW       ACTIVE

564A30DC       514       18183       569688CC       NETBNEW       INACTIVE

564A5644       516       21573       56963340       NETBNEW       INACTIVE

564B6ED0       531       9         56962D8C       NETBNEW       INACTIVE

564B8184       532       4562       56A1075C       WUZHQ       KILLED

status 为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。

由此可见,ts这个用户的session已经被杀死。此时可以安全删除用户。

注意:你要删除的这个用户,有项目启动在连接此账号,你可以先把tomcat关了,不然会有很多个 session 连接这个账号 ,无法将此账号 killed

导出线上的数据库  

(注:先cmd -->再敲下面的命令)

 exp用户名/密码@数据库实例owner=用户名file=文件存储路径 
例如:exp MM/123456@ORCL owner=MM file=F\abcd.dmp

注: 导出哪个数据库哪个账号下的数据

  exp orderwebst/orderwebstzzzxyy@ORCL owner=orderwebst

file=E:\export_dmp_file\lmgd.dmp log=E:\export_dmp_file\lmgd.txt;
导出远程的数据库:
exp ASSET/ASSET@192.168.6.660:1521/ORCLPDB owner=ASSET file=D:\lmgd\asset.dmp

创建表空间

  create tablespace orderweb     -- 表空间名

   datafile 'E:\lmgd\tablespace\20190916\orderweb.dbf'   --表空间放的路径 路径+文件名

   size 500M autoextend on next 200M --表空间的大小,

创建用户

create user orderweb_zzzzyy identified by orderweb_zzzzyy

  default tablespace orderweb --默认分配到这个表空间里

分配权限

    grant dba to orderweb_zzzzyy;  -- 用这个最高权限

    grant connect,resource to zs [with grant option]; --  连接权,角色权

导入数据 

(注:先cmd -->再敲下面命令!!!!!!)

步骤1:

将E:\lmgd\orderweb20190901\orderweb20190901.dmp 中的数据导入 ORCL数据库中的

orderweb_zzzzyy 账号下。

步骤2 导入:

Imp orderweb_zzzzyy/orderweb_zzzzyy@ORCL ignore=y full=y file=E:\lmgd\orderweb20190916\orderweb20190916.dmp log=E:\lmgd\orderweb20190916\20190916.txt

/* 说明: 注:你需要导入到哪个数据库的账号密码下,填写的是哪个数据库实例

orderweb_zzzzyy/orderweb_zzzzyy@ORCL  --->用户名/密码@数据库实例

 file="需要导入的dmp文件所在位置"   log="日志文件"  FULL=y; */

注: 把上面的命令 复制到文本里面,每个词组命令之间只留下一个空格即可

报错整理

导出时报密码错误(密码正确也提示密码错误)

解决:执行修改密码SQL即可

-- 修改密码
alter user 用户名 identified by 密码;

--账户解锁
alter user 用户名 account unlock 

错误截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值