查詢oracle 11g匯出檔案的字元編碼

最近遇到一個搞笑的烏龍, 公司匯出的oracle dmp檔案, 進行還原測試的時候, 無法匯入到測試區, 錯誤訊息為:

IMP-00037: Character set marker unknown

經過爬文,有可能是字元編碼不一致, 網路上提供的解方是:

 cat xxx.dmp |od -x|head -1|awk '{print $2 $3}'|cut -c 3-6

這樣可以查出oracle系統的字元編號, 再以字元編號查詢編碼名稱

SQL> select nls_charset_name(to_number('上個指令查出的字元編號','xxxx')) from dual;

這樣的指令應該是可以查出來, 若查不出來就可能是檔案損毀或是我這樣的烏龍,

我匯出備份的時候, 加上tar以及bz2壓縮

所以原檔案變成 xxx.dmp.bz2, 完全看不出來有tar , 因此解壓的時候我忘記了只有解bz2 , 解出來的xxx.dmp 其實不是原本的dmp檔案, 還需要解開tar這個動作, 哈哈

python 3 禪風

當我們執行以下指令

python -c "import this"

將會出現

其中這幾句話果然很對我的味

 Now is better than never.
 Although never is often better than *right* now.
 If the implementation is hard to explain, it's a bad idea.
 If the implementation is easy to explain, it may be a good idea.
 Namespaces are one honking great idea -- let's do more of those! 

mail出現好奇怪的log “…. rip=::1, lip=::1, secured, session” problem

有時候出現就一大堆, 最後出現too many open files , 有夠怪異, 只好讓限制 imap 與 pop3 只 listen 特定的 ip (ipv4) , 這樣就可以避掉疑似ipv6嘗試入侵的問題, 我自己是覺得可能是系統與dovecot之前某段出了狀況.
請修改 /etc/dovecot/conf.d/10-master.conf

service imap-login {
   inet_listener imap {
     address = x.x.x.x y.y.y.y
     #port = 143
   }
   inet_listener imaps {
     address = x.x.x.x y.y.y.y
     #port = 993
     #ssl = yes
   } 
}
service pop3-login {
   inet_listener pop3 {
     address = x.x.x.x y.y.y.y
     #port = 110
   }
   inet_listener pop3s {
     address = x.x.x.x y.y.y.y
     #port = 995
     #ssl = yes
   }
} 


docker container啟動管理supervisord設定心得

supervisord是常用的docker啟動管理程序, 通常我們都把一大堆服務寫進去supervisord.conf, 我最近弄的docker mail server (綁定AD) , 常常遇到container重啟時(docker restart) , supervisord裡面的service會出現already started字樣, 爬了文, 好像是這個參數搞的鬼, startsecs , 官網解釋如下

The total number of seconds which the program needs to stay running after a startup to consider the start successful (moving the process from the STARTING state to the RUNNING state)

也就是說這些service啟動成功後, supervisord預設會等個1秒才移除STARTING狀態, 但有可能造成service本身誤判, 誤以為已啟動,又再啟動一次, 所以service會重複跑個幾次 , 甚至有時候就再起不能了.

目前測試結果可以修改兩個參數, 一個是startsecs=0(立即更新成running狀態) , 另一個是startretries=0(重複啟動次數)
我是決定只改 startsecs=0 , 果然就沒出現already started字樣


ps. 這只是我個人測試自己docker mail server的心得, 沒有多次驗證

python初體驗hello world

不學python不行啊
曾有位高人說過:
python因為簡單,所以很難
想必python如同珍瓏棋局, 當世高人紛紛堪不破(aka: 學越多越難懂python),
只有心中毫無雜念之人(初心者)才能真正了解python啊

學了兩天, 終於搞定hello world

這是我搞定Hello World的心智圖筆記

最後發現python3 與 python2差異頗大, 借書只能借到舊版, 只好買了最新版碁峯 python 3.9 技術手冊

買筆電除了M$ OFFICE外的選擇”onlyoffice”

我們買windows筆電, 搭載的是試用版office 365, 若不想租用office 365, 可以移除後, 改用與M$相容性極高的onlyoffice.

onlyoffice 是免費軟體, 平台支援linux , windows, 與mac (包括mac m1) ç, 比之前open office , libre office 更貼近M$ office , 非常推薦使用., 千萬不要使用謎版的M$ office, 以免侵權.

PS. 可搭配免費可商用的字型 CNS11643全字庫 (全字庫首頁)

移除windows server上分享的印表機

通常把印表機刪除就好了, 但是有時候還真的不知道為何, 在使用者端還是會看到之前分享的印表機.
這時候只好到註冊表刪除看看了,

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion

若在註冊表看到不該出現的印表機設定, 就勇敢的刪除下去吧,
刪除完畢, server重開機, 再從使用者端看看幽靈印表機還有沒有出現.

誤刪docker 某個image, 重啟後, 相關連的container都無法使用了

真的手殘, 錯誤地停用某個 mariadb database 並且刪除了 image, 還好平常有記錄當時docker 執行的指令, 設定檔案也都在, 很快地就把該container 還原起來了.

但是參考到該container也跟著無法使用, 出現以下錯誤訊息:

 Cannot link to a non running container 

重開這些container, 也無法解決問題, 最後重新啟動 docker service ,才如願解決這個狀況.
我想應該是重啟docker時, 系統重新規劃這些container 內部ip, 就能順利參考到了.

1 ... 23 24 25 26 27 ... 58