發表文章

PostgreSQL的數值資料型態(Numeric Data Types)

圖片
PostgreSQL的數值資料型態(Numeric Data Types) 今天仔細看數值資料型態時,才仔細看到 postgresql 的數值型態其中一種為 numeric 的型態,中文翻譯為「任意精度數值」,一直間無法理解他的意思,後來才發現它可以讓用戶自行定義十進位的位數及小數點後面的位數。難怪科學運算都喜歡用 postgresql DB 來操作,一般生活中的應用實在太少運用到麼大的需求。 在最新的 9.5 版它的範圍描述是這樣寫的 up to 131072 digits before the decimal point; up to 16383 digits after the decimal point 如果我解讀沒錯的話,在小數點前可以 131072 位數,在小數點後為 16383 位數。大概以後只有十兆換一塊的通膨才有可能有機會用到了(誤)。 例如: 數字 23.5141 的 精度(precision)為 6 而比例(scale)為 4 宣告格式為: NUMERIC(precision, scale) NUMERIC(6, 4) 在 pgadmin 工具中的設定範例如下: 程式語言上運算的問題: 但其實宣告了這個欄位型態後,匯衍生出另一個問題。就是 DB 可以操作這個數字運算操作,但是程式語言有困難呀!!!找了一下,好像 PHP 的 BCMATH 好像可以解決任意精確度運算的這個問題,下次有遇到再來研究巴。 http://php.net/manual/zh/ref.bc.php # 9.5 版的 DATA TYPE 描述 https://www.postgresql.org/docs/9.5/static/datatype-numeric.html # 中文 8.0 版的 DATA TYPE http://twpug.net/docs/postgresql-doc-8.0-zh_TW/datatype.html#DATATYPE-NUMERIC-DECIMAL

Linux command 測試網路速度

Linux command 測試網路速度 原始碼 in https://github.com/sivel/speedtest-cli # 安裝及執行 wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py chmod +x speedtest-cli ./speedtest-cli # 執行範例 [root@dev dl]# ./speedtest-cli Retrieving speedtest.net configuration... Retrieving speedtest.net server list... Testing from TANet (111.111.11.111)... Selecting best server based on latency... Hosted by Chief Telecom (Changhua) [67.67 km]: 19.85 ms Testing download speed........................................ Download: 798.55 Mbit/s Testing upload speed.................................................. Upload: 185.07 Mbit/s

將 github 的 code 分享到 blog 使用

圖片
(1) 首先要有個 github 的帳號  (2) 登入 https://gist.github.com/  (3) 貼上程式碼, 選取左上角的 Embed code (4) 然後就長的像是下面一樣

Redis-Server with PHP 的使用 in CentOS7

圖片
Redis-Server with PHP 的使用 in CentOS7 * Redis DB server 的用途 Redis 是一個 key-value 架構的 database , 且因為它工作在記憶體上面,所以速度非常的快。 可以用來當 DB cache 加速的功能或是需要快速反應的 DB * CentOS 7 的 Redis-server 安裝方式 # yum install redis -y  * 安裝參考 http://sharadchhetri.com/2014/10/04/install-redis-server-centos-7-rhel-7/ * 通常會搭配 php 等 client 端工具一起安裝, 這裡我是以 php56w 的版本安裝, 因為有比較多 lib 支援 # yum install php56w-pecl-redis * php56w 可以參考 webtatic 釋出的 yum repo 安裝參考 https://webtatic.com/packages/php56/ RHEL7 OR EPEL7  官方網站跑的版本有點慢,可以先參考這個版本。 * 啟動 # systemctl start redis.service * 預設開機啟動 # systemctl enable redis.service * 看狀態 # systemctl status redis.service * 測試 , 剛裝好的 redis-server 是沒有密碼的, 且只能 127.0.0.1 執行。 可以用 redis-cli client 端工具測試 PONG 是正確的回應。 [root@c7 ~]# redis-cli ping PONG * 所以我都會設定個密碼, 並且把 bind 打開讓所有人都可以連上來。 * 請找到下面兩行, 修改為你要的密碼及主機 ip # vim /etc/redis.conf bind 111.111.22.22 requirepass 123456 * 重新啟動 # systemctl restart redis.service * 驗證看看 port , 應該是 6379 # netstat -antlp | grep ...

53 分鐘

今天看到一個數字, 53 分鐘. 就想到 Amazon Route 53 (http://aws.amazon.com/tw/route53/) 小小的算了一下 一年的時間 60*24*365.25=525,960 分鐘 可用性指標 = (1-故障時間/整年分鐘)*100% 99.99=(1- X/525960)*100% X = 53分鐘 所以  Route53 應該是Amazon很委婉的表達他是 99.99% 的網站可用性... 好巴,算你有囂張的本錢。

建立一個 postgresql 帳號 with MADLIB 的範例:

圖片
以 http://ooxx.db.com.tw/phpPgAdmin/  phpPgAdmin 當範例  建立一個 postgresql 帳號 with MADLIB 的範例 (1) 因為系統內已經有個 hadoop 帳號建立 MADLIB 的函數 以這個當範本就可以. 否則重新匯入需要 super user 帳號會很不方便。 如果需要重新建立,請參考   http://blog.jangmt.com/2016/04/madlib-postgresql-94-in-linux.html 文章設定。 (2) 建立的 SQL 範例 , 需要一行一行填入. 預設不允許多行一起進入 sql -- 建立使用者 CREATE USER 帳號 WITH PASSWORD '密碼'; -- 建立資料庫 CREATE DATABASE 帳號(同DB) WITH OWNER 帳號 ENCODING 'UTF8' TEMPLATE hadoop; -- 註解 DB , 方便找人 COMMENT ON DATABASE 帳號 IS '使用者資訊註解'; -- 授權 GRANT ALL PRIVILEGES ON DATABASE 帳號 to 帳號(同DB); (3) sql 範例如下: CREATE USER b004021234 WITH PASSWORD '1234atl1234'; CREATE DATABASE b004021234 WITH OWNER b004021234 ENCODING 'UTF8' TEMPLATE hadoop; COMMENT ON DATABASE b004021234 IS '蔡ooxx 0926123456'; GRANT ALL PRIVILEGES ON DATABASE b004021234 to b004021234; (4) 如果要一次建立很多人,那就以此範本寫成批次處理就可以。 REF: http://blog.jangmt.com/2016/04/madlib-postgresql-94-in-linux.html  http://madlib.incubator.ap...

更換家用抽水馬達紀錄

圖片
更換家用抽水馬達紀錄(以加壓馬達替代) ,身為一個專業的 IT 人員,更換一下設備也是很正常的。 昨晚 洗澡到一半,突然發現水量變小了 。感覺好像有點不妙,上樓檢查了一下。發現 三年前安裝的那台 AQ200 馬達 的電子LED沒有亮燈,但是電力 110V 有進入馬達。猜想說該不會電路板燒了巴!!!  因為水龍頭還有水只是水量沒有加壓,且已經很晚了就先這樣隔天早上在處理。 到了更晚的時候發現不是水量變小,是整個沒水了 。一時間無法找到原因,只能上網找找看答案。 根據官方網站的判斷,我先懷疑機器故障,隔天早上直接就去買台新的大井  HQ200  ($3000)1/4HP準備更換機器,但要換的時候才發現竟然是水塔沒水,檢查液位開關發現都沒有反應,手動開關還是無法出水。 開始懷疑是樓下抽水馬達的問題,馬上再去換了台 大井 HQ400 ($3500)1/2HP的機器。原本這台 木川KQ400 前幾天聽他的馬達生,就感覺怪怪的要轉不轉的。 抽水馬達 木川KQ400 ,左方開關為連接到水塔的液位開關。 先確認電力有進入,但馬達不能動作。google查了很多人的狀況,都說 可能是壓力感應開關有問題 ,所以我先依據網路上的教學, 拔除開關 Q 這條線,以一字起直接將兩個 pin 測試短路,但還是無法啟動 ,所以就懷疑應該是馬達真的掛了,用了快 10 年掛掉應該也合理啦。 測試是否為KQ400 的壓力感應開關故障 新品 大井 HQ400 很重要:更換前,請先把抽水馬達的電源開關,從開關箱處關閉。 直接拆掉舊有的 KQ400 ,管口、固定位位置幾乎都一樣。 現在的電壓選擇變得更方便了,直接一個開關就決定 110V or 220V 了。 再把110V電力接上去就可以,安裝前記得先打開自來水公司的來源水閘,上方水管是往水塔打水。左方開關是接到頂樓水塔的液位開關,頂樓液位開關滿水位關閉,馬達沒電也就不會啟動了。 注水塞 後記: 1. 下方水管閘閥為自來水公司的水,直接打開就有水了更換前記得要關閉。 2. 送電前先把機器上面的 注水塞打開,注滿水 。也可以打開下方水管閘閥注水,這樣比較快。 3. 送電後,試著旋開 1/4 注水塞,看有沒有水噴出來,有噴出來表示抽...