oracle 转移是什么意思,Oracle数据库迁移的几种方式以及一些坑

最近做了个oracle数据库迁移,有几种方式,我来列举几种:1.exp/imp         对象导出

2.expdp/impdp     数据泵导入导出

3.plsql的sql导出

4.navicat的数据传输(带数据迁移)

5.navicat的数据结构同步

刚刚罗列的5种,前几年网上常见的基本是1,2俩种,他俩的操作都是基于命令符操作,需要对命令有一定的了解。

而3,4,5这三种,是小白式窗口点击即可。

这里带来的是窗口直接点击的几种:

plsql----工具(tool)----用户对象(user object)                (支持分区表等复杂表结构,exp不支持导出分区表)用户选中你要导出的用户

输入要保存本地的地址,点击导出。(不选择表默认是全表表结构导出)

然后在把脚本直接复制进plsql执行,复杂的数据库不要使用“导入表”这个功能,否则会丢失部分表或存储过程。

bb2cae546da87b506ced17ba8c8b18f9.png

navicat----工具----结构同步:                                            (只导出表结构,不支持分区表)源选择连接的数据库,目标选择要迁移到保存的数据库

选择表和存储过程(需要哪些就选哪些),点击部署

b2a638981e0952840e456c5f1262e477.png

cf931b448b5bad56f77f9b77bdfa06c0.png

注:如果需要查询数据库表用户给其他用户授权过什么权限。查询sql如下:(结果集即对应权限sql)select 'GRANT '||privilege||' ON ' || table_name || ' to '||grantee||';'  from user_tab_privs u

where u.owner='oracle用户名'

group by u.privilege,u.grantee,u.owner,u.table_name,u.grantor

order by u.grantee;

一些优化排查的sql:--查看被锁的表

select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

--查看那个用户那个进程照成死锁

select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;

--查出锁定表的sid,s.serial#

SELECT s.sid, s.serial#, s.username, s.schemaname, s.osuser, s.process, s.machine,

s.terminal, s.logon_time, l.type

FROM v$session s, v$lock l

WHERE s.sid = l.sid

and s.terminal='WURAO'

AND s.username IS NOT NULL

ORDER BY sid;

--杀掉占用进程sid,serial#

alter system kill session 'sid,serial#';

--查看表数量

select u.TABLE_NAME,u.NUM_ROWS from user_tables u

--查看连接数

select * from v$session;

--查看并发连接数

select * from v$session where status='ACTIVE';

--查找工作空间的路径

select * from dba_data_files;

--添加表空间:

alter tablespace CDI_DATA_TBS add datafile '/u01/app/oracle/oradata/hcctest3/CDI_DATA_TBS_add01.dbf' size 1000M;

1.查看用户的连接状态

select username,sid,serial# from v$session where username='GUI';

2.找到要删除用户的sid和serial并杀死

alter system kill session'74,1648';

3.删除用户

drop user cdi cascade;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值