杨建荣的学习笔记

每天坚持一点点,个人微信公众号: jianrong-notes, 个人邮箱:jeanrock@126.com

  • 博客访问: 13049785
  • 博文数量: 1399
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-14 23:24
  • 认证徽章:
个人简介

每日发文,或技术、或总结,偶有日间小事也以为记,谓之学习笔记,成年累月1300多天,中间几乎没有间断,要旨只有一个:学习交流,共同进步 。 学习笔记精华整理,个人新书《Oracle DBA工作笔记》已开售,在京东,当当,亚马逊,淘宝,天猫均有售,欢迎选购。

ITPUB论坛APP

ITPUB论坛APP



APP发帖 享双倍积分

文章分类

全部博文(1399)

文章存档

2018年(12)

2017年(321)

2016年(358)

2015年(360)

2014年(278)

2013年(48)

2012年(21)

微信关注

IT168企业级官微



微信号:IT168qiye



系统架构师大会



微信号:SACC2013

发布时间:2014-08-21 17:23:38

关于数据迁移,在之前也讨论过一些需要注意的地方,可能林林总总列了不少,都是在数据迁移迁移前和迁移时需要注意的。http://blog.itpub.net/23718752/viewspace-1195364/http://blog.itpub.net/23718752/viewspace-1254945/我在这些帖子的基础上进行更多的总结和补充。数据库级的检查和建议1)参数检查有些参数.........【阅读全文】

阅读(9347) | 评论(4) | 转发(4)

发布时间:2014-08-20 23:02:19

关于数据迁移,在之前也讨论过一些需要注意的地方,可能林林总总列了不少,都是在数据迁移迁移前和迁移时需要注意的。http://blog.itpub.net/23718752/viewspace-1195364/我在这个帖子的基础上进行更多的总结和补充。数据升级前的测试 -)充分的测试,评估时间,总结经验,提升性能, 心中有数。在生产中进行数.........【阅读全文】

阅读(9388) | 评论(1) | 转发(3)

发布时间:2014-08-19 20:59:45

昨天有一个网友问我,怎么能够查询一个表中最后一条插入的记录,我大概回复了,可以通过闪回事务来实现,但是得看什么时候插入的数据,也需要一定的运气。如果通过闪回事务来得到对应的undo_sql,可能多个dml语句对应一个事务,所以我们需要得到的是一个完整的事务的信息,里面包括对应的Undo_sql,这样才算得到比较完整的.........【阅读全文】

阅读(6770) | 评论(0) | 转发(5)

发布时间:2014-08-18 20:07:52

在生产系统中,会发现一些潜在的sql问题,为了能够及时和准确的定位,我们可以借助sql_monitor来做性能sql的查找。可以在后台启用一个job不定时的去查找。毕竟大半夜的我们去监控也是有难度的,我们希望一切都能很自然的处理,结果我在一个指定的目录下每隔10分钟去查找一次性能sql,如果当天已经有生成报告就不重新生成.........【阅读全文】

阅读(7424) | 评论(0) | 转发(5)

发布时间:2014-08-17 19:21:37

在平时的工作中接触到的分区表一般都比较大,而且分区也少则几十,多则几百,上千。在数据迁移的时候,分区表的迁移更是块大骨头,因为数据量太大,而且有些分区表中还有一些lob字段,想直接通过sqlldr来迁移还是需要做一些额外的工作。如果通过datapump分区导出数据,批量导入,也是一种思路,不过需要考虑好并发的进.........【阅读全文】

阅读(6670) | 评论(0) | 转发(3)

发布时间:2014-08-16 22:21:05

在平时的工作中,数据库所处的文件系统是vxfs的话,可以考虑启用veritas的odm特性。ODM(Oracle Dsk Manager)是在oracle 9i之后开放出来管理数据文件,可以提高oracle数据库的输入输出数据吞吐量。Veritas提供了ODM的扩展,可以在VxFS文件系统的基础上,为oracle提供更高的读写速率和更简便的管理,其在VxFS文件系统上的.........【阅读全文】

阅读(7384) | 评论(0) | 转发(3)

发布时间:2014-08-15 23:33:36

在昨天晚上10点开始,数据库的性能开始下降,出现了一些j00开头的进程。而且持续了比较长的时间,简单分析了一下,对应的进程执行的sql语句如下。####### Process Information from OS level as below ########oraccbs1 16184     1 23 22:00 ?        00:.........【阅读全文】

阅读(7291) | 评论(0) | 转发(3)

发布时间:2014-08-15 00:20:54

昨晚在做测试环境数据迁移的时候,遇到了io的问题,本来预计2,3个小时完成的数据导入工作最后竟然耗了7个多小时。在数据的导入中,使用了10个并行的session,每个session都启用的并行度为8,在表级,索引级都做了nologging设置,在insert的时候使用了append模式,结果本来数据的导入还是比较顺利的,突然在8点左右开始就一.........【阅读全文】

阅读(6662) | 评论(0) | 转发(3)

发布时间:2014-08-13 23:36:32

在工作中我们需要查询表的数据条数,一般来说就是使用select count(1)或者select count(*)之类的语句。当然了对于不同的表来说,应该还是可以做一些细分,能够最大程度的提高效率,比如表中含有主键列,尝试走索引扫面可能会被全表扫描效率要高。如果表中的数据太多,而且没有一些相关的约束,可以考虑使用并行来提高等等.........【阅读全文】

阅读(9165) | 评论(0) | 转发(4)

发布时间:2014-08-12 23:41:30

在之前的章节中,讨论过了通过,分区+并行等方式来进行超大的表的切分,通过这种方式能够极大的提高数据的平均分布,但是不是最完美的。比如在数据量再提高几个层次,我们假设这个表目前有1T的大小。有10个分区,最大的分区有400G,那么如果我们想尽可能的平均的导出数据,使用并行就不一定能够那么奏效了。比方说我们要.........【阅读全文】

阅读(9921) | 评论(2) | 转发(4)

发布时间:2014-08-11 19:17:52

在数据迁移的时候,目前启用了10个并行的进程。每个进程负责一部分的数据导入工作。然而在统计数据导入进度的时候,总是感觉抓不到重点,没有一目了然的报告。在定时做数据状态检查的时候,总是凭着感觉和不停的查看日志来得到最基本的状态。为了从这种体力工作中解放出来,今天写一个状态报表来对数据的导入状态进行清晰.........【阅读全文】

阅读(8289) | 评论(0) | 转发(3)

发布时间:2014-08-10 22:56:04

在海量的数据迁移中,如果某个表特别大,可以考虑对表中的分区进行切分,比如某个表有100g,还有100个分区,那么可以考虑针对这100个分区,那么可以考虑把这100个分区看成100个表进行并行抽取,如果某个分区数据比较多,可能生成5个dump,那么着100个分区,就可能生成105个分区以上。那么如果有100多个表,那么可能分区都算.........【阅读全文】

阅读(7633) | 评论(1) | 转发(3)

发布时间:2014-08-09 23:38:09

exp/imp 对于数据结构的复制和同步,还是比较理想的工具。 在数据量比较小的情况下,这个工具的性能要远远好于datapump,而且重点推荐,他对于各种常用数据类型的支持还是很不错的。 有一些特性,在某种程度上要好于datapump,在做数据迁移的时候,commit特性还是很重要的。因为通过datapump碰到了很多undo空间不足带来.........【阅读全文】

阅读(5639) | 评论(0) | 转发(4)

发布时间:2014-08-08 23:51:53

零零星星的接触到写一些shell也有一些日子了,发现自己已经犯了不少的错误,自我总结下。 选择合适的shell shell本身有很多种,大体有如下的几种。 /bin/sh (已经被 /bin/bash 所取代) /bin/bash (就是 Linux 预设的 shell) /bin/ksh (Kornshell 由 AT&T Bell lab. 发展出來的,相融于 bash) /bin/tcsh (整合 C .........【阅读全文】

阅读(5885) | 评论(1) | 转发(5)

发布时间:2014-08-07 23:19:50

在数据迁移的过程中,会产生大量的dump文件,需要对dump的文件情况进行一个简单清晰的管理,比如目录下的文件特别多,而且某些表比较大,对应的dump文件比较多,就想得到一个很简洁的报告,能够统计出来每个表有多少个dump文件。 比如有1000个dump文件,都是基于 表TEST1,TEST2,TEST3,TEST4的。那么就想得到一个简单的统计.........【阅读全文】

阅读(6484) | 评论(0) | 转发(4)

发布时间:2014-08-06 18:25:00

今天在做数据迁移的时候,碰到了一个严重的问题,数据加载完全hang住了,最后无奈回退了。 系统使用的vxfs文件系统,在生产升级前一个月的时候,做过一次小规模的数据迁移,当时查看awr,ash,最后根据addm的推荐得出加载速度比较慢主要是由于异步IO导致的,而且当时生产库确实没有启用异步io, filesystemio_option的.........【阅读全文】

阅读(6542) | 评论(0) | 转发(3)

发布时间:2014-08-05 18:45:13

老是做工作中的数据分析,最近也在看足球彩票,竞猜游戏有输有赢,但是里面还是有不少的数据分析的乐趣,关于足球彩票的分析,自己写了如下的程序,可以参考。当然了,最好能带有主观的分析,这样可能准确率要高一些。以下是仅根据赔率做的一个分析。比如我们目前计划投资100块买单场竞猜,胜平负的赔率就有很大的差别.........【阅读全文】

阅读(5531) | 评论(0) | 转发(3)

发布时间:2014-08-04 13:20:48

在平时的工作中,有时候需要准备一些脚本,比如能够简单验证一下表是否可访问,或者验证表中有无数据等。今天在测试环境进行了简单的模拟,发现还是有很大的差别。简单来说,要实现如上的需求有两种方式,一种是通过count来判断,另外一种是通过rowid来判断。举个例子。先来看一个大表,但是某个分区没有数据的情况。.........【阅读全文】

阅读(5076) | 评论(1) | 转发(3)

发布时间:2014-08-03 19:32:27

在之前的章节中分享过一些数据迁移中并行抽取的细节,比如一个表T 很大,有500G的数据,如果开启并行抽取,默认数据库中并行的最大值为64,那么生成的dump文件最50多为64个,每个dump文件就是7.8G,还是不小,况且在做数据抽取的时候,资源被极大的消耗,如果资源消耗紧张,可能可用的并行资源还不到64个。那么dump文件可能.........【阅读全文】

阅读(8833) | 评论(1) | 转发(4)

发布时间:2014-08-02 23:13:50

在前几篇中讨论过海量数据的并行加载,基本思路就是针对每一个物理表都会有一个对应的外部表,在做数据迁移的时候,如果表有上百G的时候,一个物理表对应一个外部表性能上会没有任何提升。如果需要做数据插入的时候,对undo是极大的挑战,从某种程度上而言,性能应该要比datapump要差。这个时候可以考虑一个物理表对应多个.........【阅读全文】

阅读(7565) | 评论(0) | 转发(3)
给主人留下些什么吧!~~

dsktt2016-12-30 10:56

lhrbest:建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

你们都是我佩服的!

回复  |  举报

lhrbest2016-07-09 23:31

建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

回复  |  举报

jeanron1002015-09-01 10:49

berlits:可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

你们确实太严格了,说明你的工作是高危,高机密的工作。

回复  |  举报

berlits2015-09-01 00:20

jeanron100:这个还是可以有的,整理个思路,回家发

可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

回复  |  举报

jeanron1002015-08-31 09:28

berlits:公司不让上网,想发都没条件。

这个还是可以有的,整理个思路,回家发

回复  |  举报
留言热议
请登录后留言。

登录 注册