線上的服務有世界各地的人來使用(若是有提供英文語系的話), 就有可能遇到需要幫世界各地的時區算時間.
要做個時區分佈設定(ex: 台灣是 +8), 想要選取後, 自動秀出他的時間, 照理說就是現在時間 -8hr 即可(設定於台灣機器而言), 但是又想到機器可能會換, 程式還是該寫好點才行, 於是花了點時間做研究.
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
線上的服務有世界各地的人來使用(若是有提供英文語系的話), 就有可能遇到需要幫世界各地的時區算時間.
要做個時區分佈設定(ex: 台灣是 +8), 想要選取後, 自動秀出他的時間, 照理說就是現在時間 -8hr 即可(設定於台灣機器而言), 但是又想到機器可能會換, 程式還是該寫好點才行, 於是花了點時間做研究.
要解開 deb 檔, 原本想說是用 dpkg --unpack package-name.deb
, 發現會變成安裝套件.
快速製作 Debian Package, 單純 Hello world 版, 若要詳細版本可見:
快速製作 FreeBSD Package, 單純 Hello world 版, 若要詳細版本可見:
那此快速製作的簡易版, 主要是包自己的 Package 用, 只寫基本 build package 需要的檔案.
程式設到 crontab 去執行是很常做的事情, 通常也會避免同時執行過多的 Script, 不過, 通常最怕的是程式要執行很久, 結果遇到程式還沒執行結束, 同樣的程式又被執行了一隻的狀況.
通常有幾種做法:
註: 關於 lockf 安裝可見 - 於 Debian Linux 安裝 lockf 或 參考 flock 用法
以前都不知道有 lockf (execute a command while holding a file lock) 這麼方便的程式, 直到 Leeym 長輩 提醒才知道~
不過這個只有 FreeBSD 有, 在 Debian Linux 裡面翻不到, 最後打算找 Source code 來試著改寫看看, 就找到有人改寫好的程式囉~ 😀
發現 Blog 的速度越來越慢, 主要原因應該是資料越來越多, Database 也開太多(資料蒐集 等等), 於是想說要來為所有 DB 做 Optimize 和 Repair 的動作.
詳可見:
MySQL 使用量越來越大時, 就會遇到不少莫名奇妙的事, 不管是 Replication 還是 Data Import 等等.
最常見的就是這個: MySQL Replication 出現 Duplicate Key
註: 此狀況只會發生在 MySQL Replication 的 Slave, 所以下述程式也是給 Slave 用, Master 不需要.
想知道 MySQL 每個 Table 到底使用多少空間, 如果是用 MyISAM 格式, 直接 ls -lh 去看即可. (下述路徑是 Debian Linux 預設 MySQL DB 存放路徑)
不過若使用 InnoDB, 因為檔案只有一個, 就沒辦法使用此方法來查.
#!/usr/bin/perl
# apt-get install libjson-perl
# http://search.cpan.org/dist/JSON/# use JSON qw/to_json from_json/;
use JSON;
use Data::Dumper;$json_text = '{"a":1}';
print Dumper from_json($json_text);
# $hash = from_json($json_text);
# print $hash->{'a'} . "\n";