中国雅虎这一招也挺绝的。后缀为 yahoo.cn 的邮箱提前对原后缀为 yahoo.com.cn 的 VIP 用户提前开放。网易原来急吼吼的喊着要赶在中国雅虎之前推出无限量邮箱的,看来是没机会了。你有张良计,我有上房梯。笑死。
现在注册要得到邀请信才可以,得不到邀请的可以不用着急,过不了几天就都开放了。
本来想用 “Fenng” 这个 ID 注册,可惜不允许,那就注册一个 “dbanotes” 。无限量容量,谁能用多少呢? 这下子大家心理上都满足了。
–EOF–
中国雅虎这一招也挺绝的。后缀为 yahoo.cn 的邮箱提前对原后缀为 yahoo.com.cn 的 VIP 用户提前开放。网易原来急吼吼的喊着要赶在中国雅虎之前推出无限量邮箱的,看来是没机会了。你有张良计,我有上房梯。笑死。
现在注册要得到邀请信才可以,得不到邀请的可以不用着急,过不了几天就都开放了。
本来想用 “Fenng” 这个 ID 注册,可惜不允许,那就注册一个 “dbanotes” 。无限量容量,谁能用多少呢? 这下子大家心理上都满足了。
–EOF–
在做维护的时候,经常要写一些脚本定期检查一些状态信息,而比较糟的时候可能该脚本在执行周期内没完成,接着第二个脚本又开始跑了。如何确保 Shell 脚本只有一个实例运行就成了一个比较有意思的话题。
必需要承认,要做到 100% 的完美可能需要长篇大论才可以做到。如果对于粒度要求不高,这里总结两个粗糙的方法。
一个是在脚本执行的时候判断某个文件的存在,如果不存在,则 touch 创建该文件(该文件看作一个”占座”文件),脚本执行完毕的时候删掉。第二个进程如果启动,判断有该文件存在,则退出或者是 sleep 几秒钟重新判断。这个方法的关键是在删掉”占座”文件的处理方式上。必需要考虑到程序异常、被 Kill 等多个情况。根据需要 trap 搞一下。
trap 和 kill 命令的 -l 参数能够列出你想要的内容
第二个方法是过滤脚本的名字(当然最好把脚本起个独特一点容易过滤的名字),计数,如果存在一个或者多个 instance , 则退出或者 sleep 等待。否则执行脚本。这个方法最简单,但是移植性似乎要差一点,需要考虑不同平台或 Shell 上的表现。
这两个方法都太粗糙了,经不起考究,但是对于 99% 的系统可能都足够用了。反过来说,如果一个系统对于脚本运行的粒度要求非常高,需要考虑到操作的原子性,那么 Shell 或许并不适合完成这个任务。
解决问题就好,过分炫技不可取。
–EOF–
突然发现我的 FeedBurner 地址 可以访问了,难道阻尼了这么几天就放出来了?
FeedSky 用起来也很好,我的 Feed 还上了 “精彩Feed” 推荐(单独推荐地址)。谢谢吕欣欣同学!
忙了一天,才空下来,刚才检查了一下Blog 访问 Log,发现以前 Dreamhost 漏洞的时候产生的垃圾文件没有删掉,晕死。我说从什么地方跑来的奇怪访问呢。
–EOF–
如果用关键字 “MySQL 迁移 Oracle” 在网上搜索,基本上得到的内容都是关于从 Oracle 如何迁移到 MySQL 的,而从 MySQL 迁移到 Oracle 的信息则少之又少。
抛开那些手工一点点做的方法不谈,网络上也可以找到一些第三方工具来做这个事情,免费的? 我只找到了一个,那就是 Oracle SQL Developer 了。如果采用比较傻瓜化的方法,不妨考虑这个工具。在这个工具之前,Oracle 提供了单独的 Migration Workbench 工具。在 SQL Developer 1.2 版中,Oracle 干脆把这个功能集成进来。
数据流示意图:
Source Database(MySQL/DB2 etc.) --->SQL Developer (ETL)-->Target Database (Oracle)
MySQL JDBC 下载地址:
http://dev.mysql.com/downloads/connector/j/5.0.html
配置 MySQL JDBC:
还需要注意一点就是需要调整一下迁移时候的参数:
剩下的事情就简单了,配置到不同数据库以及准备存放 Metadata 数据库的信息。然后就可以迁移了。不赘述。
这个方法只是够傻瓜化,由于运行机制的限制,速度不是非常好。对于迁移过程中产生的变化数据,也无能为力。
–EOF–