2014年4月22日 星期二

ora-03114與CDC(Change Data Capture)衝突

之前有客戶反映常出現ora-03114 Not Connected to Oracle的錯誤
通常都是網路的問題,如果是DB的問題的話通常很慘
不可能沒做什麼動作就會好

可能的原因
1.Webserver or listener process is not running
2.Missing entry to the tnsnames.ora
3.Network issues
4.Problems with connection pooling (shared servers, MTS)

不過客戶的DBA表示可能是CDC的衝突
通常CDC是在Data Warehouse才有機會用掉,平時是可以關掉的
關掉的語法如下
call sys.dbms_java.dropjava('-s rdbms/jlib/CDC.jar');

2014年4月15日 星期二

[Oracle]Rownum搭配Order by的使用

之前公司的前輩寫了一段這樣的語法
想要先依p.bnd_ctrl排序(先Y再N)
然後抓第一筆的資料 結果卻不如所料

SELECT rownum,a.Prt_No, a.b_Beg_Qty, a.b_Ttl_In,p.bnd_ctrl
FROM Bnd_Phy_Analysis a, bnd_prtmst p
WHERE a.prt_no = p.prt_no
              and a.Bg_Group_Prt = 'C2PAM HEDCB-05'
              and a.Phy_No = '10303'
              and Rownum = 1
ORDER BY p.bnd_ctrl desc, (a.b_Beg_Qty + a.b_Ttl_In) desc;

Oracle 的 rownum 是一個 pseudocolumn,意思是不存在的 column,是經由計算得來的
RowNum 是先經過編號後,才再 order by name 的
如果要先 order by name 才編號,就必須下這樣的sql script

SELECT t.* FROM (
SELECT rownum,a.Prt_No, a.b_Beg_Qty, a.b_Ttl_In,p.bnd_ctrl
FROM Bnd_Phy_Analysis a, bnd_prtmst p
WHERE a.prt_no = p.prt_no
              and a.Bg_Group_Prt = 'C2PAM HEDCB-05'
              and a.Phy_No = '10303'
ORDER BY p.bnd_ctrl desc, (a.b_Beg_Qty + a.b_Ttl_In) desc) t
WHERE  Rownum = 1

Oracle官網的解說 http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html

2014年4月14日 星期一

Oracle 11g R2 那 exp imp 陷阱問題(Oracle 11g export using EXP utility missing some tables)

新的工作有機會接觸資料庫的建置,最常用的動作之一就是將標準版的資料庫(Oracle 9i),
Import到新導入的公司去(DB版本不一).
使用的方法是將我們標準版的資料庫Export出來成DMP檔
先Create User後
imp sys/password@instance fromuser=from_schema touser=to_schema file=XX.DMP

但是我第一個接觸的客戶就發生缺一大堆Table(自然物件也會Compile失敗)的問題,本來想說可能是我們標準版的DB問題,後來發現也不見得如此,經查是空的table導不出來,原因是因為空的table沒有分配到segment

Oracle 11g有一個新的機制是為了節省空間的運用,Export時不會Export沒有分配到segment的Table
用以下語法可以調整此設定,不過要在Create Instance之後就下指令解決,不然後面Create的Table都必須透過搬移Table Space才可以解決
SQL> alter system set deferred_segment_creation=false scope=both;
不過最好的方法還是改掉舊方法
使用11g提供的新Export Import工具
Use the new Oracle Data Pump utilities for the export and import:
    expdp user/pass@sid DUMPFILE=test.dmp SCHEMAS=TEST
    impdp user/pass@sid DUMPFILE=test.dmp

原文處理方法如下,很詳細

Oracle 11g export using EXP utility missing some tables

I am much surprised that Oracle mandated their new features hidden without notification to legacy users. One such example would be the new Deferred Segment Creation feature and Oracle Data Pump (EXPDP/IMPDP) utilities of Oracle 11g.The original EXP/IMP utilities are deprecated and no longer supported in 11g, but its still been shipped with 11g for backward compatibility.Happy news is that the EXPDP is twice faster as compared to EXP, and IMPDP is relatively 15 to 45 times faster as compared to IMP.

Problem:
I have recently exported a 11g schema using 11g EXP utility and tried to import into another 11g Instance using 11g IMP utility. But to my surprise, not all the tables got transferred to the destination instance. Upon troubleshooting the export log, found out that only empty tables i.e. tables with NO ROWS (0 rows) did not exported at all. I concluded this to be a bug at first, but later found out to be a side-effect of a new 'Deferred Segment Creation' feature and not a bug.

Cause:
Deferred Segment Creation - 11g New Feature:
Oracle 11g introduced the new default feature "Deferred Segment Creation". In a nutshell, when you create a new table - no segment is created, no initial extent is allocated, no storage is reserved. And this made the export (EXP) in Oracle 11gR2 to skip the empty tables (with no rows).

Solution:
Easier Way:
Use the new Oracle Data Pump utilities for the export and import:
    expdp user/pass@sid DUMPFILE=test.dmp SCHEMAS=TEST
    impdp user/pass@sid DUMPFILE=test.dmp

Harder Way:
Alternatively, you can force the allocation of extents on each empty table using the following command in the Source database to export and re-run the export EXP command, which would export the empty tables as well.

ALTER TABLE <table_name> ALLOCATE EXTENT;

NOTE: For New Objects yet to create, We turn off the functionality before creating any objects using the following command.
ALTER SYSTEM SET DEFERRED_SEGMENT_CREATION=FALSE;

2014年4月13日 星期日

[住宿體驗]屏東萬金天主堂

屏東萬金天主堂
屏東縣萬巒鄉萬金村萬興路24號
訂房專線:(08)7830955  聖堂電話:(08)7832005 潘世華先生
網址:http://www.catholic.org.tw/bankin/bankim/center.htm
            http://www.catholic.org.tw/bankin/
※住宿服務※
類別容納
人數
間數費用容納
人數
間數費用
團体
套房
14人1間 上下舖6人1間(通舖)
  8人1間 (通舖)3人1間三單床
   7人 2間 (通舖) 2人7間 

屏東的背包旅館住宿資訊不太好找,最多的地方是在墾丁,其餘地方可能屏東市有,不過資訊也不好找,當天白天是要去霧台參加南島族群婚禮的活動,當然住宿在霧台也是一個選項,不過想說活動當天可能訂房人數較多,且交通實在不方便.
當天有一位順道載我一程的大哥就住在霧台的民宿,他說價格非常的便宜,也只要300,不過我沒問清楚民宿的名稱
後來就查到萬金天主堂可以住宿,且價格也不貴,又剛好是一個我一直很想去的地方,就決定住那邊了,打電話後一開始是神父接的,表明要住宿後幫我轉接到祕書潘先生,雖然我是一個人,還是幫我安排了一間雙人房,房價也只要500元,問他最晚的抵達時間,他表示晚上9點前抵達即可

那天我是從內埔過去,可抵達萬金天主堂的公車有(屏東客運網址 http://www.ptbus.com.tw/)
8212屏東潮州武潭線 
  屏東→公館→廣安→萬丹→大湖仔→溝仔墘→五魁寮→潮州→頭溝水→萬巒→四溝水→           五溝水→赤山→萬金→泰武→武潭
8235屏東西勢佳佐線
  屏東→下屏東→麟趾→田心→西勢→老北勢→內埔→興南→成德→萬金→赤山→佳佐
我坐的車是西勢佳佐線,比較要注意的是有幾班車回程時是從古樓發而非佳佐發,所以車程時間有點難估,我離開當天是坐早上最早的那一班離開,差點顧著拍照沒趕上車

看到這個門口真的很感動捏
完全感受到聖靈的氛圍
天主堂的右邊是神父的靜修之處
天主堂的左邊一樓有販售商品,其餘地方是小朋友念書的地方,我的住宿底地點在二樓
認真念書的小朋友
七點約一刻到了天主堂,先往左邊燈火通明的建築物走,不過沒有看到服務的人,問一下在那邊自習的小朋友,表示可以去天主堂右手邊的建築問去問問神父(其實我剛到的時候有看到神父從那邊走出來,不好意思打擾,現在覺得好後悔呀~),敲門敲了半天,又不敢敲得太大力,更不敢走進去,後來鼓起勇氣走到了二樓喊神父,神父終於出現,但很明顯的不想幫我服務(哈),表示潘秘書過八點會過來,請我在那邊稍候
於是吃起我的章魚燒跟擔仔麵,看看裡面的紀念品及書籍,透過窗戶看到秘書室桌上有一把鑰匙上面貼著我的名字卻拿不到,看到有張名片寫著潘秘書的手機不過也打不通,Finally潘祕書來了,他表示他已經下班了,只是晚上教會裡面還有聚會,所以晚上才會過來~
愛寄明信片的我這次旅程中沒買到明信片,剛剛商品處也沒看到,潘秘書表示他們這邊沒賣明信片,不過他願意送我一套,非常感謝

看的到嗎?鴿子裡面有一個碑文寫著"奉旨"

非常著名的聖母像,每年12月左右的聖母遊行,會有教徒扛著聖母像巡迴萬金地區
天主堂內景



在等待的時間,也拍了一下天主堂的各個角度及聖母像,好險有拍,晚一點天主堂就有靈修活動禁止外人入內,順道一提,我並非教友,且無任何宗教信仰,所以我沒辦法說我感受到天主或是聖母之類的,我只能說我能感受到這裡滿滿的聖靈(Holly Spirit)氛圍





房間內部擺設簡樸,浴室也是,不過對我來說當然是足夠的,床有點硬倒是真的,被子也很薄(屏東耶..OK的啦),也有冷氣及盥洗用具,不過最棒的地方還是從走廊上就可以看到天主堂,無論或日或夜能夠從另外一個角度看到天主堂就是一種幸福..


順道一提,這裡的7-11也很有特色唷,本來以為會跟教堂有點關係,不過細看卻感覺到南洋華人的風格,不知道是不是我的錯覺就是了



[住宿體驗]救國團宜蘭學苑

旅舍詳細資料:

    「救國團宜蘭學苑」青年旅舍座落在宜蘭市區。僅約12分鐘的步行,就可從宜蘭火車站或主要的客運轉運站抵達本青年旅舍。
       本旅舍提供舒適的8人上下鋪,依男女性別分房。住宿費用包含乾淨清潔的床單、枕頭(套)和棉被。每天皆有專人清掃的公共淋浴間和廁所都設置在客房外,有脫水機和投幣式洗衣機可供使用。
       本旅舍沒有年齡限制,歡迎任何年齡的旅客前來造訪,宜蘭「救國團宜蘭學苑」青年旅舍是一個小巧溫暖的複合式空間,宜蘭市民及學生經常在此參加各類課程或活動,我們樂意為遠道而來的國際旅客題供住宿服務,歡迎您下榻於此,不僅賓至如歸,也能結識新朋友、認識不同的文化。

*持YH卡可享優惠

■ 上下鋪-8人房: 360 元/床(平日); 390 元/床(假日)
   (含床單被套/小盥洗包,不含早餐)

*8人包房同住,另有超值優惠,可致電宜蘭學苑YH洽詢!

*只收現金,暫無刷卡服務!

網址:http://www.yh.org.tw/hostel_info_in.asp?ID=130
        https://www.hihostels.com/hostels/092285
        http://www.easytravel.com.tw/ehotel/default.aspx?n=7662
地址:宜蘭縣宜蘭市中山路二段462號
電話:+886-3-935-3411#25
E-mail:yyh@cyc.tw
       



先提醒一下,宜蘭學院規定在晚上九點前要Check In,有門禁最晚11點前要回來,不附早餐,有附盥洗用具,費用的話可能憑YH卡有優惠,不過我沒有,所以房價是一晚400元,and沒有電梯.

地點就在宜蘭市政府旁邊,離Shopping Mall 蘭月新城也相當的近,離火車站是要走一小段沒錯,不過地理位置說起來相當的優異.
由於我是晚上抵達,還有下點雨(當天沒帶雨傘,硬是死撐到旅館),視線不佳的結果,過門不入了好幾次,尤其宜蘭學苑是跟救國團終身學習中心共用同一棟建築,所以並沒有明顯的標示(一般的民宿在一定距離前就會有指標),就只能靠地址來判斷了~




工作人員對我還不錯,沒有讓我跟別人擠在一間,獨自一間包房感覺當然很棒,如果是三五好友一同出遊的話,住在這裡的感覺也很好,重點是,好有宿舍的感覺唷~~
令我懷念起大學住宿舍的時光,還有書桌耶~~

二三樓教室的走廊
由上俯瞰大廳
真的有人在裡面上課唷,似乎是舞蹈相關課程
不過晚上去外面逛逛回來之後,人就開始多了起來,女生也不少,我的房間在四樓,男廁及淋浴間在五樓,女生的在四樓,不知道為何要這樣安排,上上下下挺麻煩的,還要擔心別被女生誤會

熱水器是24小時的可以放心,還有投幣式洗衣機可供使用

總結:400元可以住到這樣的地方,沒什麼好挑剔的,空間也比一般宿舍式的背包客棧寬敞太多了,唯一可能有問題的地方是如果學生太多可能會很吵,不過我上次沒有這狀況就是了












[日劇]命運之人(原著:山崎豐子)

為了紀念去年過世的日本傳奇社會派女作家山崎豐子(作品白色巨塔,華麗一族,女系家族)
緯來日本台播放同名日劇"命運之人",由影帝本木雅弘,松隆子,真木陽子主演

小說是以「西山事件」為藍本。講述每朝新聞社的政治部記者弓成亮太,在採訪日美就沖繩返還問題而舉行的談判時,懷疑日本政府就美軍基地撤走後的土地復原費用問題給美國墊付了大量金錢。一心想有所作為名的弓成為此通過與外務省的女事務官三木昭子關係而獲得機密的情報,公諸於世,引起牽然大波。弓成演變為日本首位國家機密的洩露者,他的人生和命運就此發生重大的改變。


第一話到到第三話敘述著弓成亮太在記者工作的卓越表現,日本當時正在與美國討論沖繩回歸的議題,亮太常到外務省找同為北九州出生的安西審議官,而安西審議官的事務官三木昭子處於不幸福的婚姻狀態,偶然的機會下單獨與弓成用餐,對弓成的改變未來的自信與勇氣一見傾心,發生了性關係,之後多次提供機密文件給弓成,本來沖繩基地補償費由日本代美國支出之密函是個大獨家,弓成為了保護資料來源不肯在報紙上公開,但弓成為了協助佐橋首相同黨敵對派系取得下屆首相之職,把機密公文的影本提供給反對黨的議員,議員沒有遵守承諾守密反而在國會上公布此密文,造成後續的風暴..

以劇作的角度而言,前三集的表現相當精采,劇情引人入勝,演員的表現亦佳,我一直相信人生沒有絕對的黑與白,弓成記者雖然在記者的表現上非常傑出,但是經常忽略家人,雖然美其名要挖掘政府的秘辛,人民有知的權利,但是陷入了政黨派系之間的角力,也有點立場不中立,沒有保護好資料來源造成三木小姐後續痛苦的人生自然是責無旁貸.
以政府的角度來看,沖繩回歸是首要任務,400多萬美金的基地補償費用以外交的立場來看根本不算什麼(國家的面子上又是一回事),這樣的手法當然無可厚非,追究洩密來源也是應該要做的事,針對弓成採取法律行動自然為了殺雞儆猴,不過警方約談就算了,鬧上法院死纏爛打,甚至為了順利入罪不惜扭曲事實,就不可以接受了~

第四話到第九話就像走不盡的迴圈,看得有點難耐
本來是兩情相悅,在檢方的教唆及律師的策略下,變成弓成脅迫三木發生性關係,並以脅迫的方式取得機密文件,這樣的醜聞對弓成的家庭造成了莫大的傷害,所以男方說要離婚不要拖累女方,女方考慮很久還是要一起奮鬥;小孩子在學校因為父親的事被同學欺負;弓成因為官司的壓力離家出走回老家.
而三木由愛生恨,且為了減輕刑期,扭曲了事實,女權團體當作目標大作文章,小報周刊不停的想要挖掘內幕消息,三木的先生也為了復仇不遺餘力.
最後,後來三木被判有期徒刑半年,緩刑一年;弓成一審被判無罪,二審改判有罪,三審維持原判定讞.

最後失魂落魄的弓成來到了沖繩,落海時被謝花路小姐所救,過了五年不接觸新聞的鄉間生活,因為被沖繩當地的報社記者認出,終於在謝花路面前揭露出她的真實身分,花路的叔叔渡久,帶弓成去一個二戰時期的洞窟