mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 02:30:06 +01:00
Updated PeterG's internals documentation per comments from
Monty; clarified differences between the MySQL library directories.
This commit is contained in:
parent
1604f14e34
commit
349029c1e9
1 changed files with 28 additions and 26 deletions
|
@ -3715,25 +3715,33 @@ sending messages, the client part merely calls the server part.
|
||||||
|
|
||||||
The libmysql files are split into three directories: libmysql (this
|
The libmysql files are split into three directories: libmysql (this
|
||||||
one), libmysql_r (the next one), and libmysqld (the next one after
|
one), libmysql_r (the next one), and libmysqld (the next one after
|
||||||
that). It may be that the original intention was that the libmysql
|
that).
|
||||||
directory would hold the "client part" files, and the libmysqld
|
@*@*
|
||||||
directory would hold the "server part" files.
|
|
||||||
|
The "library of mysql" has some client-connection
|
||||||
|
modules. For example, as described in an earlier
|
||||||
|
section of this manual, there is a discussion of
|
||||||
|
libmysql/libmysql.c which sends packets from the
|
||||||
|
client to the server. Many of the entries in the
|
||||||
|
libmysql directory (and in the following libmysqld
|
||||||
|
directory) are 'symlinks' on Linux, that is, they
|
||||||
|
are in fact pointers to files in other directories.
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
The program files on this directory are:
|
The program files on this directory are:
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
conf_to_src.c -- has to do with charsets
|
conf_to_src.c -- has to do with charsets
|
||||||
@item
|
@item
|
||||||
dll.c -- initialization of the dll library
|
dll.c -- initialization of the dll library
|
||||||
@item
|
@item
|
||||||
errmsg.c -- English error messages, compare \mysys\errors.c
|
errmsg.c -- English error messages, compare \mysys\errors.c
|
||||||
@item
|
@item
|
||||||
get_password.c -- get password
|
get_password.c -- get password
|
||||||
@item
|
@item
|
||||||
libmysql.c -- the code that implements the MySQL API, i.e. the functions a client that wants to connect to MySQL will call
|
libmysql.c -- the code that implements the MySQL API, i.e. the functions a client that wants to connect to MySQL will call
|
||||||
@item
|
@item
|
||||||
manager.c -- initialize/connect/fetch with MySQL manager
|
manager.c -- initialize/connect/fetch with MySQL manager
|
||||||
@end itemize
|
@end itemize
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
|
@ -3742,8 +3750,7 @@ manager.c -- initialize/connect/fetch with MySQL manager
|
||||||
The MySQL Library, Part 2.
|
The MySQL Library, Part 2.
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
This is a continuation of the libmysql directory. There is only one
|
There is only one file here, used to build a thread-safe libmysql library:
|
||||||
file here, used to build a thread-safe libmysql library:
|
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
makefile.am
|
makefile.am
|
||||||
|
@ -3755,8 +3762,9 @@ makefile.am
|
||||||
The MySQL library, Part 3.
|
The MySQL library, Part 3.
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
This is a continuation of the libmysql directory and contains the MySQL
|
The Embedded MySQL Server Library. The product of libmysqld
|
||||||
Server as an embeddable library. The program files on this directory
|
is not a client/server affair, but a library. There is a wrapper
|
||||||
|
to emulate the client calls. The program files on this directory
|
||||||
are:
|
are:
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
|
@ -3771,9 +3779,9 @@ lib_vio.c -- Emulate the vio directory's communication buffer
|
||||||
Some user-contributed manual pages
|
Some user-contributed manual pages
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
These are user-contributed "man" (manual) pages in a special markup
|
These are user-contributed "man" (manual) pages in a special markup
|
||||||
format. The format is described in a document with a heading like
|
format. The format is described in a document with a heading like
|
||||||
"man page for man" or "macros to format man pages" which you can find
|
"man page for man" or "macros to format man pages" which you can find
|
||||||
in a Linux directory or on the Internet.
|
in a Linux directory or on the Internet.
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
|
@ -3785,23 +3793,17 @@ The MyISAM table handler.
|
||||||
The C files in this subdirectory come in six main groups:
|
The C files in this subdirectory come in six main groups:
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
ft*.c files -- ft stands for "Full Text", code contributed by Sergei
|
ft*.c files -- ft stands for "Full Text", code contributed by Sergei Golubchik
|
||||||
Golubchik
|
|
||||||
@item
|
@item
|
||||||
mi*.c files -- mi stands for "My Isam", these are the main programs
|
mi*.c files -- mi stands for "My Isam", these are the main programs for Myisam
|
||||||
for Myisam
|
|
||||||
@item
|
@item
|
||||||
myisam*.c files -- for example, "myisamchk" utility routine
|
myisam*.c files -- for example, "myisamchk" utility routine functions source
|
||||||
functions source
|
|
||||||
@item
|
@item
|
||||||
rt*.c files -- rt stands for "rtree", some code was written by
|
rt*.c files -- rt stands for "rtree", some code was written by Alexander Barkov
|
||||||
Alexander Barkov
|
|
||||||
@item
|
@item
|
||||||
sp*.c files -- sp stands for "spatial", some code was written by
|
sp*.c files -- sp stands for "spatial", some code was written by Ramil Kalimullin
|
||||||
Ramil Kalimullin
|
|
||||||
@item
|
@item
|
||||||
sort.c -- this is a single file that sorts keys for index-create
|
sort.c -- this is a single file that sorts keys for index-create purposes
|
||||||
purposes
|
|
||||||
@end itemize
|
@end itemize
|
||||||
@*@*
|
@*@*
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue