体现本文更好浏览效果请访问源地址:
http://blog.csdn.net/huangyanlong/article/details/48776573

原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任。

深蓝的blog: http://blog.csdn.net/huangyanlong/article/details/48776573

【前言】

自接触oracle至今,愈是深入了解oracle愈是察觉到个人的渺小,时常感受到技术知识可以助推思维方式,一路走来,在汗水中收获着成长的充实,不仅局限于oracle技术,借由此系列文章,分享个人在追逐DBA道路上收获的些许感悟与成长的点滴记录。在浩瀚星空里,鉴证自己人生中那一道弧线。

凌乱中找回生活的节奏,在加班的日子里,没有了多余的杂念。
(深蓝)

很久没有更新文章了,在这段日子里,兼顾着原本的工作的基础上,开始逐步学习项目建设、项目管理的知识,学习着如何推进项目,如何建设团队,零零总总的知识,一时间感觉到24小时还真是如此短暂。
在紧张的工作之余,意料之外的找到了一些生活的气息。还是比较心怀感恩的在一步一步前行着。曾几何时,有老大哥跟我说生活不只是工作而已,需要有梦想,同样需要有情感的支持,生活是个永恒的旋律,不能单方向前行,要不然索然无味,生活乏味会让人身心疲惫。想毕,当时是不以为然,而现如今的转变,很多事,已经可以放下,这才发现,原来不经意的一次尝试,可能真有什么命里注定,当不再驻足过往的风景时,人生中的岔路口上,会自然而然的铺开一条路,而顺路前行,心灵如同是敞开了一扇开阔而且光亮的窗。
开始学着经营起一份感情,不刻意,不强求,随遇而安,岁月安好。

篇章一:回归生活
当机缘让两个人相遇,将不再是悔恨往昔,冥冥中,不期而遇的某一天,对未来有了更美好的憧憬。
(深蓝)
钟摆嘀嗒嘀嗒,1:00,2:00,3:00,今夜有些莫名的孤单,不太想说话,注视着夜色的光亮顺着窗帘映射进酒店的房间内,眼望天色在天边处已渐渐探出一丝光亮。一种说不出的情绪,在静谧的夜空下却感觉出下雨的情绪。
不经意间,已经转眼过了22天,仿佛只是过了两天的光景,意识中有些分不出是哪个周末发生的事,在某一个清晨开始了这段旅程,却在心里贮藏了一个有些朦胧的面庞。
(深蓝)于郑州,9月12日,早。

感情,是需要时间去了解彼此内心的,一个圆,左半部分和右半部分,有一点偏离了,那就不再是圆了。
(深蓝) 于郑州2015年9月20日星期日 2:00 早安。

当遇见,有些慌张来的不适时宜,又却恰当好处,不刻意,不掩饰,对于未来既然已坚定,对当前就应义无反顾。且行且珍惜的态度。

夜幕下,突然醒了过来,睁着眼睛发呆,看着天花板,眼前开始闪现出不同的画面,一幕幕幻灯片的情节,仿佛就像是昨天发生的一样,一刹那感觉时间这东西,原来过得好快。回望在一个人的日子里,自由、无拘、无束、没什么不用管、没什么牵绊、享受着孤独、想走就走的日子里,让人反而觉得自在。这样的日子是不是需要改变一下了呢?静谧下,脑子里突然乱乱的。

想好了嘛?自己在质疑。

自己靠谱嘛?优容寡断的那种感觉?还要太认真嘛?一时间突然又仿佛陷入到曾经的过往里面。

朦朦胧胧的有些飘离。
(深蓝) 于郑州2015年9月21日星期一 05:00。

未来安好

有些小幼稚,却心里很温暖。
记不清上次收到类似礼物这样子的东西是什么时候了,有些意料之内,却被一些小幼稚触动着心底,狠狠的暖了一把。
(深蓝) 于郑州2015年9月21日星期一 00:00。

中秋,平静中度过
中午好像空调开的过猛,嗓子变得沙哑,不想说话,脑袋有些迷糊,爬在床上不想动堪。
但,迷糊的,还是有些莫名的高兴。当看到蹦蹦哒的消息时心情就会好好的。哈,有些幼稚吧。出差在外的日子里,不联络与距离感有时候可能是一道屏障,但有时候似乎也是一种体验,也许在经历过了这样的日子里,才懂得身边的人,需要珍惜。一路花香,回望风景,人在其中,却未闻花香,而远了,才感受到,花香其实早在不经意间环绕在身旁。
愿,安好。健康。豁达。
(深蓝)于郑州2015年9月28日星期一 02:32

篇章二:数据迁移
靡不有初,鲜克有终。做好该做的责任,为建库护航,不会丢弃的oracle。
(深蓝)
本次完成一次数据迁移的任务,数据库字符集的调整:ZHS16GBK—>AL32UTF8
源库建库时使用的字符集是ZHS16GBK,目标库的数据库字符集是AL32UTF8。

本次迁移,新库与老库的区别上,简单分为如下情况:
第一部分:新库与老库,表级结构不变化,数据量小(5G);
第二部分:新库与老库,表级结构不变化,数据量大(1T);
第三部分:新库与老库,表级结构变化,数据量小(15G);

有数据量不大的表,计划采用dmp的方式进行。但是遇到一个问题就是关于中文字符的处理。在ZHS16GBK下,一个中文需要两个字节,而在AL32UTF8下,一个中文需要三个字节。这也就意味着相同的表结构下,源库下的数据有可能在插入到新库时出现字符超长的可能。
对于该部分,先在新库中创建相同的表空间、用户、赋予相应权限。
由于数据量不大,迁移前,做一次全库级导入测试,保留imp日志,会在日志中筛选出由于中文引起的长度问题;
然后将业务中字段长度不受影响的表以dmp的方式导入目标库中,查看dmp日志;
(1)、查看日志,如果出现“EXP-00003:未找到段 (0,0)的存储定义”错误,需手工补充建表;
(2)、查看日志,如果出现“ORA-01461:仅能绑定要插入 LONG列的 LONG值”错误,由于字符长度超过4000引起,需要把数据类型由varchar2改为clob;
(3)、通过dmp日志,查看到需要扩充字段长度的表信息,例如:

根据上面查明的问题,由源端数据库导出相应的建表语句,针对不同问题修改脚本,重新整理补充建表语句,并把需要扩容长度的表手工将其调整结构后,手工创建出来。接下来,执行了目标端补充建表语句。然后,手工抽取字段长度变更表的业务数据。最后对源端、目标端表级数量进行一次统计,数据量相同后确认迁移完成。
迁移第二大部分,表级结构不变,但是大数据量的表,对部分创建分区的数据,以分区的形式dmp导出数据。然后导入到新库下面,最后导出完成后,统计源端、目标端的数据量,确认导出完成。由于该大数据量表数据皆增量来自于不同的业务库,所以后续迁移完成后,调整了数据增量的地址。
而对于迁移第三大部分,涉及到结构变更,就不能使用dmp的方式了,而是选择采用了编写字段对应的方式,使用insert的方式完成数据的迁移任务。

篇章三:字典转换打开尘封的潘多拉,曾经坚定的梦,原定的路,依然在继续前行。
(深蓝)
在本次的建库工作中,不只是需要数据迁移,还需要完成字典转换的任务。原因在于字典类的代码由业务部门进行了重新的调整和统一,所以需要按新标准对字典进行转换。

这次对于字典转换,涉及到两个方面,如下:
第一方面:对于落地数据字典的转换;
第二方面:对于增量的数据,按新标准字典进行转换;

首先需要整理出一套新标准代码与老代码的对应关系,类似格式如下:
字典翻译用表:

范例:表名称:CODE_YEWU 业务平台字典表

简单的列举一个处理方式,思路上就是使用子查询的方式,如下:

落地数据的转换范例:对test表的ysdm字段进行转换,其中ysdm表示颜色代码,ysmc代表颜色名称。
参考语句如:
update table test a set (a.ysdm,a.ysmc)=(
select b.code,b.name
from code_yewu b
where b.root_key=’YSDM’
and b.old_code=a.ysdm
);
新数据的转换范例:
在对新增量数据进行转换时,采用插入数据时通过调用字典转换表(code_yewu)来完成字典的转换后,直接插入到数据库中。
参考语句如下:
insert into test(id,name,ysdm,ysmc)
select
sys_guid,
t.name
(select a.code,
a.name
from code_yewu a
where a.root_key=’YSDM’
and a.old_code=t.ysdm)
from old_test@dblink t;

篇章四:表结构的差异比较在不同的业务系统之间,有时候会遇到比对表结构差异的情况,这里举例一个方式,可以利用oracle的外连接来实现列举两方的结构差异。

举例一个方法:
整理的源库中的表结构excel;
整理的目标库的表结构excel;

创建A表的结构(为了放入源库结构数据)
create table A
(
t_name_A varchar2(500),
t_col varchar2(500),
t_type varchar2(500),
t_comment varchar2(500)
);

–源库中表名,字段名,类型,中文注释

创建B表的结构(为了放入目标库结构数据)
create table B
(
t_name_A varchar2(500),
t_name_B varchar2(500),
t_col varchar2(500),
t_type varchar2(500),
t_comment varchar2(500)
);

–源库中表名,目标库中表名,字段名,类型,中文注释
–这里为了做比较,所以把A表的源库表名也建在了B表中,这样有个更直观的比较,为后续做准备

然后使用SQL Loader或PL/SQL Developer等工具把excel数据导入到相应的表中去。

下面从A表和B表中获取到需要拼接及比较差异的字段,生成中间表A1、B1
create table A1 as
select t_name_A,t_col,t_type,t_comment,t_name_A||t_col lm
from A;

create table B1 as
select t_name_A,t_name_B,t_col,t_type,t_comment,t_name_A||t_col lm
from B;

然后,根据A1、B1的内容,利用join形成差异统计表数据
create table bd
as
select
a.t_name_A,a.t_col,a.t_type,a.t_comment,a.lm,b.lm b_lm,b.t_name_A b_t_name_A,b.t_name_B,b.t_col b_t_col,b.t_type b_t_type,b.t_comment b_t_comment
from
(select t_name_A,t_col,t_type,t_comment,lm from A1) a
FULL join
(select t_name_A,t_name_F,t_col,t_type,t_comment,lm from B1) b
on a.lm=b.lm;

补充,可以利用all_tab_columns视图,查看出具体表下字段的结构,不过用此视图拼接的话,得到的number类型长度默认为number(22),得到的date类型默认为date(7),还需要手工二次修正。

篇章五:望眼项目读万卷,行万里,面对苍茫,沉心静气,迎新去垢。
(深蓝)
在尝试角色变换的日子里,蓝,感受到不曾有过的压力感,同样意识到需要学习的知识和技能,不是一朝一夕就可以达到的。这个需要一段时间来让自己强大起来。

后续的计划,简单中摸索:
(计划1)
熟读百遍的“指导任务书”:想成为团队的掌舵人,就要先把自己的认知丰富起来;
很多时候,重复是最好的老师,把简单的方法量化起来,那就会显得不简单。

(计划2)
学而不思则罔,思而不学则殆:项目建设,技术思维乘风,管理思维破浪;
项目经理既不是技术的实施者,也不是什么事都要自己来的“超人”,把控整个的项目建设才是应该做的,而不要把自己放置到了一个打杂的定位上去。

不要让安逸毁了自己,不要让胆怯混沌了目光,做坚毅的践行者,为项目付诸于一腔热血。
(深蓝)

蓝的成长记系列_20151022

原创作品,出自 “深蓝的blog” 博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/huangyanlong)。

蓝的成长记——追逐DBA(1):奔波于路上,挺进山东

蓝的成长记——追逐DBA(2):安装!安装!久违的记忆,引起我对DBA的重新认知

蓝的成长记——追逐DBA(3):古董上操作,数据导入导出成了问题

蓝的成长记——追逐DBA(4):追忆少年情愁,再探oracle安装

蓝的成长记——追逐DBA(5):不谈技术谈业务,恼人的应用系统

蓝的成长记——追逐DBA(6):做事与做人:小技术,大为人

蓝的成长记——追逐DBA(7):基础命令,地基之石

蓝的成长记——追逐DBA(8):重拾SP报告,回忆oracle的STATSPACK实验

蓝的成长记——追逐DBA(9):国庆渐去,追逐DBA,新规划,新启程

蓝的成长记——追逐DBA(10):飞刀防身,熟络而非专长:摆弄中间件Websphere

蓝的成长记——追逐DBA(11):回家后的安逸,晕晕乎乎醒了过来

蓝的成长记——追逐DBA(12):七天七收获的SQL

蓝的成长记——追逐DBA(13):协调硬件厂商,六个故事:所见所感的“服务器、存储、交换机……”

蓝的成长记——追逐DBA(14):难忘的“云”端,起步的hadoop部署

蓝的成长记——追逐DBA(15):以为FTP很“简单”,谁成想一波三折

蓝的成长记——追逐DBA(16):DBA也喝酒,被捭阖了

蓝的成长记——追逐DBA(17):是分享,还是消费,在后IOE时代学会成长

蓝的成长记——追逐DBA(18):小机上WAS集群故障,由一次更换IP引起

蓝的成长记——追逐DBA(19):路上的插曲:触碰“框架”与“软件系统”

蓝的成长记——追逐DBA(20):何故缘起,建库护航

蓝的成长记——追逐DBA(20):何故缘起,建库护航 (二次发布-练习使用markdown编辑)相关推荐

  1. 蓝的成长记——追逐DBA(20):何故缘起,建库护航

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog: http://blog.csdn.net/huangyanlon ...

  2. 蓝的成长记——追逐DBA(17):是分享,还是消费,在后IOE时代学会成长

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  3. 蓝的成长记——追逐DBA(12):七天七收获的SQL

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  4. 蓝的成长记——追逐DBA(3):古董上操作,数据导入导出成了问题

    蓝的成长记--追逐DBA(3):古董上操作,数据导入导出成了问题 ***************************************声明************************** ...

  5. 蓝的成长记——追逐DBA(6): 做事与做人:小技术,大为人

    ***********************************************声明*************************************************** ...

  6. 蓝的成长记——追逐DBA(10):飞刀防身,熟络而非专长:摆弄中间件Websphere

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  7. 蓝的成长记——追逐DBA(14): 难忘的“云”端,起步的hadoop部署

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  8. 蓝的成长记——追逐DBA(13):协调硬件厂商,六个故事:所见所感的“服务器、存储、交换机......”

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  9. 蓝的成长记——追逐DBA(2):安装!安装!久违的记忆,引起我对DBA的重新认知

    蓝的成长记--追逐DBA(2):安装!安装!久违的记忆,引起我对DBA的重新认知 ***************************************声明****************** ...

最新文章

  1. oracle 迁移用户信息,Oracle备份一个用户并迁移
  2. Linux下的awk用法详解
  3. 关于table边框,设置了border-collapse:collapse之后,设置border-radius没效果
  4. LeetCode Algorithm 剑指 Offer 28. 对称的二叉树
  5. js javaScript array 取指定元素索引、判断是否相同、重复、过滤数据
  6. Java默认值规则——各种数据类型的初试值是什么?
  7. java 跳表_跳表 skiplist
  8. DevExpress v18.1新版亮点——WPF篇(一)
  9. python定义一个字符串数组_python 变量,数组,字符串
  10. 如何VARCHART XGantt编写PDF文件
  11. 思科模拟配置文件服务器,思科模拟服务器配置教程
  12. 蔡义江《红楼梦诗词曲赋评注》下
  13. 店宝宝:京东重新进军社区团购
  14. 领域自适应论文(六十八):Implicit Class-Conditioned Domain Alignment for Unsupervised Domain Adaptation论文原理
  15. python 实现雪容融
  16. 中国二线城市有哪些比较知名的芯片设计企业
  17. 旧显卡插上去使用黑屏,需要在BIOS中修改启动模式修改为CMS
  18. Html5 学习笔记 【PC固定布局】 实战5 咨询页面 侧栏
  19. Mysql学习总结十二:系统变量、用户变量、定义条件和处理程序
  20. Item 1: Understand template type deduction

热门文章

  1. Qt的基本控件——显示控件
  2. PS2 键盘在win10下开机过程 收发的数据
  3. oracle中如何转换成数字,如何在Oracle中实现数字进制转换完全版?
  4. 【vue3】远程组件加载
  5. 计算机打印东西怎么横向打印机,ms xps虚拟打印机,如何横向打印显示?
  6. 【表单】表单数据的提交和处理
  7. 计算机考试照片识别,PS照片JPEGsnoop帮你鉴别
  8. TM4C123G学习记录(2)--GPIO
  9. java gui论文_毕业设计论文-基于JAVA GUI的电子邮件客户端软件的设计与实现.doc
  10. 计算机网络 计算路由表