eygle.com   eygle.com
eygle.com  
 

« January 20, 2008 | Blog首页 | January 24, 2008 »



January 22, 2008

一个工作机会PDM/DBA/上海

作者:eygle

出处:http://blog.eygle.com

帮朋友发一个招聘需求。

 

概要:招聘需要一个PDM支持工程师,但是据说找懂PDM的太不容易,所以降低要求,找一个中级DBA类型的,再培训PDM相关技术,然后支持全球。

要求口语马马虎虎过得去,具体JD见以下列表:

 

Job description

Position  PDM Runtime Technical Support Engineer

Department    Technical Support

Location Shanghai, China

 

IT SOLUTION COMPANY Overview     IT SOLUTION COMPANY provides leading product lifecycle management (PLM), content management and dynamic publishing solutions to more than 40,000 companies worldwide. IT SOLUTION COMPANY customers include the world's most innovative companies in manufacturing, publishing, services, government and life sciences industries.

 

Generic Responsibilities

      Assist Field Staff and PDM administrators at customer sites with the installation, configuration, and tuning of PDM applications, which involves Oracle, Webservers, and Java both on UNIX and Windows platforms

     Troubleshoot technical problems, reproduce issues, develop workarounds and work directly with development on testing fixes

     Assist in the creation and implementation of technical training and documentation related to the above topics

     Collaborate with other offices worldwide to provide enterprise-level support for mission-critical systems

     Continuously develop technical skills in IT SOLUTION  COMPANY Products, Java, Oracle and other technologies involved in the PDM solutions

The ideal candidate is passionate about both web technologies and problem solving. Eager to learn, they are able to provide creative solutions to complex issues by leveraging their technical expertise given all the constraints dictated by the customer's environment (limited schedule, restricted access, etc.)

 

Required Knowledge, Skills & Abilities       Technical

     Minimum bachelor degree in Computer Science, or related field

     Familiar with Client/Server architecture and databases

     Object Orientated programming familiarity (Java a plus)

     Unix/Windows : User level with basic administration knowledge

     Oracle : Experience installing, creating and configuring Oracle databases or similar relational databases. (normalizing or tuning skills a plus)

     Development/troubleshooting of web-based application (Java, Applets, Servlets, JSP, XML, HTML, and Web servers/Servlet engines a plus)

     Networking: Basic administration knowledge

 

Soft skills

     Strong written and verbal communication skills

     Customer-focused

     Strong troubleshooting skills and ability to provide creative solutions

     Prioritization & self-motivated

     Ability to quickly master new products and technologies

 

Languages

     English (Business Level)

     Mandarin (Native Level)

 

有兴趣者请通过以下方式联系:

Mail:may@gnehr.com  MSN: meiqing-mq@hotmail.com

 

-The End-

 

Posted by eygle at 4:48 PM | Comments (2)


成功恢复案例:解决字典表误Truncate故障

作者:eygle

出处:http://blog.eygle.com

昨天,成功帮助客户恢复了一个故障数据库。

故障的原因是技术人员将数据库中的几个数据字典表Truncate掉,这直接导致了数据库不可用。
数据库环境为Oracle 9.2.0.7 RAC环境。由于数据库的事务量巨大,所以数据库没有备份。

现场检查确认,主要被截断的表有这样一些:
SQL> select object_name,object_type from dba_objects where object_name like 'IDL%';

OBJECT_NAME                    OBJECT_TYPE
------------------------------ ------------------
IDL_CHAR$                      TABLE
IDL_SB4$                      TABLE
IDL_UB1$                      TABLE
IDL_UB2$                      TABLE

关于IDL_UB1$表,我以前讨论过,这是非常重要的字典表,一旦出现故障,数据库会出现大量的ORA-00600错误,所有事务不能进行:
ORA-00600: internal error code, arguments: [17069], [0xC0000000DDDFA690], [], [], [], [], [], []

ORA-600 17069错误是最头疼的,客户当时数据库的一个跟踪日志已经暴涨到5G左右。

IDL系列字典表是记录数据库对象编译信息的,丢失了其中的数据,所有过程、Package等都将无法执行。
摘引一点关于这几个字典表作用的说明:
IDL_UB1$ is one of four tables that hold compiled PL/SQL code:

IDL_UB1$
IDL_CHAR$
IDL_UB2$
IDL_SB4$

"PL/SQL is based on the programming language Ada. As a result, PL/SQL uses a
variant of Descriptive Intermediate Attributed Notation for Ada (DIANA), which
is a tree-structured intermediate language. It is defined using a meta-notation
called Interface Definition Language (IDL). DIANA provides for communication
internal to compilers and other tools.

"At compile time, PL/SQL source code is translated into machine-readable
m-code.Both the DIANA and m-code for a procedure or package are stored in the
database.At run time, they are loaded into the shared (memory) pool. The DIANA is
used to compile dependent procedures; the m-code is simply executed."

These four tables hold the DIANA and the so-code m-code. I think "m-code" is
short for machine-dependent byte code but there is a sizable machine-indenpendent part as well. If you have a look at sql.bsq, you can see
that Oracle documents the "type" column of these tables as follows:

part number not null,
/* part: 0 = diana, 1 = portable pcode, 2 = machine-dependentpcode */

更严重的情况可能会导致大量系统DBMS包失效,其重新编译将更加复杂。

恢复进行了6个小时,成功帮助用户恢复了数据库,消除了所有ORA-600错误。
恢复最主要的是通过运行相关的脚本,重建和重新编译所有Procedure/Trigger/Package等对象,重新生成这些对象的DIANA和so-code m-code,这些主要的脚本包括catlog.sql,catproc.sql等。

当然最重要的是,一些ORA-00600错误需要解决,这可能会花费大量的时间。

这一案例的恢复过程并不重要,重要的是DBA应该学会永远不要让我们的数据库置于这样的危险境地。
DBA四大守则之一:备份重于一切

DBA的基本素质之一:严谨

-The End-

Posted by eygle at 9:59 AM | Comments (19)



CopyRight © 2004-2008 eygle.com, All rights reserved.