程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql源碼學習——源碼目錄結構

Mysql源碼學習——源碼目錄結構

編輯:MySQL綜合教程

 

Mysql源碼結構

 

目錄清單

 

目錄名 注釋

 

Bdb 伯克利DB表引擎

 

BUILD 構建工程的腳本

 

Client 客戶端

 

Cmd-line-utils 命令行工具

 

Config 構建工程所需的一些文件

 

Dbug Fred Fish的調試庫

 

Docs 文檔文件夾

 

Extra 一些相對獨立的次要的工具

 

Heap HEAP表引擎

 

Include 頭文件

 

Innobase INNODB表引擎

 

Libmysql 動態庫

 

Libmysql_r 為了構建線程安全的libmysql庫

 

Libmysqld 服務器作為一個嵌入式的庫

 

Man 用戶手冊

 

Myisam MyISAM表引擎

 

Myisammrg MyISAM Merge表引擎

 

Mysql-test mysqld的測試單元

 

Mysys MySQL的系統庫

 

Ndb Mysql集群

 

Netware Mysql網絡版本相關文件

 

NEW-RPM 部署時存放RPM

 

Os2 針對OS/2操作系統的底層函數

 

Pstack 進行堆棧

 

Regex 正則表達式庫(包括擴展的正則表達式函數)

 

SCCS 源碼控制系統(不是源碼的一部分)

 

Scripts 批量SQL腳本,如初始化庫腳本

 

Server-tools 管理工具

 

Sql 處理SQL命令;Mysql的核心

 

Sql-bench Mysql的標准檢查程序

 

Sql-common 一些sql文件夾相關的C文件

 

SSL 安全套接字層

 

Strings 字符串函數庫

 

Support-files 用於在不同系統上構建Mysql的文件

 

Tests 包含Perl和C的測試

 

Tools

 

Vio 虛擬I/O庫

 

Zlib 數據壓縮庫,用於WINDOWS

 

下面給出幾個比較重要的目錄清單:

 

文件清單

 

目錄名 文件名 注釋

 

Client

 

get_password.c 命令行輸入密碼

 

Mysql.cc MySQL命令行工具

 

Mysqladmin.cc 數據庫weihu

 

Mysqldump.c 將表的內容以SQL語句輸出,即邏輯備份

 

Mysqlimport.c 文本文件數據導入表中

 

Mysqlmanager-pwgen.c 密碼生成

 

Mysqlshow.c 顯示數據庫,表和列

 

Mysqltest.c 被mysql測試單元使用的測試程序

 

----------------------------------------------------------------------------------------------------------------

 

MYSYS

 

Array.c 動態數組

 

Charset.c 動態字符集,默認字符集

 

Charset-def.c 包含客戶端使用的字符集

 

Checksum.c 為內存塊計算校驗和,用於pack_isam

 

Default.c 從*.cnf和*.ini文件中查找默認配置項

 

Default_modify.c 編輯可選項

 

Errors.c 英文錯誤文本

 

Hash.c hash查找、比較、釋放函數

 

List.c 雙向鏈表

 

Make-conf.c 創建*.conf文件

 

Md5.c MD5算法

 

Mf_brkhant.c

 

Mf_cache.c 打開臨時文件,並使用io_cache進行緩存

 

Mf_driname.c 解析,轉換路徑名

 

Mf_fn_ext.c 獲取文件名的後綴

 

Mf_format.c 格式化文件名

 

Mf_getdate 獲取日期:

 

yyyy-mm-dd hh:mm:ss format

 

mf_iocache.c 緩存I/O

 

mf_iocaches.c 多鍵值緩存

 

mf_loadpath.c 獲取全路徑名

 

mf_pack.c 創建需要的壓縮/非壓縮文件名

 

mf_path.c 決定是否程序可以找到文件

 

mf_qsort.c 快速排序

 

mf_qsort2.c 快速排序2

 

mf_radix.c 基數排序

 

mf_soundex.c 探測算法(EDN NOV 14, 1985)

 

mf_strip.c 去字符串結尾空格

 

mf_tempdir.c 臨時文件夾的創建、查找、刪除

 

mf_tempfile.c 臨時文件的創建

 

mf_unixpath.c 轉化文件名為UNIX風格

 

mf_util.c 常用函數

 

mf_wcomp.c 使用通配符比較

 

mf_wfile.c 通配符查找文件

 

mulalloc.c 同時分配多個指針

 

my_access.c 檢查文件或路徑是否合法

 

my_aes.c AES加密算法

 

my_alarm.c 警報相關

 

my_alloc.c 同時分配臨時結果集緩存

 

my_append.c 一個文件到另一個

 

my_bit.c 除法使用,位運算

 

my_bitmap.c 位圖

 

my_chsize.c 填充或截斷一個文件

 

my_clock.c 時鐘函數

 

my_compress.c 壓縮

 

my_copy.c 拷貝文件

 

my_crc32.c

 

my_create.c 創建文件

 

my_delete.c 刪除文件

 

my_div.c 獲取文件名

 

my_dup.c 打開復制文件

 

my_error.c 錯誤碼

 

my_file.c

 

my_fopen.c 打開文件

 

my_fstream.c 文件流讀/寫

 

my_gethostbyname.c 獲取主機名

 

my_gethwaddr.c 獲取硬件地址

 

my_getopt.c 查找生效的選項

 

my_getsystime.c time of day

 

my_getwd.c 獲取工作目錄

 

my_handler.c

 

my_init.c 初始化變量和函數

 

my_largepage.c 獲取OS的分頁大小

 

my_lib.c 比較/轉化目錄名和文件名

 

my_lock.c 鎖住文件

 

my_lockmem.c 分配一塊被鎖住的內存

 

my_lread.c 讀取文件到內存

 

my_lwrite.c 內存寫入文件

 

my_malloc.c 分配內存

 

my_messnc.c 標准輸出上輸出消息

 

my_mkdir.c 創建目錄

 

my_mmap.c 內存映射

 

my_net.c net函數

 

my_netware.c Mysql網絡版

my_once.c 一次分配,永不free

 

my_open.c 打開一個文件

 

my_os2cond.c 操作系統cond的簡單實現

 

my_os2dirsrch.c 模擬Win32目錄查詢

 

my_os2dlfcn.c 模擬UNIX動態裝載

 

my_os2file64.c 文件64位設置

 

my_os2mutex.c 互斥量

 

my_os2thread.c 線程

 

my_os2tls.c 線程本地存儲

 

my_port.c

 

my_pthread.c 線程的封裝

 

my_quick.c 讀/寫

 

my_read.c 從文件讀bytes

 

my_realloc.c 重新分配內存

 

my_redel.c 重命名和刪除文件

 

my_seek.c 查找

 

my_semaphore.c 信號量

 

my_sleep.c 睡眠等待

 

my_static.c 靜態變量

 

my_symlink.c 讀取符號鏈接

 

my_symlink2.c 2

 

my_sync.c 同步內存和文件

 

my_thr_init.c 初始化/分配線程變量

 

my_wincond.c

 

my_windac.c WINDOWS NT/2000自主訪問控制

 

my_winsem.c 模擬線程

 

my_winthread.c 模擬線程

 

my_write.c 寫文件

 

ptr_cmp.c 字節流比較函數

 

queue,c 優先級隊列

 

raid2.c 支持RAID

 

rijndael.c AES加密算法

 

safemalloc.c 安全的malloc

 

sha1.c sha1哈希加密算法

 

string.c 字符串函數

 

testhash.c 測試哈希函數(獨立程序)

 

test_charset 測試字符集(獨立)

 

thr_lock.c 讀寫鎖

 

thr_mutex.c 互斥量

 

thr_rwlock.c 同步讀寫鎖

 

tree.c 二叉樹

 

typelib.c 字符串中匹配字串

 

SQL

derror.cc 讀取獨立於語言的信息文件

 

Des_key_file.cc 加載DES密鑰

 

Discover.cc frm文件的查找

 

Field.cc 存儲列信息

 

Filed_conv.cc 拷貝字段信息

 

Filesort.cc 結果集排序(內存或臨時文件)

 

Frm_crypt.cc get_crypt_from_frm

 

Gen_lex_hash.cc 查找、排列SQL關鍵字

 

Gstream.c GIS

 

Handler.cc 函數句柄

 

Hash_filo.cc 靜態大小HASH表,

 

以FIFO方式存儲主機名、IP表

 

Ha_berkeley.cc BDB的句柄

 

Ha_innodb.cc INNODB句柄

 

Hostname.cc 根據IP獲取hostname

 

Init.cc 初始化和unireg相關的函數

 

item.cc  item函數

 

item_buff.cc item的保存和比較的緩存

 

item_cmpfunc.cc 比較函數的定義

 

item_create.cc 創建一個item

 

item_func.cc 數字函數

 

item_geofunc.cc 集合函數

 

item_row.cc 記錄項比較

 

item_strfunc.cc 字符串函數

 

item_subselect.cc 子查詢

 

item_sum.cc 集函數(SUM,AVG...)

 

item_timefunc.cc 時間日期函數

 

item_uniq.cc  空文件

 

Key.cc 創建KEY以及比較

 

Lock.cc 鎖

 

Log.cc 日志

 

log_event.cc 日志事件

 

Matherr.c 處理溢出

 

mf_iocache.cc 順序讀寫的緩存

 

Mysqld.cc main,處理信號和連接

 

mf_decimal.cc decimal類型

 

my_lock.c

 

net_serv.cc socket數據包的解析

 

nt_servc.cc NT服務

 

opt_range.cc KEY排序

 

opt_sum.cc 集函數優化

 

parse_file.cc frm解析

 

Password.c 密碼檢查

 

Procedure.cc

 

Protocol.cc 數據包打包發送給客戶端

 

protocol_cursor.cc 存儲返送數據

 

Records.cc 讀取記錄集

 

repl_failsafe.cc

 

set_var.cc 設置、讀取用戶變量

 

Slave.cc slave節點

 

Sp.cc 存儲過程和存儲函數

 

sp_cache.cc

 

sp_head.cc

 

sp_pcontext.cc

 

sp_rcontext.cc

 

Spatial.cc 集合函數,點線面

 

Sql_acl.cc ACL

 

sql_analyse.cc

 

sql_base.cc 基礎函數

 

sql_cache.cc 查詢緩存

 

sql_client.cc

 

sql_crypt.cc 加解密

 

sql_db.cc 創建、刪除DB

 

sql_delete.cc DELETE語句

 

sql_derived.cc 派生表

 

sql_do.cc DO

 

sql_error.cc  錯誤和警告

 

sql_handler.cc

 

sql_help.cc HELP

 

sql_insert.cc INSERT

 

sql_lex.cc 詞法分析

 

sql_list.cc

 

sql_load.cc LOAD DATA 語句

 

sql_manager.cc 維護工作

 

sql_map.cc  內存映射

 

sql_olap.cc

 

sql_parse.cc 解析語句

 

sql_prepare.cc

 

sql_rename.cc 重命名table名

 

sql_repl.cc 復制

 

sql_select.cc SELECT和JOIN優化

 

sql_show.cc SHOW

 

sql_state.c 錯誤號和狀態的映射

 

sql_string.cc

 

sql_table.cc DROP TABLE、ALTER TABLE

 

sql_trigger.cc 觸發器

 

sql_udf.cc 用戶自定義函數

 

sql_union.cc UNION操作符

 

sql_update.cc UPDATE

 

sql_view.cc 視圖

 

Stacktrace.c 顯示堆棧(LINUX/INTEL ONLY)

 

Strfunc.cc

 

Table.cc 表元數據獲取(FRM)

 

thr_malloc.cc

 

Time.cc

 

Uniques.cc 副本的快速刪除

 

Unireg.cc 創建一個FRM www.2cto.com

 

更多內容請參考:

 

http://forge.mysql.com/wiki/MySQL_Internals_Files_In_MySQL_Sources#The_sql_Directory

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved