欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL 优化设置步骤

程序员文章站 2023-11-16 21:12:46
如果使用的是mysql 5.0.x可以直接将以下内容保存替换mysql中的my.ini,记得要修改basedir和datadir两个栏目的路径。复制代码 代码如下:[cli...

如果使用的是mysql 5.0.x
可以直接将以下内容保存替换mysql中的my.ini,记得要修改basedir和datadir两个栏目的路径。

复制代码 代码如下:

[client]
port=3306
[mysql]
default-character-set=gbk
[mysqld]
port=3306
basedir="d:/web/mysql/"
datadir="d:/web/mysql/data/"
default-character-set=gbk
default-storage-engine=myisam
max_connections=1910
query_cache_limit=2m
query_cache_size=64m
query_cache_type=1
table_cache=64
tmp_table_size=32m
thread_cache_size=64
myisam_sort_buffer_size=8m
key_buffer_size=256m
read_buffer_size=64k
read_rnd_buffer_size=256k
sort_buffer_size=208k
skip-bdb
back_log=500
skip-locking
skip-innodb
thread_concurrency=16
max_connect_errors=30000
wait_timeout=120
max_allowed_packet=2m
interactive_timeout=120
local-infile = 0

增加数据库日志记录
在mysql的配置文件my.ini最下面加入以下内容,将你需要记录的日志类型栏目前面的#注释符去掉,然后=后面填写日志文件名称(该文件需手动建立,程序方可在其写入日志)使其生效。
复制代码 代码如下:

#enter a name for the error log file. otherwise a default name will be used.
#log-error=
#enter a name for the query log file. otherwise a default name will be used.
#log=
#enter a name for the slow query log file. otherwise a default name will be used.
#log-slow-queries= log-slow-queries.txt
#enter a name for the update log file. otherwise a default name will be used.
#log-update=
#enter a name for the binary log. otherwise a default name will be used.
#log-bin=

增加中文全文索引
在mysql的配置文件my.ini最下面加入以下内容。
复制代码 代码如下:

# minimum word length to be indexed by the full text search index.
# you might wish to decrease it if you need to search for shorter words.
# note that you need to rebuild your fulltext index, after you have
# modified this value.
ft_min_word_len = 1

从mysql4.0开始就支持全文索引功能,但是mysql默认的最小索引长度是4。如果是英文默认值是比较合理的,但是中文绝大部分词都是2个字符,这就导致小于4个字的词都不能被索引,全文索引功能就形同虚设了。国内的空间商大部分可能并没有注意到这个问题,没有修改mysql的默认设置。

为什么要用全文索引呢?

一般的数据库搜索都是用的sql的like语句,like语句是不能利用索引的,每次查询都是从第一条遍历至最后一条,查询效率极其低下。一般数据超过10万或者在线人数过多,like查询都会导致数据库崩溃。这也就是为什么很多程序都只提供标题搜索的原因了,因为如果搜索内容,那就更慢了,几万数据就跑不动了。

mysql全文索引是专门为了解决模糊查询提供的,可以对整篇文章预先按照词进行索引,搜索效率高,能够支持百万级的数据检索。

如果您使用的是自己的服务器,请马上进行设置,不要浪费了这个功能。

如果您使用的是虚拟主机,请马上联系空间商修改配置。首先,mysql的这个默认值对于中文来说就是一个错误的设置,修改设置等于纠正了错误。其次,这个配置修改很简单,也就是几分钟的事情,而且搜索效率提高也降低了空间商数据库宕掉的几率。如果你把本篇文章发给空间商,我相信绝大部分都会愿意改的。

特别注意:无论做以上哪一项修改后都必须重启mysql服务使修改生效。
重启方法
方法一:在开始-运行输入:net stop mysql 回车,再在运行输入:net start mysql 回车
方法二:或者开始-控制面板-管理工具-服务,然后找到 mysql这一项点击右键,选择重启服务