oracle数据库迁移步骤思路
发表于:2024-09-24 作者:千家信息网编辑
千家信息网最后更新 2024年09月24日,背景:做为一名DBA,oracle数据库迁移是经常要遇到的事情,正好最近我也在迁移一个业务系统,数据库就是oracle,顺便记录一下。说明:为了方便说明,旧的数据库称为A,新的为B。用户和密码是IRP
千家信息网最后更新 2024年09月24日oracle数据库迁移步骤思路
背景:做为一名DBA,oracle数据库迁移是经常要遇到的事情,正好最近我也在迁移一个业务系统,数据库就是oracle,顺便记录一下。
说明:为了方便说明,旧的数据库称为A,新的为B。用户和密码是IRP/IRP , B是全新的环境。
步骤思路:
1.从 A 上导出数据文件。
sqlplus /nologconn / as sysdbaEXP IRP/IRP BUFFER=64000 FILE=D:\test.DMP log=D:\test.log OWNER=IRP
2.在A机器上查看用户默认表空间,以便导入时创建一样的表空间
SQL> select username,default_tablespace from dba_users where username ='IRP'; USERNAME DEFAULT_TABLESPACE ------------------------------ ------------------------------ IRP IRP
3.查看用户使用的表空间
SQL> select DISTINCT owner ,tablespace_name from dba_extents where owner like 'IRP'; OWNER TABLESPACE_NAME ------------------------------ ------------------------------ IRP IRP
4.查看表空间对应的数据文件,以便在B上创建大小合适的数据文件。
SQL> select file_name,tablespace_name from dba_data_files where tablespace_name in 'IRP'; FILE_NAME TABLESPACE_NAME ------------------------------------------------------------ ---------- D:\APP\ADMINISTRATOR\ORADATA\ORCL\IRP.DBF IRP 如果用户使用多个表空间,查询语句如下select file_name,tablespace_name from dba_data_files where tablespace_name in ('IRP1','IRP2');
5.检查B机器的表空间,看是否存在IRP(如果是新的服务器,不需要这一步)
select name from v$tablespace where name in 'IRP' 查找不到,说明没有这个两个表空间,需要创建。
6.在B上创建表空间、用户并授权
创建大文件表空间CREATE BIGFILE TABLESPACE "IRP" DATAFILE 'D:\app\oracle\oradata\orcl\irp.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; 创建默认表空间或者 CREATE TABLESPACE "IRP" DATAFILE 'D:\app\oracle\oradata\orcl\irp.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 10000M LOGGING EXTENT MANAGEMENT LOCAL; 创建用户 CREATE USER "IRP" PROFILE "DEFAULT" IDENTIFIED BY "IRP" DEFAULT TABLESPACE "IRP" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK; 授权 GRANT "CONNECT" TO "IRP"; GRANT "RESOURCE" TO "IRP"; GRANT unlimited tablespace TO "IRP";注: BigFile表空间只能创建一个datafile数据文件,SmallFile表空间最多可以创建1024个数据文件
7.如果在服务器B上已经存在该用户,怎么样删除该用户.
查看是否存在该用户SQL> select username from dba_users where username='IRP'; 删除用户及其拥有的所有对象drop user IRP cascade; 查看这个用户下面是否有对象;select object_type,count(*) from all_objects where owner='IRP' group by object_type OBJECT_TYPE COUNT(*)------------------------------------------------------------ ----------1 SEQUENCE 3 2 PROCEDURE 5 3 LOB 139 4 PACKAGE 3 5 PACKAGE BODY 2 6 TRIGGER 1 7 TABLE 384 8 INDEX 426 9 FUNCTION 6
此时如果这个用户在连接,drop会出错,必须先杀掉用户的session,然后再drop user
构建杀掉IRP用户session的语句并执行,SELECT 'alter system kill session '''||SID||','||SERIAL#||''' immediate;' FROM V$SESSION WHERE USERNAME='IRP';上面的语句是构建出杀掉IRP用户session的语句,再复制这些语句,粘贴到sqlplus中执行,来杀掉IRP的session。'ALTERSYSTEMKILLSESSION'''||SID||','||SERIAL#||'''IMMEDIATE;' --------------------------------------------------------------alter system kill session '9,42043' immediate; alter system kill session '10,9137' immediate; alter system kill session '72,17487' immediate; alter system kill session '84,3280' immediate; alter system kill session '91,976' immediate; alter system kill session '100,13516' immediate; alter system kill session '111,5973' immediate; alter system kill session '115,4751' immediate; alter system kill session '120,10356' immediate; alter system kill session '211,4075' immediate; alter system kill session '216,48068' immediate;
8.最后在B上导入数据
一定注意执行imp时要退出sqlplus,直接在命令行执行。
IMP test/test BUFFER=64000 FILE=D:\test.DMP log=D:\imptest.log FROMUSER=IRP TOUSER=IRP
用户
空间
数据
文件
语句
数据库
对象
服务器
机器
服务
思路
步骤
合适
业务
两个
事情
全新
命令
多个
大小
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全等级测评师2021
常州电子网络技术怎么样
浙江电商软件开发工具
西安万国润播网络技术
山东网络安全法
太仓高品质服务器价格咨询
腾讯的网络安全产品
杭州管理软件开发贵吗
显示器怎么分屏软件开发
网络安全创新能力大赛
浙江通讯软件开发值得推荐
网络安全和网络警察
全局数据库和容器数据库
聊城电商软件开发哪家好
网络安全 信创市场规模
绥化市委网络技术服务中心
工控网络安全学习
如何在手机上制作数据库
预防和控制信息网络安全
新媒体网络安全工作总结
二级网络技术无纸化考试
企业网络安全看法
彩虹3引擎装备数据库
华电天仁实时数据库
有关于网络安全的作文
数据库的编码是什么
宁国软件开发公司哪家靠谱
学校网络安全教育周活动简报
激光雕刻软件开发
打别人电话服务器错误是什么意思