近段時間在學數據庫,因為自身需求,所以注重研究了點嵌入式sqlite數據庫,SQLite,是一款輕型的數據庫,是遵守ACID的關聯式數據庫管理系統,它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的內存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程序語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數據庫管理系統來講,它的處理速度比他們都快。
自我感覺用起來很high的...
就不扯了,下面言歸正傳:
下面就將sqlite移植到ARM開發板上的具體步驟貼下來,在移植之前首先需要做的工作一是搭建PC端與ARM端數據共享機制,關於這個的方法很多,我在之前的文章中也就nfs共享的具體步驟做過詳細的說明,這裡就不在累贅了。二是搭建交叉編譯環境;檢測本機是否已經安裝交叉編譯環境可在終端中鍵入#arm-linux-gcc -v進行查看
獲取sqlite源碼包,源碼包可到www.sqlite.org官方網站下載,我在此使用的是sqlite-3.6.18.tar.gz
1.將sqlite-3.6.18.tar.gz解壓到/home目錄下,並在sqlite-3.6.18目錄下建立sqlite-arm-linux目錄
#cd /home/sqlite-3.6.18
#mkdir sqlite-arm-linux
2.首先備份configure文件
#cp configure configure.old
3.修改configure文件,
#./configure --host=arm-linux --disable-tcl --prefix=/home/sqlite-3.6.18/sqlite-arm-linux/
4.修改Makefile文件
BBC = gcc -g -O2
5.編譯並安裝
#make && make install
6.為了減小執行文件大小,可用strip處理,去掉其中的調試信息
#cd /home/sqlite-3.6.18/sqlite-arm-linux/bin
#arm-linux-strip sqlite3
7.而後進行移植
對庫的拷貝時要加上-arf選項,因為libsqlite3.so, libsqlite3.so.0是鏈接到libsqlite3.so.0.8.6的
#cd /home/sqlite-3.6.18/sqlite-arm-linux/lib
#cp -arf libsqlite3.so, libsqlite3.so.0, libsqlite3.so.0.8.6 /usr/yang(共享目錄)
#cd /home/sqlite-3.6.18/sqlite-arm-linux/bin
#cp sqlite3 /usr/yang(共享目錄)
8.在開發板終端中將三個庫文件拷貝到其庫中,而後即可使用sqlite了。
但要提醒一點的就是,sqlite跟MySQL....有點不一樣喲..
我剛開始玩的時候首先就輸入了show databases;結果讓我很揪心,所以在大家用sqlite之前還是建議先學好用法.
我相信你會在嵌入式數據庫中玩的很high的....