小编在测试的过程中,由于测试环境问题,会经常用到数据迁移,接下来提供一个小编所学习到关于oracle数据库迁移简单方便的办法,分享给需要的朋友,欢迎收藏!⭐️
Windos系统用PL/SQL Developer软件进行Oracle数据库备份/迁移步骤:
【备份】
1.先登录需要转移的数据库
2. 导出表结构(把表空间与原先的用户名也一起导出)
(1)选择我的工程--->工具--->导出用户对象
(2)为了导出时,是带原先的表空间的用户,尽量与旧库保持一致,需要将下列2勾选上:
-
☑️包括存储
-
☑️包括所有者
(3)选择要导出的表结构(数据不大的情况下建议全选,要是数据量太大 ,可以根据自己需求,选择想要基础数据)
(4)选择导出路径(如,以存放桌面为例:C:\Users\Administrator\Desktop\name.sql,记住自己选择的文件存放路径,后面会用到)
(5)点击导出按钮
3.导出数据是可能为utf-8格式的会出现乱码,此时需要将其进行转码为gbk2312
(转码工具Notepad++等,小编用的是Notepad++)
4.开始导数据
工具—》导出表--》SQL插入,选择需要导出的数据表,选择导出路径点击导出按钮
【迁移】
5.在新的数据库上,创建表空间
服务器上登入数据库,或者在客户端命令窗口执行也行
su - oracle
sqlplus /nolog
conn /as sysdba
--第1步:创建临时表空间
create temporary tablespace dbUser_TEMP
tempfile '/home/oracle/tablespace/dbUser_TEMP.dbf'
size 1G
autoextend on
next 1m
extent management local;
--第2步:创建数据表空间
create tablespace dbUserSpace
logging
datafile '/home/oracle/tablespace/dbUser.dbf'
size 1G
autoextend on
next 1m
extent management local;
--第3步:创建用户并指定表空间
create user dbUser identified by dbUserPassword
default tablespace dbUserSpace
temporary tablespace dbUser_TEMP;
--第4步:给用户授予权限
grant connect,resource,dba to dbUser;
6.登录创建的新用户
7.在PL/SQL客户端--》执行sql(先执行表结构,再执行表数据)
新建命令窗口,执行sql
@后面跟上sql的文件路径,这边以桌面文件为例
@C:\Users\Administrator\Desktop\***.sql
------------------------------------------------------------------------------------------------------------------------
PS:备用命令,要是操作失败,删掉数据库用户和表空间,重头再来!
--删除数据库用户
drop user dbUser cascade;
--删除表空间
drop tablespace dbUserSpace including contents and datafiles cascade constraints;