���ߣ����� ([email protected]�� ��ҳ��http://aosp.me
��һ��, ǰһ��, ��һ��, ���һ����Ŀ¼.
�Ż���һ��ӵ�������Ϊ��������Ҫ������ϵͳ�����⡣�������ϵͳ/Ӧ�õ�С֪ʶ��һЩ�ֲ��Ż��ǿ��ܵ�ʱ����Խ�������ϵͳ���Ż��������֪����ҲԽ�ࡣ
��ˣ����½���ͼ���Ͳ������Ż�MySQL�IJ�ͬ������һЩ���ӡ����Ǽ�ס������ijЩ(����)��ϵͳ����ķ�������ȥ����
Ϊ��ʹһ��ϵͳ���������Ҫ���ֵ�Ȼ�ǻ�����ơ���Ҳ��Ҫ֪�����ϵͳ�������������飬�Ǿ������ƿ����
�����ƿ���ǣ�
������ϵͳ���Ķ�����ʼ����Ϊ��Щ���ߵ�ijһЩ����������ˡ�����������£���������ⲿ�ֿ��ܾ��ˣ���Ϊ���Դ��ջ���Ҫ��������һ�����������������ջ��ж��ĸо����Ǻõġ�
ʹ�õ�ȱʡOSȷʵ��Ҫ��Ϊ�����̶ȵ�ʹ�ö�CPU��Ӧ��ʹ��Solaris(��Ϊ�̹߳�����ȷʵ����)��Linux(��Ϊ2.2���ĺ�����ȷʵ������SMP֧��)��������32λ�Ļ����ϣ�Linuxȱʡ��2G���ļ���С���ơ����µ��ļ�ϵͳ���ͳ�ʱ( XFS )��ϣ���ⲻ�ñ�������
��Ϊ����û�ںܶ�ƽ̨����������MySQL�������Ҹ����ڿ���ѡ����ǰ��������������е�ƽ̨��
�������飺
--skip-locking
��MySQLѡ������ⲿ������ע���⽫��Ӱ��MySQL���ܣ�ֻҪ����������һ���������ϡ�ֻҪ��������myisamchk
��ǰ���ǵ�Ҫͣ��������(��������ز���)����һЩϵͳ�����������ǿ�Ƶģ���Ϊ�ⲿ�����������κ�����¶�����������MIT-pthreads����ʱ��--skip-locking
ѡ��ȱʡΪ��(on)����Ϊflock()
û�����е�ƽ̨�ϱ�MIT-pthreads���֧�֡�Ψһ�������������ͬһ��������MySQL������(���ǿͻ�)���㲻��ʹ��--skip-locking
֮ʱ�������û�������(flushing)��������mysqld
�������ı�������myisamchk
������Ȼ��ʹ��LOCK
TABLES
/ UNLOCK TABLES
����ʹ������ʹ��--skip-locking
��
��������в�����Linux�ϲ���MySQL�����еģ���������Ӧ�ö���������ϵͳ�������ظ���һЩָʾ��
������-static
����ʱ����õ����Ŀ�ִ���ļ���ʹ��Unix���ֶ���TCP/IP����һ�����ݿ�Ҳ�ɸ�����һЩ�����ܡ�
��Linux�ϣ�����pgcc
��-O6
����ʱ���㽫�õ����Ĵ��롣Ϊ������Щѡ�������sql_yacc.cc��������Ҫ��Լ200M�ڴ棬��Ϊgcc/pgcc
��Ҫ�ܶ��ڴ�ʹ���к���Ƕ�루inline����������MySQLʱ����ҲӦ���趨CXX=gcc
�Ա������libstdc++
��(������Ҫ)��
ֻͨ��ʹ��һ���Ϻõı�������Ϻõı�����ѡ���Ӧ�������ܵõ�һ��10-30%�ļ��١�������Լ�����SQL�����������ر���Ҫ��
��Intel�ϣ���Ӧ������ʹ��pgcc��Cygnus CodeFusion�������õ�����ٶȡ������Ѿ��������µ� Fujitsu���������������ǻ�û�㹻���������Ż�����MySQL��
����������������һЩ��������
-O6
ʹ��pgcc
���ұ����κζ�����mysqld
�������DZ���gcc
��11%�����ַ���99�İ汾)��
-static
)���������13%��ע��������ʹ��һ����̬���ӵ�MySQL�⡣ֻ�з������������ǹؼ��ġ�
gcc
2.7.3�DZ�Sun Pro C++ 4.2��13%�� ��TcX�ṩ��MySQL-Linux�ķַ���pgcc
���벢��̬���ӡ�
����Դ����ݿ�Ŀ¼�ƶ��������ݿ�����������ӵ��µص�ķ��Ŵ������ǡ��������Ҫ�����������磬ת��һ�����ݿ�и�����пռ��һ���ļ�ϵͳ��
���MySQLע�һ������һ���������ӣ����������������Ӳ���ʹ����ʵ��ָ��ı������ɹ�����֧��realpath()
���õ�����ϵͳ��(����Linux��Solaris֧��realpath()
)���ڲ�֧��realpath()
��ϵͳ�ϣ���Ӧ�ò�ͬʱͨ����ʵ·���ͷ������ӷ��ʱ���������������������κθ��º�һ�¡�
MySQLȱʡ��֧�����ݿ����ӡ�ֻҪ�㲻�����ݿ�֮����һ���������ӣ�һ�н������������ٶ�����MySQL����Ŀ¼����һ�����ݿ�db1
����������һ����������db2
ָ��db1
��
shell> cd /path/to/datadir shell> ln -s db1 db2
���ڣ�����db1
�е���һ��tbl_a
����db2
��Ҳ������һ����tbl_a
�����һ���̸߳���db1.tbl_a
������һ���̸߳���db2.tbl_a
���������⡣
�����ȷʵ��Ҫ�����������ı���������mysys/mf_format.c���еĴ��룺
if (!lstat(to,&stat_buff)) /* Check if it's a symbolic link */ if (S_ISLNK(stat_buff.st_mode) && realpath(to,buff))
�Ѵ���ı�Ϊ������
if (realpath(to,buff))
�������������õ�mysqld
������ȱʡ��������С��
shell> mysqld --help
�����������һ������mysqld
ѡ��Ϳ����ñ����ı����������ȱʡֵ���ҿ���ȥ������һЩ������
Possible variables for option --set-variable (-O) are: back_log current value: 5 connect_timeout current value: 5 delayed_insert_timeout current value: 300 delayed_insert_limit current value: 100 delayed_queue_size current value: 1000 flush_time current value: 0 interactive_timeout current value: 28800 join_buffer_size current value: 131072 key_buffer_size current value: 1048540 lower_case_table_names current value: 0 long_query_time current value: 10 max_allowed_packet current value: 1048576 max_connections current value: 100 max_connect_errors current value: 10 max_delayed_threads current value: 20 max_heap_table_size current value: 16777216 max_join_size current value: 4294967295 max_sort_length current value: 1024 max_tmp_tables current value: 32 max_write_lock_count current value: 4294967295 net_buffer_length current value: 16384 query_buffer_size current value: 0 record_buffer current value: 131072 sort_buffer current value: 2097116 table_cache current value: 64 thread_concurrency current value: 10 tmp_table_size current value: 1048576 thread_stack current value: 131072 wait_timeout current value: 28800
�����һ��mysqld
�������������У�ͨ��ִ������������Կ�����ʵ����ʹ�õı�����ֵ��
shell> mysqladmin variables
ÿ��ѡ�����������������ڻ�������С�����Ⱥ�ջ��С��ֵ���ֽڸ������������ڸ�����K������M��
ָ����K�ֽڻ����ֽ���ʾֵ�����磬16M
ָ��16���ֽڡ�����ĸ�Ĵ�Сдû�й�ϵ��16M
��16m
����ͬ�ġ�
��Ҳ����������SHOW STATUS
��һ�����еķ���������һЩͳ�ơ���7.21 SHOW
�(�õ������е���Ϣ)��
back_log
back_log
ֵָ����MySQL��ʱֹͣ�ش�������֮ǰ�Ķ�ʱ���ڶ��ٸ�������Ա����ڶ�ջ�С�ֻ�����������һ����ʱ�����кܶ����ӣ�����Ҫ�����������仰˵����ֵ�Ե�����TCP/IP���ӵ��������еĴ�С����IJ���ϵͳ��������д�С�������Լ������ơ�
Unix listen(2)
ϵͳ���õ��ֲ�ҳӦ���и����ϸ�ڡ�������OS�ĵ��ҳ�������������ֵ����ͼ�趨back_log
������IJ���ϵͳ�����ƽ�����Ч�ġ�
connect_timeout
mysqld
����������Bad handshake
���������֣�Ӧ��ǰ���ڵȴ�һ�����ӱ��ĵ�������
delayed_insert_timeout
INSERT DELAYED
�߳�Ӧ������ֹ֮ǰ�ȴ�INSERT
����ʱ�䡣
delayed_insert_limit
delayed_insert_limit
�к�INSERT DELAYED
������������Ƿ����κ�SELECT
���δִ�С�����������ڼ���ǰִ��������Щ��䡣
delayed_queue_size
INSERT DELAYED
������һ������(������)������Ŷ����ˣ��κν���INSERT
DELAYED
�Ŀͻ����ȴ�ֱ���������пռ��ˡ� flush_time
flush_time
�����б������ر�(���ͷ���Դ��sync������)��
interactive_timeout
mysql_real_connect()
ʹ��CLIENT_INTERACTIVE
ѡ��Ŀͻ���Ҳ�ɼ�wait_timeout
��
join_buffer_size
key_buffer_size
key_buffer_size
������������Ļ�������С���������ɵõ����ô���������(�����ж��Ͷ���д)�������ܸ������������ࡣ�����ʹ��̫��ϵͳ����ʼ��ҳ������ı����ˡ���ס��ȻMySQL�������ȡ�����ݣ��㽫����ΪOS�ļ�ϵͳ��������һЩ�ռ䡣Ϊ����д������ʱ�õ�������ٶȣ�ʹ��LOCK
TABLES
����7.24LOCK
TABLES/UNLOCK TABLES
��� long_query_time
Slow_queries
�������������ӡ�
max_allowed_packet
net_buffer_length
�ֽڣ����ǿ�����Ҫʱ���ӵ�max_allowed_packet
���ֽڡ�ȱʡ�أ���ֵ̫С���ܲ����(���ܴ���)�������������ʹ�ô��BLOB
�У���������Ӹ�ֵ����Ӧ��������Ҫʹ�õ����BLOB
����ô��
max_connections
mysqld
Ҫ����ļ�����������������������ļ����������Ƶ�ע�͡���18.2.4 Too many connections
������
max_connect_errors
FLUSH
HOSTS
������ͨһ̨������ max_delayed_threads
INSERT DELAYED
��䡣�������ͼ������INSERT
DELAYED
�߳����ú���һ���±��������ݣ��н������룬����DELAYED
����û��ָ��������
max_join_size
max_join_size
����¼�����Ὣ����һ�������������û���Ҫִ��û��һ��WHERE
�Ӿ䡢���ܳ�ʱ�䲢�ҷ��ذ����е����ᣬ��������
max_sort_length
BLOB
��TEXT
ֵʱʹ�õ��ֽ���(ÿ��ֵ��ͷmax_sort_length
���ֽڱ�ʹ�ã�����ı�����)��
max_tmp_tables
net_buffer_length
max_allowed_packet
���ֽڡ���record_buffer
sort_buffer
ORDER
BY
��GROUP BY
��������18.5 MySQL���Ķ��洢��ʱ�ļ��� table_cache
mysqld
Ҫ����ļ���������������MySQL��ÿ��Ψһ�ı���Ҫ2���ļ�����������������ļ����������Ƶ�ע�͡����ڱ�������ι�������Ϣ����10.2.4 MySQL�����رձ��� tmp_table_size
The table
tbl_name is full
��ʽ�Ĵ�����������ܶ��GROUP BY
��ѯ������tmp_table_size
ֵ��
thread_stack
crash-me
���Լ����������������ڸ�ֵ��ȱʡ��һ��IJ������㹻���ˡ���10.8 ʹ�����Լ��Ļ��� wait_timeout
interactive_timeout
��
MySQLʹ���Ǻܾ������Ե��㷨�������ͨ�����ú��ٵ��ڴ����л��MySQL����ı����Եõ����õ����ܡ�
������кܶ��ڴ�ͺܶ��������һ���е������Ŀͻ�����Ҫ�������ܣ���Ӧ��һЩ�������Ķ�����
shell> safe_mysqld -O key_buffer=16M -O table_cache=128 \ -O sort_buffer=4M -O record_buffer=1M & ������н��ٵ��ڴ�ʹ��������ӣ�ʹ������һЩ������
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=100k \ -O record_buffer=100k &
��������
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=16k \ -O table_cache=32 -O record_buffer=8k -O net_buffer=1K &
����кܶ����ӣ����������⡱���ܷ���������mysqld
�Ѿ�������ÿ������ʹ�ú��ٵ��ڴ档��Ȼ�����������������㹻���ڴ棬mysqld
ִ�еø��á�
ע�⣬�����ı�mysqld
��һ��ѡ���ʵ����ֻ�Է��������Ǹ����ӱ��֡�
Ϊ������һ�������仯��Ч������������
shell> mysqld -O key_buffer=32m --help
��֤--help
ѡ�������һ��������������������֮���г����κ�ѡ���Ч�������ڷ�ӳ������С�
table_cache
, max_connections
��max_tmp_tables
Ӱ����������ִ��ļ�����������������������Щֵ��һ���������������������IJ���ϵͳÿ�����̴��ļ���������������ǿ�ӵ����ơ�Ȼ�����������������ϵͳ�����Ӹ����ơ�������OS�ĵ��ҳ��������Щ����Ϊ�ı����Ƶķ�����ϵͳ�кܴ�IJ�ͬ��
table_cache
��max_connections
�йء����磬����200�������ӣ���Ӧ����һ�ű��Ļ���������200
* n
������n
��һ������(join)�б������������
���Ļ���������ӵ�һ��table_cache
�����ֵ��ȱʡΪ64���������mysqld
��-O
table_cache=#
ѡ�����ı䣩��һ�������Բ����رգ����ǵ��������˲�������һ���߳���ͼ��һ����ʱ�������ʹ��mysqladmin
refresh
��mysqladmin flush-tables
��
����������ʱ��������ʹ�����й����ҵ�һ�����������ʹ�ã�
��ÿ��������ȡ��һ����������ζ�ţ��������2���̴߳�ȡͬһ��������ͬһ����ѯ�д�ȡ������(��AS
)������Ҫ�������Ρ��κα��ĵ�һ�δ�ռ2���ļ�������������ÿһ�ζ���ʹ�ý�ռһ���ļ������������ڵ�һ�δĶ������������������ļ�������������������߳�֮�乲����
�������һ��Ŀ¼���������ļ������رպʹ���������������������ִ�������ͬ���ϵ�SELECT
��䣬����������ʱ������һ�㿪������Ϊ��ÿ������ı�������һ�����뱻�رա������ͨ��ʹ���������Щ���������������
��������mysqladmin status
ʱ���㽫������������һЩ������
Uptime: 426 Running threads: 1 Questions: 11082 Reloads: 1 Open tables: 12
��������6��������������������
MySQL�Ƕ��̵߳ģ����������ͬʱ��ͬһ������������ѯ�ʡ�Ϊ����2���߳���ͬһ���ļ����в�ͬ״̬�����������С������ÿ���������̶����ش���Ϊ�����ļ�����һЩ�ڴ��һ��������ļ��������������ļ��������������߳�֮�乲����
�±�ָ��mysqld
������ʹ�ô洢����һЩ��ʽ����Ӧ�õĵط���������洢��ʹ����صķ��������������֡�
key_buffer_size
)�������̷߳���������Ҫʱ�����������ʹ�õ���������������10.2.3 ���ڷ�����������thread_stack
)��һ�����ӻ�����(����net_buffer_length
)��һ�����������(����net_buffer_length
)������Ҫʱ�����ӻ������ͽ����������̬�ر�����max_allowed_packet
����һ����ѯ�������е�ǰ��ѯ��һ������ʱ��Ҳ�����ַ�����
record_buffer
)��
BLOB
�еı��ڴ����ϴ洢����MySQL�汾3.23.2ǰһ�����������һ��HEAP������tmp_table_size
�Ĵ�С����õ�����The
table tbl_name is full
���ڸ��µİ汾�У���ͨ����Ҫʱ�Զ������ڴ��(HEAP)��ת��Ϊһ�����ڴ���(MyISAM)�ı���������Ϊ�˽��������⣬�����ͨ������mysqld
��tmp_table_size
ѡ���ͨ���ڿͻ�����������SQL��SQL_BIG_TABLES
ѡ��������ʱ���Ĵ�С����7.25 SET OPTION
�䷨����MySQL
3.20�У���ʱ�������ߴ���record_buffer*16
��������������ʹ������汾�����������record_buffer
ֵ����Ҳ����ʹ��--big-tables
ѡ������mysqld
���ܽ���ʱ���洢�ڴ����ϣ�Ȼ�����⽫Ӱ�����ิ�Ӳ�ѯ���ٶȡ�
malloc()
��free()
���)��
3
* n
��һ��������(����n
�������г��ȣ�����BLOB
��)��һ��BLOB
ʹ��5
�� 8���ֽڼ���BLOB
���ݡ� BLOB
�еı���һ����������̬�ر������Ա��������BLOB
ֵ�������ɨ��һ���������������BLOB
ֵһ�����һ����������
mysqladmin flush-tables
����ر����в����õı����ڵ�ǰִ�е��߳̽���ʱ������������õı������رա��⽫��Ч���ͷŴ�������õ��ڴ档
ps
������ϵͳ״̬������Ա���mysqld
ʹ�úܶ��ڴ档��������ڲ�ͬ���ڴ��ַ�ϵ��߳�ջ��ɵġ����磬Solaris�汾��ps
��ջ��δ�õ��ڴ��������õ��ڴ档�����ͨ����swap
-s
�����ý���������֤������������ҵ�ڴ�©��̽����������mysqld
�����Ӧ����û���ڴ�©����
MySQL���������������������ġ���ͨ��������һ����ѯǰ�����������б�Ҫ����������������ͬ����˳����������������
��WRITE
��MySQLʹ�õ���������ԭ�����£�
��READ
��MySQLʹ�õ���������ԭ�����£�
��һ���������ͷ�ʱ�������ɱ�д���������е��̵߳õ���Ȼ���Ƕ����������е��̡߳�
����ζ�ţ��������һ��������������ģ�SELECT
��佫�ȴ�ֱ����û�и���ĸ��ġ�
Ϊ�˽����һ�����н��кܶ�INSERT
��SELECT
����������������һ����ʱ���в����в���ż����������ʱ���ļ�¼���������ı���
����������������
mysql> LOCK TABLES real_table WRITE, insert_table WRITE; mysql> insert into real_table select * from insert_table; mysql> delete from insert_table; mysql> UNLOCK TABLES;
�������һЩ�ض�������������ּ��������ȴ��������ʹ��LOW_PRIORITY
ѡ���INSERT
����7.14 INSERT
�䷨��
��Ҳ�ܸı�����mysys/thr_lock.c���е���������ʹ��һ���������С�����������£�д�����Ͷ���������ͬ�����ȼ��������ܰ���һЩӦ�ó���
MySQL�ı����������Dz��������ġ�
MySQLʹ�ñ�������(�������м��������м�����)�Դﵽ�ܸߵ������ٶȡ����ڴ�������������Դ����Ӧ�ó�����˵���м�������һЩ�����ǵ�Ȼ��һЩȱ�ݡ�
��MySQL3.23.7���߰汾�У�һ�����ܰ��в��뵽MyISAM
��ͬʱ�����߳����ڶ��ñ���ע�⣬Ŀǰֻ���ڱ�������ɾ������ʱ�Ź�����
��������ʹ�ܶ��߳��ܹ�ͬʱ��һ�������������һ���߳���Ҫдһ���������������ȵõ���ռ��ȡȨ���ڸ����ڼ䣬����������Ҫ��ȡ���ض������߳̽��ȵ����ľ�����
��Ϊ���ݿ�ĸ���ͨ������Ϊ��SELECT
����Ҫ������һ�������������ȴ�һ�����м�����Ϣ������и��ߵ����ȼ�����Ӧ�ñ�֤���IJ���������������Ϊһ�������һ���ض����ᷢ���ܶ�صIJ�ѯ��
��MySQL 3.23.7��ʼ��һ���˿�����ʹ��max_write_lock_count
����ǿ��MySQL��һ������һ���ض������IJ����һ��SELECT
��
�Դ�һ����Ҫ���������£�
SELECT
�� UPDATE
������ͻ����ȴ�ֱ��SELECT
��ɡ�SELECT
��䣻��ΪUPDATE
��SELECT
�и��ߵ����ȼ�����SELECT
���ȴ�UPDATE
����ɡ���Ҳ���ȴ���һ��SELECT
��ɣ�
����������һЩ���ܵĽ�������ǣ�
SELECT
������еø��죻����ܱ��봴��һЩժҪ(summary)��������㡣
--low-priority-updates
����mysqld
���⽫�����и���(��)һ����������Ա�SELECT
���͵����ȼ�������������£�����ǰ���ε�����SELECT
��佫��INSERT
���ǰִ�С�
LOW_PRIORITY
���Ը���һ���ض���INSERT
��UPDATE
��DELETE
���ϵ����ȼ���
mysqld
ʹ����һ��������WRITE
���������READ
������
SET SQL_LOW_PRIORITY_UPDATES=1
����ɴ�һ���ض��߳�ָ�����еĸ���Ӧ�����õ����ȼ���ɡ���7.25 SET OPTION
�䷨�� HIGH_PRIORITY
����ָ��һ���ض�SELECT
�Ǻ���Ҫ�ġ���7.12 SELECT
�䷨�� INSERT
���SELECT
�����⣬�л���ʹ���µ�MyISAM
������Ϊ����֧�ֲ�����SELECT
��INSERT
��
INSERT
��SELECT
��䣬DELAYED
������INSERT
�����ܽ��������⡣��7.14 INSERT
�䷨�� SELECT
��DELETE
�����⣬LIMIT
ѡ���DELETE
�������㡣��7.11 DELETE
�䷨�� ��������Ż�֮һ��ʹ�������(������)�ڴ�����(�������ڴ���)ռ�ݵĿռ価����С�����ܸ�����ĸĽ�����Ϊ���̶���Ͽ첢��ͨ��Ҳ�ý��ٵ����洢��������ڸ�С������������������Ҳռ�ݽ��ٵ���Դ��
����������ļ���ʹ�������ܸ��ò���ʹ�洢�ռ���С��
MEDIUMINT
������INT
��һЩ��
NOT NULL
����ʹ�κ�������������Ϊÿ�н�ʡһλ��ע����������Ӧ�ó�������ȷʵ��ҪNULL
����Ӧ�ú�������ʹ������ֻ�DZ���ȱʡ������������������VARCHAR
��TEXT
��BLOB
��)��ʹ�ù̶��ߴ�ļ�¼��ʽ����ȽϿ쵫�Dz��ҵؿ��ܻ��˷�һЩ�ռ䡣��10.6 ѡ��һ�ֱ������� ���������������ҳ���һ��������һ�ض�ֵ���С�û��������MySQL���ò������Ե�һ����¼��ʼ��Ȼ�����������ֱ�����ҳ���ص��С���Խ����ʱ��Խ�ࡣ��������ڲ�ѯ������һ��������MySQL�ܿ��ٵ���һ��λ��ȥ��Ѱ�������ļ����м䣬û�б�Ҫ�����������ݡ����һ������1000�У����˳���ȡ���ٿ�100����ע������Ҫ��ȡ��������1000�У����Ͽ��˳���ȡ����Ϊ��ʱ���DZ������Ѱ����
���е�MySQL����(PRIMARY
��UNIQUE
��INDEX
)��B���д洢���ַ������Զ���ѹ��ǰ�ͽ�β�ռ䡣��7.27 CREATE INDEX
�䷨��
�������ڣ�
WHERE
�Ӿ���С� MAX()
��MIN()
ֵ�� ORDER
BY key_part_1,key_part_2
)����������һ������������м�ֵ���ָ���DESC
�����Ե���ȡ��
�ٶ��㷢������SELECT
��䣺
mysql> SELECT * FROM tbl_name WHERE col1=val1 AND col2=val2;
���һ����������������col1
��col2
�ϣ��ʵ����п���ֱ�ӱ�ȡ��������ֿ��ĵ���������������col1
��col2
�ϣ��Ż�����ͼͨ�������ĸ��������ҵ����ٵ��в����ҳ����������Ե���������ʹ�ø�����ȡ�С�
�������һ�������������κ������������ǰ�ܱ��Ż���ʹ�����ҳ��С����磬�������һ��3��������(col1,col2,col3)
�����Ѿ���������(col1)
��(col1,col2)
��(col1,col2,col3)
�ϵ�����������
����в�����������������ǰ��MySQL����ʹ��һ�����ֵ��������ٶ���������ʾ��SELECT
��䣺
mysql> SELECT * FROM tbl_name WHERE col1=val1; mysql> SELECT * FROM tbl_name WHERE col2=val2; mysql> SELECT * FROM tbl_name WHERE col2=val2 AND col3=val3;
���һ������������(col1��col2��col3)
�ϣ�ֻ��������ʾ�ĵ�һ����ѯʹ���������ڶ����͵�������ѯȷʵ�����������У�����(col2)
��(col2��col3)
����(col1��col2��col3)
��������ǰ��
���LIKE
������һ������һ��ͨ����ַ���ʼ��һ�������ַ�����MySQLҲΪLIKE
�Ƚ�ʹ�����������磬����SELECT
���ʹ��������
mysql> select * from tbl_name where key_col LIKE "Patrick%"; mysql> select * from tbl_name where key_col LIKE "Pat%_ck%";
�ڵ�һ������У�ֻ������"Patrick" <= key_col <
"Patricl"
���С��ڵڶ�������У�ֻ������"Pat"
<= key_col < "Pau"
����
����SELECT
��佫��ʹ��������
mysql> select * from tbl_name where key_col LIKE "%Patrick%"; mysql> select * from tbl_name where key_col LIKE other_col;
�ڵ�һ������У�LIKE
ֵ��һ��ͨ����ַ���ʼ���ڵڶ�������У�LIKE
ֵ����һ��������
��� column_name ��һ��������ʹ��column_name
IS NULL
��������ʹ��������
MySQLͨ��ʹ���ҳ������������е�������һ�������������������в��������Ƚϵ��У�=
��>
��>=
��<
��<=
��BETWEEN
��һ����һ����ͨ���ǰ��'something%'
��LIKE
����
�κβ���Խ����WHERE
�Ӿ������AND
��ε������������Ż�ѯ�ʡ�
����WHERE
�Ӿ�ʹ��������
... WHERE index_part1=1 AND index_part2=2 ... WHERE index=1 OR A=10 AND index=2 /* index = 1 OR index = 2 */ ... WHERE index_part1='hello' AND index_part_3=5 /* optimized like "index_part1='hello'" */
��ЩWHERE
�Ӿ���ʹ��������
... WHERE index_part2=1 AND index_part3=2 /* index_part_1 is not used */ ... WHERE index=1 OR A=10 /* No index */ ... WHERE index_part1=1 OR index_part2=10 /* No index spans all rows */
���ȣ�һ������Ӱ�����е�ѯ�ʡ����е�����ϵͳ����Խ���ӣ���õ�����Ŀ�����
����㲻���κ�GRANT
���ִ�У�MySQL�����Ż����ɼ�顣���������кܴ�����ֵ�û�ʱ����������Ȩ�������������ɼ���и���Ŀ�����
��������������һЩ���Ե�MySQL�����йأ���������MySQL�ͻ��м�����ʱ�䣺
mysql> select benchmark(1000000,1+1); +------------------------+ | benchmark(1000000,1+1) | +------------------------+ | 0 | +------------------------+ 1 row in set (0.32 sec)
������ʾMySQL����PentiumII 400MHz
����0.32��ִ��1,000,000��+
����ʽ��
����MySQL����Ӧ�ñ��߶��Ż��������Կ�����һЩ���Ⲣ��benchmark(loop_count,expression)
���ҳ��Ƿ���IJ�ѯ�������һ�����ù��ߡ�
�ڴ��������£�����ͨ���������Ѱ���������ܡ���С�ı�����ͨ������1�δ���Ѱ�����ҵ���(��Ϊ����������ܱ�����)���Ը���ı������ܹ�����(ʹ��
B++ ������)���㽫��Ҫ��log(row_count)/log(index_block_length/3*2/(index_length
+ data_pointer_length))+1
��Ѱ���ҵ��С�
��MySQL�У�������ͨ����1024���ֽ�������ָ��ͨ����4���ֽڣ����һ����һ����������Ϊ3(�е�����)��
500,000 �еı����㣺log(500,000)/log(1024/3*2/(3+4)) + 1
= 4
��Ѱ����
�������������Ҫ���Լ 500,000 * 7 * 3/2 = 5.2M��(����������������������2/3(���ǵ��͵�))���㽫�������ڴ����������Ĵֲ����㽫���ܽ���Ҫ1-2���ô�OS���������ҳ��С�
Ȼ������д���㽫��Ҫ 4 ��Ѱ������(����)���ҵ����Ķ��������������ͨ����2��Ѱ�����������������д���С�
ע�⣬��������ζ�����Ӧ�ó��������� N log N �˻����������ø���ʱ��ֻҪһ�б�OS��SQL���������壬���齫���������ٵظ����������ݱ��̫���ܱ���������齫��ʼ��ø���ֱ�����Ӧ�ó�������ܴ���Ѱ������(����N log N����)��Ϊ�˱���������ӣ������������������Ӷ����ӡ���10.2.3 ���ڷ�����������
SELECT
��ѯ���ٶ��ܵ���˵��������Ҫʹһ��������SELECT ... WHERE
���죬���ĵ�һ�����������Ƿ�������һ����������10.4 MySQL ������ʹ�����ڲ�ͬ��֮�����������ͨ��Ӧ����������ɡ������ʹ��EXPLAIN
��ȷ���ĸ���������һ��SELECT
��䡣��7.22 EXPLAIN
�䷨(�õ�����һ��SELECT
����Ϣ)��
һЩһ��Ľ��飺
myisamchk
--analyze
����Ϊÿһ������һ��ֵ��ָ������ֵͬ��ƽ����������Ȼ����Ψһ������������1����myisamchk --sort-index
--sort-records=1
���������Ҫ������1������)���������һ��Ψһ����������Ҫ���ݸ������ش����ȡ���еļ�¼������ʹ�������һ���÷�����Ȼ��ע�⣬�������û�б���ѵر�д�����Ҷ�һ����������ܳ�ʱ�䣡
WHERE
�Ӿ�where�Ż�������SELECT
�У���Ϊ��������Ҫ������ʹ�������ͬ�����Ż�������DELETE
��UPDATE
��䡣
ҲҪע�⣬�����Dz���ȫ�ġ�MySQLȷʵ���������Ż�������û��ʱ��ȫ����¼���ǡ�
��MySQLʵʩ��һЩ�Ż��������棺
((a AND b) AND c OR (((a AND b) AND (c AND d)))) -> (a AND b AND c) OR (a AND b AND c AND d)
(a<b AND b=c) AND a=5 -> b>5 AND b=c AND a=5
(B>=5 AND B=5) OR (B=6 AND 5=5) OR (B=7 AND 5=6) -> B=5 OR B=6
WHERE
��COUNT(*)
ֱ�Ӵӱ��м�����Ϣ������ʹ��һ����ʱ�����κ�NOT
NULL
����ʽҲ�������� SELECT
����Dz����ܵIJ��Ҳ������С�
GROUP BY
����麯��(COUNT()
��MIN()
����)��HAVING
��WHERE
�ϲ���WHERE
�Եõ�һ�������WHERE
���㲢��Ҳ����������¼��
UNIQUE
��������һ��PRIMARY KEY
��WHERE
�Ӿ�һ��ʹ�õı����������е���������ʹ��һ����������ʽ�����������ֱ�����ΪNOT
NULL
�� �������еı�������������
mysql> SELECT * FROM t WHERE primary_key=1; mysql> SELECT * FROM t1,t2 WHERE t1.primary_key=1 AND t2.primary_key=t1.id;
ORDER
BY
��GROUP BY
��������ͬһ��������ô������ʱ���ñ����ȱ�ѡ�С�
ORDER BY
�Ӿ��һ����ͬ��GROUP BY
�Ӿ䣬�����ORDER
BY
��GROUP BY
��������������������еĵ�һ���������������У�����һ����ʱ����
SQL_SMALL_RESULT
��MySQL��ʹ��һ�����ڴ��еı���
DISTINCT
���任�������е����ϵ�һ��GROUP BY
��DISTINCT
��ORDER
BY
���Ҳ���������������Ҫһ����ʱ���� HAVING
�Ӿ���б�������
������һЩ�ܿ�IJ�ѯ���ӣ�
mysql> SELECT COUNT(*) FROM tbl_name; mysql> SELECT MIN(key_part1),MAX(key_part1) FROM tbl_name; mysql> SELECT MAX(key_part2) FROM tbl_name WHERE key_part_1=constant; mysql> SELECT ... FROM tbl_name ORDER BY key_part1,key_part2,... LIMIT 10; mysql> SELECT ... FROM tbl_name ORDER BY key_part1 DESC,key_part2 DESC,... LIMIT 10;
���в�ѯ��ʹ���������Ϳɽ��(���������������ֵ�)��
mysql> SELECT key_part1,key_part2 FROM tbl_name WHERE key_part1=val; mysql> SELECT COUNT(*) FROM tbl_name WHERE key_part1=val1 AND key_part2=val2; mysql> SELECT key_part2 FROM tbl_name GROUP BY key_part1;
���в�ѯʹ������������˳�����������һ�����������
mysql> SELECT ... FROM tbl_name ORDER BY key_part1,key_part2,... mysql> SELECT ... FROM tbl_name ORDER BY key_part1 DESC,key_part2 DESC,...
LEFT JOIN
��MySQL��A LEFT JOIN B
ʵ�����£�
B
������Ϊ�����ڱ�A
�� A
��������������������LEFT JOIN
�����ı�(��B
��)��
LEFT JOIN
�������Ƶ�WHERE
�Ӿ��С� WHERE
�Ż��� A
����һ��ƥ��WHERE
�Ӿ䣬������B
��û���κ���ƥ��LEFT
JOIN
��������ô��B
����������������ΪNULL
��һ�С�
LEFT JOIN
���ҳ���ijЩ���в����ڵ��в�����WHERE
�����������в��ԣ�column_name
IS NULL
������column_name ������ΪNOT NULL
���У���ôMySQL
�����Ѿ��ҵ���ƥ��LEFT
JOIN
������һ�к�ֹͣ�ڸ�����к�Ѱ��(��һ�ض��ļ����)��
LIMIT
��һЩ����У�����ʹ��LIMIT #
����ʹ��HAVING
ʱ��MySQL���Բ�ͬ��ʽ������ѯ��
LIMIT
ֻѡ��һЩ�У���MySQLһ��Ƚ�ϲ���������ı�ɨ��ʱ��������һЩ�����ʹ��������
LIMIT #
��ORDER BY
��MySQLһ���ҵ��˵�һ��
#
����������������������������� LIMIT #
��DISTINCT
ʱ��MySQLһ���ҵ�#
��Ψһ���У�����ֹͣ��
GROUP BY
��ͨ��˳���ȡ��(���ڼ���������)���������Ȼ�����ժҪֱ����ֵ�ı䡣����������£�LIMIT
#
���������κβ���Ҫ��GROUP
�� MySQL
�Ѿ������˵�һ��#
�е��ͻ�������������ѯ��
LIMIT 0
�����ǿ��ٷ���һ���ռ��ϡ���Լ���ѯ���ҵõ�����е������������õġ�
LIMIT #
������Ҫ���ٿռ��������ѯ�� INSERT
��ѯ���ٶ�����һ����¼��ʱ����������ɣ�
����������е�������ʱ������ȡ��ⲻ���Ǵ��ij�ʼ����(��Ϊÿ���������еIJ�ѯ��һ��)��
���Ĵ�С��N log N (B ��)���ٶȼ��������IJ��롣
�ӿ�����һЩ������
INSERT
��䡣���ʹ�÷ֿ�INSERT
����(��һЩ����м���)��INSERT DELAYED
���õ����ߵ��ٶȡ���7.14 INSERT
�䷨�� MyISAM
������ڱ���û��ɾ�����У�����SELECT
:s�������е�ͬʱ�����С�
LOAD DATA INFILE
����ͨ����ʹ�úܶ�INSERT
����20������7.16 LOAD DATA INFILE
�䷨�� LOAD DATA INFILE
����Щ��ʹ�����й��̣�
CREATE TABLE
������������ʹ��mysql
��Perl-DBI��
FLUSH TABLES
�����������mysqladmin flush-tables
��
myisamchk --keys-used=0 -rq /path/to/db/tbl_name
���⽫�ӱ���ɾ������������ʹ�á�
LOAD DATA INFILE
�����ݲ��뵽���У��⽫�������κ���������˺ܿ졣myisampack
������Ҫѹ������������������myisampack
����10.6.3 ѹ������������ myisamchk -r -q /path/to/db/tbl_name
�ٴ����������⽫�ڽ���д�����ǰ���ڴ��д��������������������죬��Ϊ�����������Ѱ�������������Ҳ��������ƽ�⡣
FLUSH TABLES
�����������mysqladmin flush-tables
��������̽����������MySQL��ij��δ���汾��LOAD DATA INFILE
��
mysql> LOCK TABLES a WRITE; mysql> INSERT INTO a VALUES (1,23),(2,34),(4,33); mysql> INSERT INTO a VALUES (8,26),(6,29); mysql> UNLOCK TABLES;
��Ҫ���ٶȲ��������������������ϴ��������һ�Σ�������INSERT
�����ɺ�һ�������в�ͬ��INSERT
����������������������ϴ�����������һ���������������е��У������Ͳ���Ҫ������Ҳ�����Ͷ����Ӳ��Ե�����ʱ�䣬���Ƕ�ijЩ�߳����ȴ�ʱ�佫����(��Ϊ���ǵȴ���)�����磺
thread 1 does 1000 inserts thread 2, 3, and 4 does 1 insert thread 5 does 1000 inserts
����㲻ʹ��������2��3��4����1��5ǰ��ɡ������ʹ��������2��3��4�����ܲ���1��5ǰ��ɣ���������ʱ��Ӧ�ÿ��Լ40%����ΪINSERT
,
UPDATE
��DELETE
������MySQL���Ǻܿ�ģ�ͨ��Ϊ���ڴ�Լ5���������ϵز�������һ�еĶ����������㽫��ø��õ��������ܡ���������ܶ�һ�еIJ��룬�������һ��LOCK
TABLES
��ż�������һ��UNLOCK TABLES
(��Լÿ1000��)������������̴߳�ȡ��������Ȼ�����»�úõ����ܡ���Ȼ��LOAD
DATA INFILE
��װ��������Ȼ�Ǹ���ġ�
Ϊ�˶�LOAD DATA INFILE
��INSERT
�õ�һЩ������ٶȣ�����ؼ��ֻ���������10.2.3 ���ڷ�����������
UPDATE
��ѯ���ٶ����IJ�ѯ���Ż�Ϊ��һ��д������һ��SELECT
��ѯ��д�ٶ������ڱ��������ݴ�С�ͱ�����������������
ʹ���ĸ������һ���������Ƴٸ��IJ���Ȼ��һ��һ�е����ܶ���ġ����������������һ��һ�еغܶ���ı�һ����һ���졣
ע�⣬��̬��¼��ʽ�ĸ���һ���ϳ��ܳ��ļ�¼�������п���¼���������㾭����������ʱ��ʱ��OPTIMIZE
TABLE
�Ƿdz���Ҫ�ġ���7.9
OPTIMIZE TABLE
�䷨��
DELETE
��ѯ���ٶ�ɾ��һ����¼��ʱ�侫ȷ�����������������ȡ�Ϊ�˸����ٵ�ɾ����¼�������������������Ĵ�С����10.2.3 ���ڷ�����������
��һ����ɾ�������б�ɾ���е�һ��ҲҪ�öࡣ
��MySQL����ǰ(�汾 3.23.5)���ܴ�һ���ٶȹ۵���4���ñ��ĸ�ʽ֮��ѡ��
myisamchk
�ܺ�����ָ��ÿ�����Ķ���ʼ�ͽ����������ͨ���ܻ������м�¼�����˲��ֱ�д����Ǹ���ע�⣬��MySQL�У������������ܱ��ؽ���OPTIMIZE
table
��myisamchk
����һ�ű����������ͬһ����������ijЩVARCHAR
��BLOB
��������ȡ/�ı�ľ�̬���ݣ�����̬����������һ�����Ա�����Ƭ������һ�������⡣
myisampack
�������ɡ� SELECT tab1.a, tab3.a FROM tab1, tab2, tab3 WHERE tab1.a = tab2.a and tab2.a = tab3.a and tab2.c != 0;
Ϊ�˼����������ǿ���tab2��tab3�����ᴴ��һ����ʱ������Ϊ����ͬ��( tab1.a )���ҡ������Ǵ����ñ��ͽ��ѡ������
CREATE TEMPORARY TABLE test TYPE=HEAP SELECT tab2.a as a2, tab3.a as a3 FROM tab2, tab3 WHERE tab2.a = tab3.a and c = 0; SELECT tab1.a, test.a3 from tab1, test where tab1.a = test.a1; SELECT tab1.b, test.a3 from tab1, test where tab1.a = test.a1 and something;
VARCHAR
��BLOB
��TEXT
��ʱ��
CHAR
��NUMERIC
��DECIMAL
�г���п��ȡ�
myisamchk
)������һ�������ļ�¼��ɾ����������Ҫ�黹���д��̿ռ������ϵͳ��
VARCHAR
��BLOB
��TEXT
�У�ʹ�øø�ʽ��
''
)������������ĸ�����(�ⲻͬ�ڰ���NULL
ֵ����)������ַ�������ɾ��β���հ����㳤�ȣ�������������ֵ������λͼ�б�Dz��Ҳ����浽�����ϡ��ǿ��ַ����洢Ϊһ�������ֽڼ��ַ������ݡ�
myisamchk
-r
��ʹ���ܸ��á�ʹ��myisamchk -ei tbl_name
��һЩͳ�ơ�3 + (number of columns + 7) / 8 + (number of char columns) + packed size of numeric columns + length of strings + (number of NULL columns + 7) / 8
��ÿ��������6���ֽڵijͷ������ۺ�ʱ���������¼������һ����̬��¼�����ӡ�ÿ�������ӽ�������20���ֽڣ������һ��������ͬһ�����С�������ǣ���������һ�����ӡ��������myisamchk
-ed
����ж������ӡ����е����ӿ����� myisamchk -r
ɾ����
myisampack
ʵ�ó���������ֻ���������о���MySQL��չ�����ʼ�֧�ֵĿͻ�����Ϊ���ڲ�ʹ�ñ���һ��myisampack
������
myisampack
�Ŀͻ��ܶ�ȡ��myisampack
ѹ���ı���0
������ʹ��1λ�洢��0
��255
�ķ�Χ��һ��BIGINT
��(8���ֽ�)������Ϊһ��TINYINT
��(1�ֽ�)�洢��ENUM
�� BLOB
��TEXT
�С�myisamchk
��ѹ����MySQL��֧�ֲ�ͬ���������ͣ�����һ���������ISAM������һ��B�������������ܴ��Ե�Ϊ�����ļ������СΪ(key_length+4)*0.67
�������еļ��ϵ��ܺ͡������Ƕ������������м�������˳����ʱ����
�ַ��������ǿհ�ѹ���ġ������һ������������һ���ַ�������Ҳ��ѹ��ǰ������ַ������кܶ�β���հ���һ���ܲ����õ�ȫ����VARCHAR
�У��հ�ѹ��ʹ�����ļ���С������ܶ��ַ�������ͬ��ǰ��ǰѹ�����а����ġ�
�����ӽ��������ڴ��У�������mysqld
���ص�����������ǽ���ʧ��������Ϊ���������죬�����������������õġ�
MySQL�ڲ���HEAP��ʹ��û���������100%��̬��ϣ����û����ɾ���йص����⡣
��ֻ��ͨ��ʹ���ڶѱ��е�һ���������õ�ʽ��ȡ����(ͨ����=
������)��
�ѱ���ȱ���ǣ�
ORDER BY
)���Լӿ�ϵͳ��δ����Ľ����ǣ�
EXPLAIN
������������7.22 EXPLAIN
�䷨(�õ�����SELECT
����Ϣ)��SELECT
��ѯ����������������йص����⡣
SELECT
* from table where hash='calculated hash on col1 and col2' and col_1='constant' and
col_2='constant' and ..
��VARCHAR
��BLOB
�С�ֻҪ��ʹ�õ���VARCHAR
��BLOB
�У��㽫�õ���̬�г��ȡ���9.4 MySQL�������� UPDATE
table set count=count+1 where index_column=constant
�Ǻܿ�ģ�����ʹ����MySQL������ֻ�б�������(���ض�/����д)�����ݿ�ʱ����ȷʵ��Ҫ����Ҳ��������������ݿ�Ϻõ����ܣ���Ϊ����������������������н��ٵ�����Ҫ����
11111111111111111111111INSERT /*! DELAYED */
����ӿ촦������Ϊ�ܶ��¼������һ�δ���д�뱻д�롣INSERT /*! LOW_PRIORITY */
��SELECT /*! HIGH_PRIORITY */
��ȡ��������е�ѡ�����Ǽ�ʹ���˵ȴ���һ��д��ҲҪ��ɵ�ѡ��INSERT
������洢�ܶ���һ��SQL�������(����SQL������֧��������LOAD DATA INFILE
װ�ؽϴ����������ݡ����һ��IJ���첢�ҵ�myisamchk
������mysqld
��ʱ�����������졣AUTO_INCREMENT
�й���Ψһֵ��OPTIMIZE TABLE
�Ա�����Ƭ����7.9O PTIMIZE TABLE
�䷨��HEAP
���Եõ�������ٶȡ���9.4 MySQL��������name
������customer_name
)��Ϊ��ʹ�����������ֲ������SQL����������Ӧ��ʹ���Ƕ���18
���ַ���MyISAM
������ʹ��SQL �ӿڣ����ܵõ�2-5�����ٶ�������Ȼ��Ϊ���������������ݱ���������Ӧ�ó�������ͬһ̨�����ķ������ϣ�����ͨ����ֻӦ�ñ�һ�����̴�ȡ(��Ϊ�ⲿ�ļ�����ȷʵ����)��ͨ����MySQL�������������ײ�MyISAM
������������������(�����Ҫ��������ǻ�ø������ܵ�һ�����ķ���)������������Ƶ����ݿ�ӿڣ�Ӧ���൱����֧�������Ż���
�����Ӧ�ò������Ӧ�ó�������ݿ⣬�Է���ƿ�����Ķ���ͨ��������(��ͨ����һ������ģ�顱����ƿ��)����������ȷ����һ��ƿ��(�ȵ�)����ʹ�����Ӧ�ó�����˵���������ܡ��㹻�á���������Ӧ�ö�ÿ��ƿ����һ�����ƻ��������ij�ˡ�ȷʵ��Ҫ������������ν������
����һЩ����ֲ�Ļ���������ӣ��μ�MySQL��������11 MySQL ����������������������κγ�����Ϊ�����Ҫ������ͨ�������������ܳ��Բ�ͬ���������Ľ��������������һ�����������Ľ��������
��ϵͳ���ط���ʱ����һЩ�����Ǻ��ձ�ģ����������кܶ���������ϵ�Ŀͻ�������������ϵͳ����һ��(����)ϵͳ�����и������⡣��ĿǰΪֹ����һ����Щ����������������йص�����(��ɨ���ڸ߸���ʱ���ֲ���)��OS/�����⡣���ϵͳ�Ѿ���������ϵͳ�У����Ǵ������������������
Ϊ�˱������������⣬��Ӧ�ð�һЩ���������ڿ�����ĸ����²����������Ӧ�ã�
MySQL�ڷֿ����ļ��д洢�����ݺ��������ݡ�����(����ȫ��)�������ݿ���ͬһ���ļ��л���к��������ݡ��������ţ�MySQL��ѡ��Էdz��㷺���ִ�ϵͳ����˵�ǽϺõġ�
�洢�����ݵ���һ����������һ���ֿ�������ÿ����Ϣ(������SDBM��Focus)���⽫��ÿ����ȡ����һ�еIJ�ѯ���һ������ͻ�ơ���Ϊ�ڶ���һ�б���ȡʱ��������˻��������������ģ�Ͷ�ͨ�ù��ܵ����ݿⲻ����á�
������������������������һ�𱻴洢(����Oracle/Sybase)������������У��㽫��������Ҷ��ҳ�����ҵ�����Ϣ�����Ⲽ�ֵĺô����������������(ȡ����������������������)��ʡһ�δ��̶������Ⲽ�ֵĻ����ǣ�
��ΪMySQLʹ�ü���ı�����(��ζ�/һ��д)�����µ������������ͬһ�����е�һ��������ȶ�������������ѡ���һ����ϡ�
�������ţ�����������£��Դ����ϵͳ���쳣���ٵ�����ʹ����Ϊһ��Ӯ�ҡ���������ͨ��Ҳ����ͨ�����Ķ�������������������Ҫ�������������Ӳ����
��һЩ������Ӧ�û���������Ҳ�ڿ���һЩ��չ�����Խ�������⡣
��Ϊ����SQL������ʵ����SQL�IJ�ͬ���֣�Ҫ�������д����ֲ��SQLӦ�ó��Ժܼ�ѡ��/���룬���Ǻ����ģ���������ҪԽ�࣬��Խ���ѣ������������ҪӦ�ó���Ժܶ����ݿⶼ�죬����ø��ѣ�
Ϊ��ʹһ������Ӧ�ó������ֲ������Ҫѡ����Ӧ����֮�����ĺܶ�SQL��������
������ʹ��MySQL��crash-me ����http://www.mysql.com/crash-me-choose.htmy�����ҳ�������֮ʹ�õ����ݿ��������ѡ��ĺ��������ͺ����ơ�crash-me���ڶ��κο��ܵ���������˺ܳ�ʱ�䣬��������Ȼ������Թ��Ĵ�Լ450�����顣
���磬�������Ҫ��ʹ��Informix �� DB2���㲻Ӧ���б�18���ַ�������������
MySQL�������crash-me�Ƕ��������ݿ�ġ�ͨ���۲�������ô�����������ܵõ�һ���о��������Ϊ��д��Ķ��������ݿ��Ӧ�ó�����ʲô������������MySQLԴ����ַ�����sql-bench��Ŀ¼���ҵ���������DBI���ݿ�ӿ���Perlд��(���������Ĵ�ȡ����)��
��http://www.mysql.com/benchmark.html��������Ľ����
�����������Щ����������������������ݿⶼ��һЩ���㡣��������Dz�ͬ��������Ե��µIJ�ͬ��Ϊ��
�����Ϊ���ݿ�Ķ����Զ�Ŭ��������Ҫ���ÿ��SQL������ƿ�������ø��ܡ�MySQL�ڼ������·���ܿ죬������ͬһ�����ϻ�϶���/д�߷��潫��һ�����⡣����һ���棬������ͼ��ȡ����������˵���ʱ��Oracle��һ���ܴ�����(ֱ�����DZ���յ�������)���������ݿ��ܵ���˵�ڴӼ�¼�ļ����������ܽ�����Ǻܺã���Ϊ����������£��м���������û�ô���
Ϊ��ʹ���Ӧ�ó���ȷʵ���������ݿ⡱������Ҫ����һ�����Ŀ���չ�Ľӿڣ�������ɲ���������ݡ���ΪC++�ڴ����ϵͳ�Ͽ��Եõ��ģ�ʹ�����ݿ��һ��C++ ��ӿ���������ġ�
�����ʹ��һЩij�����ݿ��ض��Ĺ���(��MySQL�У���REPLACE
����)����Ӧ��ΪSQL����������һ��������ʵ��ͬ���Ĺ���
(������Щ)����MySQL������ʹ��/*! */
���MySQL�ض��Ĺؼ��ʼӵ���ѯ�С���/**/
�еĴ��뽫�����������SQL��������Ϊһƪע��(������)��
�����������ı�ȷ�Ը���Ҫ��������һЩwebӦ�ó���������һ�ֿ������Ǵ���һ��Ӧ�ò㣬�������еĽ���Ը�����ߵ����ܡ�ͨ��ֻ�����ϵĽ���ڶ�ʱ����ڡ������ܱ��ֻ��������ˢ�¡����ڼ��߸��ص���������൱�����ģ��ڴ�����£����ܶ�̬�����ӻ��浽�������趨�ϸߵĹ���ʱ��ֱ��һ�лص�������
����������£�������Ϣ�ı�Ӧ�ð��������ʼ��С�ͱ�һ��Ӧ�ñ�ˢ�¼��ε���Ϣ��
��MySQL��������ڼ䣬MySQL�Ĺ����ʺ����ǵ����ͻ�������Ϊ������һЩ���������̴������ݲֿ⡣
���Ǵ������̵�õ����к���������ÿ���ܽᲢ�����DZ�����Ϊ���е����ṩ���õ���Ϣ�������ǵó����ǵĹ��ս���Ӱ�����ǵĹ˿͡�
�������൱������(��Լÿ��7�����ڽ����ܽ�)�������DZ���4-10������������Ҫ���ָ��û�������ÿ�ܹ˿�����õ�����������Ҫ�����̡��������Ը����ݵ��±��档
����ͨ��ÿ�½�������Ϣ�洢��ѹ���ġ����ס��������������������һ�ĺ�/�ű������������Խ��ױ��IJ�ͬ����( ��Ʒ�飬�˿�id���̵�...)���ܽ������������һ�������������ҳ��Сperl�ű���̬���ɵ���ҳ���ڽű���ִ��SQL��䲢�Ҳ��������������Ǻ���ʹ��PHP��mod_perl��������ʱ����û�С�
��ͼ�����ݣ�������C���Ա�д��һ���Ĺ��ߣ����ܻ���SQL��ѯ�Ľ��(�Խ����һЩ����)������Ʒ����Ҳ�ӷ���HTML
�ļ���perl�ű��ж�̬��ִ�С�
�ڴ��������£�һ���µı���ͨ���ظ���һ�����нű����������е�SQL��ѯ����ɡ���һЩ����£����ǽ���Ҫ�Ѹ�����ֶμӵ�һ�����е��ܽ���л����һ���µģ�������Ҳ�൱����Ϊ�����ڴ����ϱ������н��ױ�����Ŀǰ����������50G�Ľ��ױ���200G�������˿�����)��
����Ҳ�����ǵĹ˿�ֱ����ODBC��ȡ�ܽ���Ա���û����Լ��������ݡ�
�����÷dz��е���Sun Ultra sparcstation ( 2x200 Mz )��������û���κ����⡣������������˷�����֮һ��һ̨2��CPU 400 Mz��Ultra sparc�������������ڼƻ�������Ʒ���Ľ��ף��⽫��ζ����������10����������Ϊ������ͨ��ֻ��Ϊ���ǵ�ϵͳ���Ӹ���Ĵ��̾��ܸ�������
����Ҳ������Intel-Linux�Ա��ܸ����˵صõ������cpu��������Ȼ�����ж����ƿ���ֲ�����ݿ��ʽ(��3.32������)�����ǽ���ʼ��Ӧ�ó����ijЩ����ʹ������
��������ĸо���Linux�ڵ͵��еȸ���ʱִ�еĽϺã������㿪ʼ�õ����µĸ߸���ʱ��Solaris�����ָ��ã���Ϊ����IO�ļ��ޣ��������ǻ�û�й����ⷽ����κν��ۡ�����һЩLinux���Ŀ����ߵ������Ժ�������� Linux �ĸ����ã�������������̫�����Դʹ�ý��������ܱ�úܵ͡���������������ڽ���ʱ����ʹ�����о���������Ӧ��ϣ���⽫��δ����Linux�ں��н����