oracle11g数据库迁移到oracle19G总结和步骤

目的oracle11g环境移到oracle19G

准备

1.oracle11g数据库全表导出。
简单案例:
expdp d1b/d1b directory=data_dir dumpfile=pdb1.dmp logfile=pdb1.log full=y
2.安装oracle19G,看网上教程。
3.学习oracle多租户,cdb,pdb相关知识。

开始

创建用户

报错:ORA-65096: 公用用户名或角色名无效 -》oracle要C##开头。

保持用户名不变方法

只能用pdb类型数据库。

常用查询SQL (注意都是在当前容器信息。不同容器有各自的信息)

select status from v$instance; //数据库实例
SELECT * FROM v$version; //数据库版本
select sys_context('USERENV','CON_NAME') from dual; //查询当前容器
select con_id, dbid, name, open_mode from v$pdbs; //查询当前cdb子容器或者当前pdb容器,
select cdb from v$database; //查询cdb状态 YES是启动
SELECT * FROM DBA_USERS ; //查询当前容器用户
select con_id, name from v$datafile //查询数据文件
select * from dba_directories; //查询路径信息
select default_tablespace from dba_users where username='DB' //查询用户的表空间
SELECT * FROM DBA_tablespaces //查询表空间

创建pdb数据库

CREATE pluggable DATABASE pdb1 admin USER pdbadmin

identified BY root111 roles=(dba)

file_name_convert=('/u01/app/oracle/oradata/ECOLOGY/pdbseed',

'/u01/app/oracle/oradata/ECOLOGY/dhdb');

配置tnsnames文件

目录参考:/u01/app/oracle/product/19.2.0/db_1/network/admin
在这里插入图片描述
多加一个实例:原来基础,复制一个,改名称即可。
然后重启数据库,重启监听

shutdown  immediate
startup
lsnrctl status  
 lsnrctl start
 lsnrctl stop

说明:

pdb1:pdb数据库名
pdbadmin:新建用户名
root111 :新建用户名密码
第一个路径:是pdbseed的存放文件目录。pdbseed是创建pdb数据库模板。
第二个路径:是新建pdb数据库存放文件目录。
前提:mkdir dhdb (新建好文件目录)

创建用户和授权

create user D1B111 identified by db111 default tablespace users account unlock;
grant connect,resource,unlimited tablespace,dba to d1b111;
grant create table , create view to d1b11 ;

创建表空间

CREATE TABLESPACE ERPDATA DATAFILE '/u01/app/oracle/oradata/ECOLOGY/nfdhdb/ERPDATA_01.DBF' 
SIZE 50M REUSE AUTOEXTEND ON NEXT 100M MAXSIZE 30720M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
USERS

创建路径名和授权 (导入和导出用到)

drop directory data_dir
create directory data_dir as '/home/oracle/impdp';
select * from dba_directories;
grant read,write on directory data_dir to d1b111;

导入数据

impdp d11b/db22@nfdhdb DIRECTORY=data_dir DUMPFILE=NFDHTEST_20221105.dmp
 FULL=y logfile=NFDHTEST_impdp.txt
导入报错

报错:ORA-39002: invalid operation ORA-39070: Unable to open the log file. ORA-292
方案1:查询当前容器是否有该路径。
方案2:确定路径是否正确:/和\
方案3:给/home/oracle/impdp文件授权每个层级都加上:chmod 777 文件名。

连接

查看有导入成功有数据。正常。
在这里插入图片描述

应用连接url

测试要改为/才可以连接。
url=“jdbc:oracle:thin:@10.60.6.91:1521:nfdh1db”
改为:
url=“jdbc:oracle:thin:@10.60.6.91:1521/nfdh1db”

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值