Tag Archives: Oracle

Oracle Database XE 推出正式版

最近的 Oracle 产品消息:Oracle Database XE 推出正式版。正式版本在 32-bit 的 Linux 和 Windows 上可用.

  • Installs using native installers
  • English (single byte character set) and International (Unicode) versions available with support for 10 major languages
  • Supports up to 4GB of user data
  • May be installed on a multiple CPU server, but only executes on one processor in any server
  • May be installed on a server with any amount of memory, but will only use up to 1GB RAM of available memory
  • Fully upgradeable to other Oracle Database 10g editions
  • Oracle Text for efficient text-based searches

这个免费版本可以直接平滑升级到 Oracle 的其他版本,而且部署简单,能让开发人员迅速入手。不得不让人深深感到 Oracle 为了争夺客户煞费苦心.

继续阅读 →

没有了MySQL,能用Linux做的事情多着呢

最近 Oracle 频繁收购开源厂商, 也有消息说 Oracle 也曾经试图收购 MySQL 未果, 一连串的事情引起了开源界的恐慌,估计也让不少开源爱好者都很闹心,今天居然在 CSDN 头条上看到了没有了MySQL,我们使Linux还能干什么这样的观点:

我宁可看到微软收购 Redhat、Mandrake等,也不愿看到 MySQL 被收购,因为在这之后将可能是 PostgreSQL 的覆灭,到了那时,我们还有什么理由继续使用 Linux 呢?

没错,这居然是 CSDN 的头条新闻. 这不知道这位开源爱好者怎么会作出这个有些可笑的结论.有必要讨论一下了。
 
被收购并不意味着会修改软件许可证方式.假定现在 MySQL 现在已经被某个大厂收购, 那么并不意味着这家收购方会冒天下大不韪,收购方可能会继续采用当前的许可模式,这样对那些期待免费使用的最终用户来说没甚么影响; 开源运动的实际推动者还是那些千千万万的软件爱好者,这一点不是以某个公司的意志能转移的。
修改软件许可方式不一定不是免费的. 我不知道那些 MySQL 的爱好者与使用者是重点关心软件价格的免费还是代码的开放, 据我的观察, 国内的 MySQL 最终用户中,直接因为某项功能而 Hack MySQL 源代码的少之又少,更多的都是直接拿来应用. 如果我的这一判断出入不大,那么 MySQL 被收购后不再开源,用户未必就一下子跑光了。
MySQL 不是唯一的开源数据库. 放眼望去,PostgreSQL、Ingres、FireBird等等优秀的开源数据库产品还有很多; 除了流行程度, 软件功能和 MySQL 相差都不大; 即使收购方扼杀了 MySQL; 广大开源用户还是有的「吃」。
MySQL 本身的血统并不那么高贵. MySQL 本来就是由商业公司在背后运作, 甚至本身的技术也多少依赖于开源软件界。如果说他被更大的商业公司收购的话,只能说他的商业运作成功,修成正果而已。咱何必奢求?
更多厂商的推出免费数据库. Oracle 推出了免费的 Express Edition DB, IBM 紧跟对手推出免费的 DB2 Express-C, Sybase、EnterpriseDB 等厂商也都有免费或开源的 DB 产品推出, 即使没有了 MySQL,我们的选择只会更多. 「死了张屠户,也不用吃混毛猪」.
如果这些理由还没有解除你的顾虑, 现在我们看看数据库之外的东西。

继续阅读 →

如何比较两个 Schema 的异同

有的时候, DBA 需要迅速找出来同一个 Oracle 数据库上或者不同数据库的两个 Schema 的差异.这种情况应该比较常见,比如测试数据库发布到产品数据库的时候,需要 DBA 做频繁的检查。
应对的办法之一是通过 Toad 这样的 GUI 工具来查找.具体操作应该是很简单的。Oracle 自带的 OEM 工具也有这样的功能( Oracle 变化管理工具包,不过不是免费的)。对于不喜欢图形工具的 DBA 来说, 用手工的方式更容易接受一些。如果已经建立了 Database Link ,可以通过类似如下的 SQL 简单的发现一些差异:

select * from user_tables@a
minus
select * from user_tables@b;

可以考虑先从 用户的 objects 入手,然后表->字段->索引 等等.
在 AskTom 上有一个关于 Schema 比较的讨论,以及一些参予讨论的人提交的 SQL 脚本。
今天测试了一个 Perl 脚本 Schemadiff, 这个工具分两个部分组成,一个执行 Perl 脚本加上一个配置文件。配置文件比较简单。看看就可以清楚。比较结果能够输出为 ASCII 文本与 HTML 两种格式。文本的结果比较类似 Unix 命令 diff 的输出.相对来说,比较直观的了.需要说明的是,使用这个脚本需要安装 DDL::Oracle 包。间接拒绝了对 Perl 不熟悉的朋友.

继续阅读 →

图形工具是 DBA 的敌人?

最近 AnySQL 在 ITPub 上发了一个帖子: 多少DBA能离开OEM/TOAD/PLSQL Dev来工作? , 引来了很多人的讨论. 整理一下大家的观点,大致分为如下几类:

  • 工具能提高效率, 为啥不用?
  • 坚决不用;
  • 用不用都成; 解决问题就成;
  • 用来学习; 查看一些 SQL 很方便;

真是个仁者见仁,智者见智的问题. 图形化工具对于一个合格的 DBA 来说, 很多时候还是有缺点的,

一个图形化工具慢慢把 DBA 工作大众化了.这样作为一个DBA用图形化工具被人家看到了,显得不那么专业: 都是图形化的工具,普通开发人员随便点击几下子鼠标,不也成了 DBA 了? Oracle 10g 大大加强了 OEM 的功能, 很多人惊呼 Oracle 数据库管理员下岗的日子快到了. 在我看来,这恰恰是一个好消息。图形化工具上手容易,不可避免的很多人会浅尝辄止不去研究系统细节的问题,正是真正的 DBA 提高身价的好时候 :)

二是, 对图形化工具一旦产生依赖性, 应付突发事件的时候会有些局促感, 直观的东西隐藏了太多细节,而作为一个 DBA 更多的时候是要主动发现细节内容体现出来的问题; 这一点在讨论中很多人也提到了,一看没有安装 Toad ,就没法子上手了。

问题可能还有其他的,但是不是说 GUI 工具一无是处了,也不能说有这些问题就坚决不用 GUI 了。有的时候,开发人员依赖于 IDE 的, 就遇到的问题咨询 DBA ,不显得自己 IDE 用的很熟练的样子还真的说不过去; 再比如,抽取 DDL 语句这样的日常操作, GUI 工具的便利性还是有一些的。

还是针对图形化工具可能给我们带来的问题来说吧。「工具善其事,必先利其器」, 这个「器」可不是 GUI 工具哦. 建立一套针对自己的跨平台工具包是必须的,很多 DBA 都有一套适合自己的工具包. 当然,光有工具没有用,适当的提高一下记忆力也有必要,至少,再参加面试的时候可以唬主考官一下。

参见 AnySQL 的Blog上的PR

—
一句题外话:作为一个 DBA ,你是希望合格的 DBA 多一些还是少一些好呢?