2014年3月20日 星期四

[紀錄]一些問題紀錄(會更新)

[紀錄]
1.如何去下SQL Index?
Ans:
http://jackyshih.pixnet.net/blog/post/5839238-sql-server-index%E6%9E%B6%E6%A7%8B%E8%AE%80%E5%BE%8C%E5%BF%83%E5%BE%97

註記:原先已經知道index 是用B-tree的資料結構去組成,但不是很清楚何時該給哪個欄位下index,只知道是常查詢的欄位或是唯一是別值。
上面有解答,在此節錄出來:
Clustered Index 設計守則

盡量排除:
1.更新頻率過高的欄位,因為clustered index 每次更新都會對實體資料進行sort,如果資料量大,sort time 會花不少時間處理,所以不建議。
2.獨特性過高的欄位:沒意義

建議列入設計考量:
以查詢考量分
1.連續性的範圍查詢結果:因為實體資料是按照鍵值依序地存入HD中,若依Between >= <= 等符號查詢時,當系統找到第一筆資料後,依序逐筆往下讀取,查詢的結果是連續性的範圍,則執行的速度也會提升。
2.會用於JOIN指令中的欄位建議加入,一般都是foreign key
3.會用於order by or group by 指令中,若索引見值常用於order by 與 group by 中時,因為實體資料已經排序好了,系統不在進行排序動作,所以會增加執行的速度。

以欄位考量
1.單一性(unique)或多個得特性欄位的組合
2.欄位具有順序性範圍的查詢:就是使用者常用between or >= , <= 來查詢的頻率很高的欄位
3.被定義成IDENTITY欄位
4.常常被用來order by or group by 的欄位,原因同上。

以上是Clustered Index 部分

2013年10月22日 星期二

[python][mysql]install mysqldb fail : EnvironmentError: mysql_config not found

OS X 安裝 MySQLdb for Python


解决mysql_config not found錯誤

剛剛要安裝MySQLdb for python on mac. 結果中途出現 [EnvironmentError: mysql_config not found]

似乎是找不到mysql_config位置找不到

收尋一下自己mac上mysql_config位置是在:/usr/local/mysql/bin/mysql_config

完整步驟如下:
1.   Download MySQLdb (MySQL-python-1.2.4b4.tar.gz)
2.   tar -zxvf MySQL-python-1.2.4b4.tar.gz
3.   cd MySQL-python-1.2.4b4
4.   python setup.py build ==> error
5.   vim site.cfg 找到 mysql_config = xxxxxx  (換成自己mysql_config位置)
6.   python setup.py build
7.   sudo python setup.py install

以上

解決Reason: image not found 錯誤

在終端機下
$ sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib $ sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql


再來就是測試一下python是否可以連mysql

mysql_test.py
----------------------------------------------------
# -*- coding: utf-8-*-
#!/usr/bin/python

#引入 mysql module
import MySQLdb

# connect to mysql
db = MySQLdb.connect(host="localhost", user="user", passwd="passwd", db="dbname")
cursor = db.cursor()

# exec sql
cursor.execute("select * from db_table_name")
result = cursor.fetchall()

# output
for record in result:
        print record[0]
        print record[1]

        print record[2]
----------------------------------------------------

my result :
-------------------------
1
The title
This is the post body.
2
A title once again
And the post body follows.
3
Title strikes back
This is really exciting! Not.
----------------------------

搞定

lichain . 2013/10/22

2012年9月28日 星期五

有感 - 不抱怨的世界

突然有所感悟

我一直在抱怨,抱怨人生,抱怨家裡經濟,抱怨懷才不遇,抱怨工作不好,抱怨台灣薪資水平,也一直在接受報怨,同事的抱怨,朋友的抱怨,很多,抱怨家裡,我努力去改變了嗎?

去吧!改變自己!你一定可以做到!

停止吧,我會努力去做!Stop complaint !

2012年7月18日 星期三

夜晚-慶幸我還幫的上忙(幫忙指路)


剛剛12點,在北車用弱弱的英文幫三個來自Korean的美麗空姐指路,她們不知道怎去旅館,後來溝通一下,也聯絡一下旅館那邊,確定好了送她們上計程車,應該是來這裡玩的吧!(我猜)

希望妳們有個美好了旅行(good luck for you , hope you have a wonderful trip.)

為什麼我知道她們是空姐(!?) 因為她要我把mail給她們,而她們也給我business card :P  哈哈

剛剛我好像腦袋當機一下,三個韓國女生,真的蠻cute的。

2012年7月7日 星期六

[vim] vimgrep 小記

plugin file here : http://www.vim.org/scripattenpts/script.php?script_id=311

take note:

1) vimgrep /匹配樣式/ **/*.py                     => 其中,**/代表當前目錄
2) copen(cope) 打開quick windows,可游標點過去編輯
3) ccl (cse) : close quick windows
4) cn : next result
5) cp : previous result

2012年7月6日 星期五

[ubuntu][wirelsee driver]MacPro

reference
http://pastebin.com/TyPB9sEh


file:
http://linuxwireless.org/download/compat-wireless-2.6/compat-wireless-2.6.tar.bz2

http://pkgs.fedoraproject.org/repo/pkgs/b43-fwcutter/b43-fwcutter-
015.tar.bz2/628e030565222a107bc40300313cbe76/b43-fwcutter-015.tar.bz2

http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2

2012年7月4日 星期三

[Android][筆記] Android Debug certificate expired

Build project error. Error log:

Debug certificate expired .

Solution:

砍掉 Debug 憑證讓 eclipse 自己再產生一份新的,重點是檔案路徑:
Windows 7: C:\Users\{username}\.android\debug.keystore
Mac OS and Unix家族: /home/{username}/.android/debug.keystore

2012年6月7日 星期四

[Linux program] 程序通訊

一般程序通訊有以下幾種:

1) 信號(Signal) : http://www.vr.ncue.edu.tw/esa/EmbeddedSystemProgramming2010/ch04.htm
2) Unix socket : http://www.vr.ncue.edu.tw/esa/EmbeddedSystemProgramming2010/ch07.htm
3) Socketpair
4) pipe : http://www.vr.ncue.edu.tw/esa/EmbeddedSystemProgramming2010/ch05.htm
5) 共享記憶體:
http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html
http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index2.html
6) 信號量(semaphore)
7) 訊息佇列


2012年6月5日 星期二

[Shell Script]shell script attack

#! /bin/bash

echo "產生 hello.c file..."
echo
cat <<'EOF' > hello.c
#include <stdio.h>

int main()
{
        printf("hello world!\n");
        return 0;
}
EOF

echo "編譯hello.c ..."
echo
# 編譯hello.c,產生執行檔。
gcc -o hello hello.c

#若編譯成功,就執行
if [ $? -eq 0 ]; then
        echo "exec hello ..."
        echo
        ./hello
else
        echo 'compile error:hello.c'
fi



==================

原理是利用Here Document ,這就是shell script 攜帶攻擊程式的概念模型。

做一些事吧

--無下文--

2012年5月8日 星期二