2016/07/23

在某些情況下table內只能有一筆唯一的資料存在
而此時在insert時一般會先select看看存不存在
mysql提供了一個方便的語法

mysql INSERT ... ON DUPLICATE KEY UPDATE (新增或是更新一行完成)

必要條件:
  1. 資料表中必須有 PRIMARY或UNIQUE的索引。
  2. INSERT時須帶入1. 欄位的資料

SQL語法範例
INSERT INTO `gamePlayer` (`pNode`, `gsn`,`out`, `monster`, `club3`, `changecolor`) VALUES ('K',4, 100, -1, 0, 1) ON DUPLICATE KEY UPDATE `out`=100, `monster`=-1, `club3`=0, `changecolor`=1


http://note.tc.edu.tw/765.html

2016/07/18

proxmox 升到4.2後又有新的狀況

設定完自動備份後
一直發生備份到一半
guest就不明原因的不正常關机
導致備分不成功
甚至有nas因此而當机
找了半天 看了原廠的forum也沒看到什縻解决方法
但在3.x版共沒有這個問題
原本以為只有自動排程會有問題
測了一下連手動也一樣
原本預設的備份會使用lzo壓縮備份檔
比對了一下3.x版的備份
發現預設並沒有使用lzo
所以用手動方式不壓縮先備份一次
正常沒問題
所以把自動排程的備份全部改成不壓縮
再觀察看看

2016/07/14

今天重新安裝proxmox 4.2版
可是裝完後發現之前版本會有的

/dev/mapper/pve-data   3856   808  3046 8% /var/lib/vz

不見了
到forum上去找 才發現 4.2的架構已經不同了
變成直接使用LVM來放image及ct
而不再把該lvm mkfs後再mout來用
因此必須手動把這個storage加上去

步驟
Datacenter -> Storage -> Add -> LVM-Thin

所以不建議用原机升級的方式來升到4.2
reinstall是比較好的方法

https://forum.proxmox.com/threads/dev-pve-data-not-mounted-after-fresh-4-2-install.27220/

用了LVM-Thin後有几個情況
雖然LXC可以在不用停机的情況下使用LVM的snapshot功能備份
但在不同node要migrate時 proxmox是使用dd來操作
導致效能非常的差 而且沒有百分比的顯示
評估過後
因為目前不使用LXC而且以後使用的机率也不大
所以再改回來使用目錄
步驟如下

lvremove /dev/pve/data

lvcreate -L 4M -n data pve

lvcreate -l 100%FREE -n datastore pve

mkfs.xfs /dev/pve/datastore

And mount it on your /etc/fstab

/dev/pve/datastore /mnt/datastore xfs defaults 0 0


2016/07/06

nfdump 有提供 nfexpire來維護資料檔

使用方式做一下記錄

1. nfexpire -e /flowdata -s 100M 會在/flowdata產生一個.nfstat 記錄相關參數

2. nfcapd -4 -t 600 -z -w -D -p 9995 -l /flowdata -S 0 -e
    開始收取封包並依 第1點定義的參數進行維護

http://blog.csdn.net/omg2012/article/details/6742783

2016/07/05

原本一直以來都是使用flow-tools來收netflow的資料

http://freecode.com/projects/flow-tools
flow-capture

但最近的工作需要收集從fortiget傳來的netflow的資料
一開始也是使用flow-capture
但一直沒有資料
用tcpdump去看
是有資料進來的
但查了一些文件才知道fortiget送過來的是netflow v9
flow-capture不支援
於是改用nfdump 支援 v5 v7 v9
資料就正常收取了
http://nfdump.sourceforge.net/
nfcapd