mSQL

mSQL(mini SQL)是一個單用戶資料庫管理系統,個人使用免費,商業使用收費。由於它的短小精悍,使其開發的套用系統特別受到網際網路用戶青睞。

基本介紹

  • 中文名:mSQL
  • 屬性:單用戶資料庫管理系統
  • 特點:個人使用免費,商業使用收費
  • 類型:軟體
簡介,技術特點,配置檔案,資料庫的使用,

簡介

mSQL(mini SQL)由於它的短小精悍,使其開發的套用系統特別受到網際網路用戶青睞。mSQL(mini SQL)是一種小型的關係資料庫,性能不是太好,對SQL語言的支持也不夠完全,但在一些網路資料庫套用中是足夠了。由於mSQL較簡單,在運行簡單的SQL語句時速度比MySQL略快,而MySQL在執行緒和索引上下了功夫,運行複雜的SQL語句時比mSQL,PostgreSQL等都要快一些。

技術特點

mSQL的技術特點:安全性方面,mSQL通過ACL檔案設定各主機上各用戶的訪問許可權,預設是 全部可讀/寫。mSQL缺乏 ANSI SQL 的大多數特徵,它僅僅實現了一個最最少的API,沒有事務和參考完整性。mSQL與Lite(一種類似C的腳本語言,與分發一起發行)緊密結合,可以得到一個稱為 W3-mSQL的一個網站集成包,它是JDBC、ODBC、Perl和PHP API. 目前,mSQL以兩種形式發布,一種是以RPM軟體包方式,另一種是用tar壓縮的原始碼方式。對於RPM軟體包方式的軟體包安裝很簡單,只用一條命令就可以完成:Rpm –ivh msql-3.7.rpm。
而對於以原始碼方式發布的mSQL安裝則要麻煩一些。首先用gunzip解壓軟體包“gunzip msql一3.7.tar.gz”;接著用。setup進行設定編譯選項;然後就可以開始編譯mSQL源程式“make all”l最後執行“make install” 即可完成安裝。
在實際套用中我們改動得最多的是mSQL—User 和Admin—User這兩個參數。mSQL—User指明運行mSQL資料庫服務程式的用戶,而Admin—User指明能對mSQL資料庫系統執行特權操作(如:關閉資料庫服務程式的運行,創建資料庫等操作)的用戶。因此,如果你希望mSQL服務程式以database這個用戶運行,指定admin這個用戶能執行資料庫操作,你要將mSQL—User和Admin—User所在的行分別改為:mSQL—User = database和Admin—User = admin.另外你還必須將Hughes目錄下的檔案和目錄的屬主改為database.在配置完成後,註銷當前用戶的身份,重新以msql.conf的參數 mSQL—User設定的用戶登錄到系統,進入/usr/local/Hughes/bin目錄鍵入如下的命令:。/msql3d &,這樣就啟動了mSQL資料庫系統

配置檔案

msql.conf典型配置檔案如下:
# msql.conf - Configuration file for Mini SQL Version 3
# This configuration sets all options to their default values.
# Note : %I is expanded to the value of the Inst_Dir element is included in a value.
[general]
Inst_Dir = /usr/local/msql3
mSQL_User = daemon
Admin_User = root
Pid_File = %I/msql3.pid
TCP_Port = 1114
UNIX_Port = %I/msql3.sock
[system]
Msynch_Timer = 30
Host_Lookup = True
Read_Only = False
Num_Children = 3
Table_Cache = 8
Sort_Max_Mem = 1000
Force_Munmap = False
Query_Log = False
Update_Log = False
Local_Access = True
Remote_Access = False

資料庫的使用

  1. 整型(xxxint)
MySQL數據類型含義
tinyint(m)
1個位元組表示(-128~127)
smallint(m)
2個位元組表示(-32768~32767) mediumint(m)
3個位元組表示(-8388608~8388607)
int(m)
4個位元組表示(-2147483648~2147483647) bigint(m) 8個位元組表示
(+-9.22*10的18次方) 2.浮點型
(float和double)
MySQL數據類型
含義
float(m,d) 單精度浮點型,8位精度(4位元組),m是十進制數字的總個數,
d是小數點後面的數字個數double(m,d) 雙精度浮點型,16位精度(8位元組)
參數m只影響顯示效果,不影響精度,d卻不同,會影響到精度。比如設一個欄位定義
3.定點數(decimal)
decimal(m,d) 定點類型浮點型在資料庫中存放的是近似值,而定點類型在資料庫中存放的是精確值。
參數
m是定點類型數字的最大個數(精度),範圍為0~65,d小數點右側數字的個數,範圍為0~30,但不得超過m。對定點數的計算能精確到65位數字。
4.字元串(char,varchar,xxxtext)
MySQL數據類型
含義
char(n) 固定長度的字元串,最多
255個字元varchar(n) 固定長度的字元串,最多
65535個字元tinytext 可變長度字元串,最多
255個字元text 可變長度字元串,最多
65535個字元mediumtext 可變長度字元串,最多
2的24次方-1個字元longtext 可變長度字元串,最多
2的32次方,-1個字元
5.二進制數據
(xxxBlob)
XXXBLOB
和xxxtext
是對應的,不過存儲方式不同,xxxTEXT是以文本方式存儲的,如果存儲英文的話區分大小寫,而xxxBlob 是以二進制方式存儲的,不區分大小寫。
xxxBlob
存儲的數據只能整體讀出。
xxxTEXT
可以指定字元集,
xxxblob
不用指定字元集。
6.日期時間類型 (date,time,datetime,timestamp)
MySQL
數據類型
含義
date
日期
'2008-12-2'
time
時間
'12:25:36'
datetime
日期時間
'2008-12-2 22:06:44'
timestamp 不固定
timestamp 比較特殊,如果定義一個欄位的類型為
timestamp,這個欄位的時間,會在其他欄位修改的時候自動刷新。所以這個數據類型的欄位可以存放這條記錄,最後被修改的時間,而不是真正來的存放時間。
7.數據類型的屬性
MySQL 關鍵字
含義
NULL 數據列可包含
NULL值
NOT NULL 數據列不允許包含
NULL 空值
DEFAULT xxx 默認值,如果插入記錄的時候沒有指定值,將取這個默認值
PRIMARY KEY 主鍵
AUTO_INCREMENT
遞增,如果插入記錄的時候沒有指定值,則在上一條記錄的值上加
1. 僅適用於整數類型
UNSIGNED 無符號
CHARACTER SET
name 指定一個字元集

相關詞條

熱門詞條

聯絡我們