MySQL配置文件讲解(二)

2014-11-24 17:38:32 · 作者: · 浏览: 1
理一个数据库时,用户可能需要内存中附加的缓冲区空间。


set-variable=net_buffer_length=2k


正如net_buffer_length指令所定义的,MySQL服务器还给传入的请求保留了空间。


server-id=1


一般来说,如果有一个MySQL主服务器,应该把它的server-id设置成1;应该把MySQL从属服务器的server-id设置成2;


[mysqldump]


用户可以在不同类型的SQL数据库之间传输数据,这由[mysqldump]配置段中的命令来控制。


quick


quick选项支持较大数据库的转储。


set-variable=max_allowed_packet=16M


当然,用来传输数据库表到其它数据库的max_allowed_packet大于客户与服务器之间的简单通信所使用的信息包。


[mysql]


no-auto-rehash


这个配置段设置启动MySQL服务的条件;在这种情况下,no-auto-rehash确保这个服务启动得比较快。


[isamchk]


[myisamchk]


像SQL这样的关系数据库用所谓的Indexed Sequential Access Method(索引顺序存取方法,简称ISAM)来处理。这两个配置段中的命令是相同的;这些命令与检查并修复数据库表的同名命令有关。


set-variable=key_buffer=8M


set-variable=sort_buffer=8M


在前面谈及MySQL服务器时,用户己经见过这些变量。它们在这里都比较大,以便支持数据库的较快速检查与修复。


[mysqlhotcopy]


interactive-timeout


正如[mysqlhotcopy]配置段所指定的,在一个数据库复制操作期间,连接会挂起。在默认情况下,interactive-timeout变量把一个数据传输的最大时间量设置为28800秒(8个小时)。


my-medium.cnf文件


与中等数据库相关的MySQL配置文件含有和my-small-cnf配置文件中一样的有效配置段。在[mysqld]配置段中,下面这些命令支持较大规模的服务器数据库:


set-variable=key_buffer=16M


set-variable=table_cache=64


set-variable=sort_buffer=512K


set-variable=net_buffer_length=8K


log-bin


一般来说,这个配置段中的命令支持服务器上的较大高速缓存与缓冲区长度。应该看到两条新命令。


set-variable=myisam_sort_buffer_size=8M


log-bin


myisam_sort_buffer_size命令允许MySQL索引数据库,第二条命令支持二进制日志记录方法。


[isamchk]


[myisamchk]


当然,这两个配置段中的缓冲区比用于数据库传输的缓冲区大,这个文件包含下面这些命令;它们发送消息到服务器和接收来自服务器的消息。


set-variable=read_buffer=2M


set-variable=write_buffer=2M


my-large.cnf文件


与较大型数据库相关的MySQL配置文件含有和my-samll-cnf配置文件中一样的有效配置段。在本文中,将比较my-large-cnf与my-medium-cnf样本文件中的各条命令。在[mysqld]配置段中,下面这些命令支持较大型的服务器数据库:


set-variable=key_buffer=256M


set-variable=table_cache=256


set-variable=sort_buffer=1M


set-variable=myisam_sort_buffer_size=64M


set-variable=net_buffer_length=8K


这个配置段中有3条附加的命令。record_buffer命令保存对一个数据库中不同表的扫描结果。thread_cache命令对多请求有用;空闲线程被高速缓存起来,进而允许新的搜索操作采用己有的线程。只要这防止搜索操作启动新的服务器进程,这就能减轻系统上的负荷。


set-variable=record_buffer=1M


set-variable=thread_cache=8


set-variable=thread_concurrency=8


thread_concurrency变量限定同时运行的线程数量。my-large.cnf样本文件建议用户应该把这个数量限定于本计算机上CPU数量的两倍;这个特定设置相当 4个CPU。


my-huge.cnf文件


my-huge.cnf文件含有和my-large.cnf配置文件中一样的命令。当然,分配给大多数指令的值比较大并适合较大型的数据库。


正如wWw.mysql.com站点上所描述的,拥有大量数据库的组织,比如:google、 Sabre和NASA都采用MySQL。虽然我们猜测这些公司所使用的命令不同于用户在my-huge.cnf文件中所看到的命令,但这至少让用户对 MySQL企业级数据库有一个概念。