DBA和开发同事的一些代沟(四)

DBA和开发都是两个可爱的团队,如果合作起来,那战斗力可是杠杠的。如果合作不愉快,那就是一件简单至极的事情都能扯皮几天几夜,而且还解决不了。
今天出公司的时候碰见一个开发同事,因为最近和开发同事打交道太多了,我都分不清到底他到底是哪个team的,然后就迷迷糊糊搭上了话,然后简单问了几句话,发现我潜意识里认错人了。不过最近碰到的有些开发同事都还比较配合。值得赞扬,但是还是有一些代沟的。
案例1:
偶尔会接到开发同事的紧急求助
开发同事 [10:46]:
建荣  10月20号xxxx给你下过工单开通数据库访问权限   但是今天我们测试还没有开通
开发同事 [10:51]:
通了  通了
杨建荣 [10:52]:
哈哈。好吧
这从10:46到10:51的时间里,我都在干嘛,都在查历史记录,首先得找到10月20号的工作记录来,等我找到,我发现已经处理了。然后接着就看到开发的同事说已经好了。在估计玩我呢。:)
案例2:
这个故事是我模拟出来的,但是确实碰到过这种类似的事情
开发同事:
帮我执行一个脚本吧,在10.100.10.20:1525 test库上
脚本是delete from xxxx where xxxx
杨建荣:
请下工单,然后我来操作。
开发同事:
好的。
杨建荣:
已执行。
开发同事:
在10.100.10.120:1525 test库上的脚本执行了吗?
杨建荣:
你不是说10.20吗,怎么又是10.120了?
开发同事:
不小心打错了。
杨建荣:
恩,我也没执行,没有工单,我不会先操作的。
所以我基本秉承的理念就是no 工单,no work.不是说开多少工单能给我发多少工资,是能够标注这一个变更,不是拍拍脑袋就完成的,有些关键操作还是要走审批流程的。

案例3:
在地铁上开发同事打电话给我,然后说有一个紧急问题需要修复一下。这种情况,我一般都会出手相救,但是忙完了之后发现问题也没那么紧急啊。因为我让他们发邮件给我,我在那等了一会了,邮件还没过来,最后总算解决了,也是皆大欢喜。
然后过了几天,我刚要带着疲惫的身子下班回家,开发的同事说,今天有一个业务要上线,需要我来配合。我就快要到发飙的临界点了,这种事情怎么不提前告诉我,其实提前告诉我,我也是一百个不愿意。然后开发同事一通解释,其实我也可以理解,大家都干活都不容易,这是有一种习惯不太好。就是等过了一个钟头,过了几个饭点了,还是没有发现任何问题,我说我先回家吧,如果有问题,我在路上再临时处理。但是他们似乎认为这个不太好,万一出现了问题处理不及时,恩,我又不会跑到天涯海角去。
要说问题紧急吧,以前碰到一个问题,开发风风火火打电话给我,就是我不处理他们什么都干不了的节奏。说有一个进程处理很慢,他们希望我帮忙kill掉这个进程。
然后当时我还在挤地铁的节奏中,中途下站连接热点,结果网速又不好,就硬是磨到了家里,一到家就打电话询问,结果他们说没有问题了,不需要kill session了。

案例4:
最近一个开发同事让我帮忙审核一个脚本。
语法类似 delete from test where rdate>date'2015-11-01';
这种用法其实还是蛮少的,自己之前还真没这么用过,所以猛一看就是语法错误,但是自己尝试了一下,果然可用。
SQL> create table test1 as select date'2015-11-01' rdate from dual;
Table created.
SQL> desc test1
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 RDATE                                              DATE
SQL> select * from test1;
RDATE
-------------------
2015-11-01 00:00:00
所以DBA也可以从开发同事那儿学到不少的新东西来,互相补充成长。

案例5:
作为DBA可能要面对开发的各种技术问题。有时候他们一个看似简单的问题,我们就需要严谨的验证一番。
hi
建荣 咨询个问题
oracle 导入ctl文件的时候 如果有一列出现了 双引号 怎么处理啊
开发同事 17:16
类似于这样子
"錵祭xxxx╯
这个前面有个双引号
杨建荣 17:20
目前是以逗号分隔的。
玩家名对我们是很大的挑战,又是日语,又是特殊字符的。:)
开发同事 17:22
恩恩 我刚才说的这个不是符号的问题 是我删错了一个关键字
其实这个时候才是完全考验我们脚本的全面性的时候了。可以简单做个测试,快速确认。
创建一个测试表,然后创建一个控制文件a.ctl来。
create table test(name1 varchar2(30),name2 varchar2(30));
控制文件a.ctl如下:
load data
infile *
append into table xxxx.test
fields terminated by ","
trailing nullcols
(name1,name2)
Begindata
"錵祭xxx╯,"錵祭xxx╯2
sqlldr xxxx/xxxx control=a.ctl
其实这个时候对于DBA来说也是一件好事,但是这个代沟问题就不是我们能够控制的了了,所以一起努力把这个问题解决了,大家好才是真的好。

时间: 2024-09-21 03:13:56

DBA和开发同事的一些代沟(四)的相关文章

DBA和开发同事的一些代沟(五)

陆陆续续写了四篇和开发同事的代沟,从最开始的吐槽到后面的例行总结,整个过程也是总结经验,看似很小的问题对于DBA来说就是莫大的改进,或者在开发严重越不过去的坎儿在DBA来看就是修改一个简单的配置就可以搞定,这个过程中都是互帮互助,大家互相体谅,才是共赢.   最近顺手帮开发同事解决了几个小问题,也可以暴露出来一些问题.简单总结一下.数据库连接的问题   首先是数据库连接的问题,这两天四个同事遇到了同样的问题,但是问题原因也是五花八门.   ORA-12514连接数据库的问题 12514, 000

DBA和开发同事的一些代沟(一)

DBA同学在工作中不可避免和开发同学打交道,和开发的同学在交流中还是有不少的小插曲,有些想想也蛮有意思,但是有些是痛点. 我举几个例子来说明,可能比较片面,但是只是为了说明问题,达到交流的目的即可.###oracle知识和sql水平不足    ddl中的commit 我相信很多DBA都会看到这样的sql脚本.     create table test(id number,name varchar2(30));     commit;     其实这个就是对于ddl的理解有偏差,ddl压根就不需

DBA和开发同事的代沟(二)

在上一篇中写到了 DBA和开发同事的一些代沟(一) 可以参考 http://blog.itpub.net/23718752/viewspace-1837743/ 有些朋友给我反馈了他们遇到的小故事,我后续再整理整理,看看有多少. 我还是继续来分享我这边碰到的一些小插曲,这些除非你确实碰到,想遍出来还着实需要想象力.##和开发的博弈 在Oracle中有资源管理的概念,其中一个功能就是设置每个用户可以使用的session数,即sessions_per_user,这个设置通过profile来完成. 一

安卓UI设计与开发教程 顶部标题栏(四)自定义ActionBar风格和样式

这篇文章将对ActionBar专题前面几篇学习过的内容做一个总结,顺便运用以前学过的知识实现一个自定义 样式的ActionBar标题栏效果.话不多说,进入今天的正题. 一.实现效果图 竖屏效果图:最 左边是Logo图标,右边是工具栏按钮,点击Menu键显示其余的按钮键,下方是Tab标签选项. 开发教程 顶部标题栏(四)自定义ActionBar风格和样式-actionbar隐藏标题栏">

安卓UI设计与开发教程 底部菜单栏(四)

Fragment+PopupWindow仿QQ空间最新版底部菜单栏 在今天的这篇文章当中,我依然会以实战加理论结合的方式教大家如何设计出自己觉得很炫的UI界面.好的,话不多说,进入正题.今天的这篇文章主要是以仿QQ空间的底部菜单栏效果为主,实现的效果有: <1>实现了点击按钮时的切换图片效果: <2>实现了点击按钮时的切换界面效果: <3>实现了点击中间圆形按钮时弹出菜单以及按钮图片切换效果: <4>实现了点击空白处和返回键按钮来关闭弹出菜单. 有个地方需要

Android UI设计与开发教程 引导界面(四)仿人人网V5.9.2最新版引导界面

这一篇我将会以人人网的引导界面为实例来展开详细的讲解,人人网的引导界面比较的新颖,不同于其他 应用程序千篇一律的靠滑动来引导用户,而是以一个一个比较生动形象的动画效果展示在用户们的面前,有一 种给人眼前一亮的感觉,话不多说,进入正题. 一.实现的效果图 欢迎界面: 开发教程 引导界面(四)仿人人网V5.9.2最新版引导界面-变色龙引导最新版"> 引 导界面1

软件开发外包管理的“一二四”

本文讲的是软件开发外包管理的"一二四",[IT168 资讯]在信息化整个生命周期中,企业都越来越依赖于外部供应商,从需求分析到系统选型,再到项目实施乃至最后的运行维护,IT供应商始终与企业如影随形.尤其在核心竞争力理论的指导下,"把包括IT在内的不能直接创造价值的部分外包出去"成为了很多企业的选择,外部供应商逐步成了企业IT管理的延续.但是,在企业获得便利的同时也不得不面对供应商选择.评估.管理带来的难题. 在众多的IT外包中,软件开发外包是企业信息化建设过程中接触

比较IOS开发中常用视图的四种切换方式_IOS

在iOS开发中,比较常用的切换视图的方式主要有以下几种: 1. push.pop 使用举例(ViewController假设为需要跳转的控制器): [self.navigationController pushViewController:ViewController animated:YES]; //入栈,跳转到指定控制器视图 [self.navigationController popViewControllerAnimated:YES]; //弹栈,返回到前一个视图 [self.navig

magento 开发 -- 深入理解Magento第四章 – 模型和ORM基础

第四章 – 模型和ORM基础 对于任何一个MVC架构,模型(Model)层的实现都是占据了很大一部分.对于Magento来说,模型占据了一个更加重要的位置,因为它常常包含了一部分商业逻辑代码(可以说它对,也可以说它错).这些代码在其他的MVC框架中往往出现在控制器或者帮助函数中. 传统的PHP MVC架构中的模型 本来MVC的定义就不是很清晰,不同的人有不同的看法,而对于模型的定义争议就更多了.在MVC模式被广泛采用之前,PHP程序员往往通过SQL语句直接操作数据库.也有些程序员通过一个SQL抽