存档

文章标签 ‘DBA’,文章数:4

当您手边没有Sybase ASE服务器或者客户端环境时,当您想查看一些命令或参数而又不方便接触ASE服务器时,您可以考虑使用这台互联网上的ASE测试服务器。 本博客为Sybase初学者或者DBA完全免费提供此ASE15.0.3测试服务器。ASE所在的服务器为本博主自费购买的美国VPS虚拟机。 目前,ASE测试服务器仅支持php页面访问。使用ASE客户端直连服务器的方式后续可能会开通。 试用方法: 直接访问该页面: Sybase ASE v15.0.3测试服务器 Sybase ASE v15.7测试服务器 试用说明: 1.本测试服务器版本为:ASE 15.0.3 ESD#4.1 / ASE 15.7 SP101,部署在Centos 5.6 64bit上; 2.本测试服务器使用免费版本:Express Edition,最多支持1 CPU,2G 内存,5G 数据库空间; 3.使用登录tpchuser连接服务器,登录tpchuser为数据库megaphone的属主,登录tpchuser不拥有sa_role角色; 4.数据库megaphone中有几张表:service、month、residential_customer(10万行)、telco_facts(120万行); 5.SQL语句执行结果有两种显示方法:表格和文本形式,表格形式使用PHP的sybase_query等函数,文本形式使用isql调用SQL文件; 6.PHP中函数sybase_query只能返回一个结果集,对于返回多个结果集的存储过程或者SQL语句块 请使用文本形式查看执行结果; 7.对于不熟悉的命令,可以使用语法数据库sybsyntax,比如:sp_syntax 'update statistics'会显示更新统计信息的相关语法;  8.请不要执行具有破坏性的语句或命令,一些示例SQL语句请参考:queries.sql 9.有问题或者建议请发邮件:dbainfo(c)126.com 本博客提供免安装(绿色版)的ASE客户端工具Sybase Centralv4.3。

之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具,现在公布一下。

此工具支持ASA v5.0,v6.0,v7.0,v8.0,v9.0,v10.0,v11.0,v12.0等版本。恢复Sybase SQL Anywhere的工具在国内应该算首创。

本工具的应用场景:

1.因为物理磁盘故障、操作系统、系统软件方面或者掉电等等原因导致的Sybase SQL Anywhere数据库无法打开的情况;

2.误操作,包括truncate table,drop table,不正确的where条件导致的误删除等;

Sybase SQL Anywhere无法打开时,比较常见的错误是:Assertion failed。

如:

1、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Checkpoint log: invalid bitmap page -- transaction rolled back
2、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Page number on page does not match page requested -- transaction rolled back
3、Internal database error *** ERROR *** Assertion failed:200502 (9.0.2.2451) Checksum failure on page 23 -- transaction rolled back

4、File is shorter than expected

5、Internal database error *** ERROR *** Assertion failed: 201116 Invalid free list index page found while processing checkpoint log -- transaction rolled back

6、*** ERROR *** Assertion failed: 51901 Page for requested record not a table page or record not present on page

7、*** ERROR *** Assertion failed: 201417 (7.0.4.3541) Invalid count or free space offset detected on a table page

8、Internal database error *** ERROR *** Assertion failed: 201425 (8.0.3.5594) Invalid count or free space offset detected on a free list page -- transaction rolled back.

Checkpoint log: invalid bitmap page -- transaction rolled back
Internal database error *** ERROR *** Assertion failed: 201116 Invalid free list index page found while processing checkpoint log -- transaction rolled back

等等。报错的同时可能会在db文件相同目录下生成assert.dmp文件。

关于Assertion Failure,大家可以参考Sybase官方技术文章:I've got an assertion! What should I do?

本博中有两篇文章介绍Sybase SQL Anywhere数据库db文件的物理存储结构的分析过程,可以参考一下:

ASA数据库物理存储结构分析(1)

ASA数据库物理存储结构分析(2)

本人不提供此工具的下载。如想了解使用本工具恢复损坏db文件的过程,可以观看下面的视频:

【TechTarget中国原创】时隔两年,TechTarget数据库网站再次推出了数据库工程师薪酬调查活动,2009年的薪酬调查报告获得了广大网友的欢迎,因此在本次的调查中,更多的数据库从业人员参与了进来。共计517名网友参加了我们的调查,其中有388名网友完成了全部问题,在此感谢衷心感谢广大网友对TechTarget数据库网站的支持!

  本次的调查数据收集共为期一个月,由于数据量较大,因此TechTarget数据库网站编辑花了较长的时间对有效数据进行了整理与分析。在2月中旬,2011年数据库薪酬调查报告最终出炉,本次的调查报告不仅涵盖了数据库从业人员的薪酬待遇情况,还包括一些对数据库新技术发展的趋势,内容较2009年更为丰富。希望能够对DBA职业规划提供更好的参考。

【IT168 评论】最近一直在从事DBA的ETL工作,虽然时间不长但是还是有点心得愿意与大家分享。就我个人的观点来讲,DBA是一个非常辛苦的工作,是仅次于程序员的IT民工。甚至在有些方面比程序员还要辛苦,做程序写代码编程序还有个生命周期而DBA却不一样,很多时候都是客户提出需求马上数据就要提出来。压力是很大的,做dba一定要有过硬的心理素质,面对压力百折不挠!如果您还致力于此行业,那么看看我所认为一个优秀dba需要具备的素质吧:   1.DBA一定是要忠于自己的单位,永远不做破坏!不要让事情更糟!!!这是最为重要的!DBA一般是单位自己培养的,这样忠诚度非常高,忠心耿耿!也正是因为数据是一个单位的命脉所在,要做dba必须保证数据的安全,保证不扰乱数据的完整性!要忠于自己的单位首先要对自己忠诚,对自己忠诚才不会对别人背叛!要对自己百分之百的忠诚,才能对自己所负责的数据忠诚!!!保证数据的保密性,保证数据不泄漏、丢失、不遭到人为破坏!这是你作为dba最基本的职责!!也是这个岗位的职业道德!如果有一天对自己不够忠诚了,或者你的上司对你有怀疑了,那么趁早离开这个岗位!!!   2.为人低调。正是因为您做dba就已经掌握了一个公司的数据命脉,而且从事这个岗位的人必然痴迷于自己的技术而不善于人际交流。如果为人高调,事事爱出风头,难免树大招风,遭人忌恨!无心得罪了别人自己还不知道,这样即使自己的能力再高也很难在一个团队里生存!所以要想做一个优秀的dba一定要做人低调,耐得住寂寞,吃的了苦,肯下功夫不断的学习,提高自己的技术水平!!时刻保证自己的沉着冷静!与其搞那些人际关系不如潜心于提高自己的技术水平!   3.在不考虑时间的前提下,能不写存储过程就不写。能用t-sql写就不要想用存储过程来展示你的才华。实践证明同等情况下写t-sql的更能以最快的速度满足所有人提出的需求!   下面说说酸甜苦辣:   酸:很多时候dba是孤独的,需要能够享受孤独。在遇到困难的时候没有人能帮助你,也没有人愿意帮你!!!况且求人不如求己!只有自己依靠自己来解决问题。要对自己不断鼓励自己说:我一定能行!我一定能做的到!!!一定要在较长时间不断沉淀,学十分可能只用到一分,但是一定要相信艺多不压身!!!   甜:只为解决问题满足需求时那瞬间的成就感!!!愿意付出百倍的努力!!   苦:孤独、面对问题的无从下手、苦恼,在不能满足需求时需要面对的压力,在网上都找不到解决问题的办法。在这时候只能聊以自慰的对自己说:该休息的时候就休息,dba也是人不可能永远保持清醒的头脑,在实在或者现阶段自己的能力无法满足需求的时候果断的寻求帮助!!!   辣:无论哪个职位都需要在不断提高自己专业的情况下还需要和周围一切你喜欢与不喜欢的人打交道!这就是你必须遵守的规则!无奈也是你必须经历的过程!   这些都是我最近作dba的一些非常肤浅的体会!如果再有机会深入的做下去,我相信我的感受会更深,到时候再拿出来与大家分享吧!如果在看了上面的话,您仍然致力于做一个优秀的dba,那么选择权在您手中,我祝福您,天堂和地狱的大门同时像您敞开!!!!