用了mysql报oracle错误_mysql数据迁移到oracle错误总结

最近处理一个需求,使用脚本方式将mysql里的数据迁移到oracle中。处理思路主要是利用mysqldump导出的insert dump文件,oracle中建立相同表结构执行insert。记录本次操作中遇到的问题与处理方式:

1、超4000字节字符串导入

问题描述

oracle varchar2是不能插入超4000字节的字符串的。但是mysql中并没有限制。此类字段数据无法导入。

处理方式

开始将字段转换为clob字段。但目标端oracle数据库部分业务使用dblink连接。dblink是不支持使用lob字段的。目标端oracle版本为12.2。oracle 12c版本已扩展最大值支持到32767。调整数据库支持32k修改如下:

ALTER SYSTEM SET MAX_STRING_SIZE = EXTENDED SCOPE=SPFILE;

shutodnw immediate;

startup upgrade;

@$ORACLE_HOME/rdbms/admin/utl32k ;

shut immediate;

startup;

再将导入列属性改为需求大小导入成功。但是还有一个问题,dblink不支持clob字段,但是超4000字节的字符串同样不支持。分析主要是select查询业务,业务的sql语句中改为substr取4000字节即可。

2、日期字段修改

问题描述

mysql dump方式导出的insert语句中,关于日期部分,目标oracle端建立date属性列无法识别导入。

处理方式

oracle建立表结构时先使用varchar导入。导入后再进行手工准换。

alter table test add col_name_t date; --添加一个date中间列

update test set col_name_t = TO_DATE(col_name,'yyyy-mm-dd hh24:mi:ss');

commit;

alter table test drop column old_col_name; --删除旧的列

alter table xxx rename column col_name_t to col_name; --转换中间列

3、目标oracle端数据与mysql时间相差8小时

问题描述

数据导入后,业务查询发现oracle端日期比mysql库晚8小时。这主要是时区导致。数据库采用北京时间东八区,mysqldump默认使用–tz-utc参数是0时区。导致导出文件中的timestamp时间值相对于数据库查询显示的时间倒退了8个小时。

处理方式

mysqldump加入 --skip-tz-utc参数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/540033.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

运行Hadoop自带的wordcount单词统计程序

1.使用示例程序实现单词统计 (1)wordcount程序 wordcount程序在hadoop的share目录下,如下: 123456789[rootleaf mapreduce]# pwd /usr/local/hadoop/share/hadoop/mapreduce[rootleaf mapreduce]# ls hadoop-mapreduce-client-app…

java for 线程_如何在for循环中使用多线程

import java.util.concurrent.Executor;import java.util.concurrent.Executors;public class Test {private final static Executor executor Executors.newCachedThreadPool();//启用多线程public static void main(String[] args) {for(int i0;i<3;i){final int ji; …

office2010安装出现错误1935的解决方法

安装Office2010 professional plus 2010过程中弹出错误&#xff0c;提示错误 1935&#xff0c;安装程序集组件的过程中发生错误。HRESULT:0x800070BC9 如下图所示&#xff1a; 这个错误是由于电脑.net framework 未安装或安装有错误导致的。解决方法为&#xff1a;下载.net fra…

java linux 服务_java项目部署Linux服务器几种启动方式总结经验

一&#xff1a;两种部署包&#xff1a;部署之前先说下两种包&#xff0c;java项目部署到服务器一般有用war包的&#xff0c;也有用jar包的&#xff0c;微服务spring-cloud普及后大部分打包都是jar&#xff0c;部署之前先搞清楚自己要打war包还是jar包&#xff0c;下面小介绍两种…

HTML温故知新1

什么是 HTML&#xff1f; HTML 是用来描述网页的一种语言。 HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言&#xff0c;而是一种标记语言 (markup language)标记语言是一套标记标签 (markup tag)HTML 使用标记标签来描述网页 HTML 标签 HTML 标…

java 接口与包_java常用类包接口

类StringIntegerLongFileDateThread(java.lang.ThreadThread类的定义&#xff1a;public class Thread extends Object implements Runnable)包java.lang.*;java.io.*;java.util.*;java.sql.*;java.math.*;接口:ComparableCollectionMapListRunnable(java.lang.Runnable 该接口…

当使用easyui时,表单的onchange事件失效

功能&#xff1a;新增信徒页面&#xff0c;当选择未受洗&#xff0c;设置受洗时间&#xff0c;教堂选项 disabled。 步骤&#xff1a; 在<select>标签里加入 οnchange"xxxxx()"。 在js里编写xxxxx()方法。 测试 教堂选项没有 disabled。 原因&#xff1…

shell脚本:批量修改文件名(文件名中添加字符)

举例如下&#xff1a;批量创建10个随机字符串的文件&#xff0c;要求每个文件名后面添加_aaa,后缀名不变&#xff1b; [rootlocalhost goodboy]# ls adddbbdedf.html baacjaiija.html bhcfaabcfh.html dgjdcdfbca.html efejadfdji.html agdhcdeaje.html bgffbffjcg.html …

java 格式化小数_java-如何格式化小数位数精度

正如评论中指出的那样,如果您只有一个String表示形式,那么就无法判断它实际上是否有重复的部分,或者精度是否不够高.更新我正在研究一个用分子和分母表示为BigIntegers的有理数的类(并假定尽可能地简化).在那里,我实现了一种以十进制字符串形式表示的方法,并提出了以下方法&…

当使用easyui时,jquery的设置disabled属性方法失效

功能&#xff1a;选择未受洗&#xff0c;设置受洗时间&#xff0c;教堂选项 disabled 步骤&#xff1a; 使用了常规的jquery的方法 //两种方法设置disabled属性$(#areaSelect).attr("disabled",true);$(#areaSelect).attr("disabled","disabled&quo…

用户登录提交前,密码加密传输

需求&#xff1a; 因为OA放在外网&#xff0c;为了提高安全性&#xff0c;用户登录时&#xff0c;密码加密传输&#xff0c;数据库密码加密保存。 解决方案&#xff1a; 前台加密用JQUERY MD5插件&#xff0c;这个工具从网上下载的。 后台密码加密&#xff0c;用java的MD5工…

java 内存分布_一图看懂JVM内存分布,永久记住!

经常在说JVM内存分布&#xff0c;也经常去看&#xff0c;但是总是在面试的时候说不清楚或者模糊&#xff0c;甚至有可能说错&#xff0c;只有真正的理解&#xff0c;并且在心中有一个总结构图才能记得清楚说的清楚&#xff01;| JVM总览图java内存区域主要分程序计数器、Java虚…

Winodows10 安全登录(Administrator账户与Microsoft Account关联

我们都知道windows系统最大的管理员是administrator&#xff0c;linux是root&#xff0c;从windows7时代开始&#xff0c;安装操作系统的时候会在最后一步提示创建一个本地账户一直延续到windows8、windows8.1、windows10。近期微软发布了windows10后&#xff0c;很多用户都开始…

微信企业号三个连接模式

在银行里做微信企业号开发有半年多了&#xff0c;因银行封装了调用微信企业号的方法&#xff0c;说是微信企业号开发&#xff0c;其实就是jsp&#xff0c;java代码的编写&#xff0c;银行用的开发工具是EOS&#xff0c;对这个工具我只想说&#xff0c;用久了&#xff0c;就找不…

java opencv安装路径_Java搭建opencv开发环境

由本菜13历经4天才搭建的好的Java OpenCv开发环境带来 .PS:不保证过程都是必须的,必要的.反正我自己成功了... 嘿嘿嘿.官方网站SourceForge点击FilesFiles因为我的机器是Mac,所以选择了unix. 然后下载3.4.3版本3.4.3PS:主要是因为刚开始接触这个OpenCv的时候是用HomeBrew装的, …

iBatis——执行原理

a) 执行原理 1、 将一个对象作为 参数&#xff08;对象可以是Java Bean&#xff0c;Map实现和基本类型的包装类&#xff09;&#xff0c;参数对象将为SQL修改语句和查询语句设定参数值。 2、 执行 mapped statement。这是SQL Maps最重要的步骤。SQL Map框架将创建一个PreparedS…

让IT工作者过度劳累的12个坏习惯

1. QQ、MSN、Gtalk&#xff0c;一个都不少。坏习惯 由于聊天对象与聊天内容的不可控制性&#xff0c;使用即时通讯软件是降低工作效率的罪魁祸首。有调查显示&#xff0c;使用即时通讯软件&#xff0c;工作效率会降低 20%. 2. “总想多看一点点”——忘记上网的目的。 本想查找…

flux java_Java反应式框架Reactor中的Mono和Flux

1. 前言最近写关于响应式编程的东西有点多&#xff0c;很多同学反映对Flux和Mono这两个Reactor中的概念有点懵逼。但是目前Java响应式编程中我们对这两个对象的接触又最多&#xff0c;诸如Spring WebFlux、RSocket、R2DBC。我开始也对这两个对象头疼&#xff0c;所以今天我们就…

MySQL grant 权限,分别可以作用在多个层次上

1. grant 作用在整个 MySQL 服务器上&#xff1a;grant select on *.* to dbalocalhost; -- dba 可以查询 MySQL 中所有数据库中的表。grant all on *.* to dbalocalhost; -- dba 可以管理 MySQL 中的所有数据库2. grant 作用在单个数据库上&#xff1a;grant select on testdb…

用了2年的EOS的感受

EOS是普元信息技术股份有限公司开发的产品&#xff0c;核心是eclipse&#xff0c;给eclipse穿上了很多衣服。不知道普元公司给eclipse捐款了没。 开发人员可以从它的官网免费下载&#xff0c;免费用。免费版的服务器最多链接数是5个人&#xff0c;这5个人在生产上行不通的&…