MySQL 优化设置步骤

如果使用的是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这一项点击右键,选择重启服务

(0)

相关推荐

  • MySql的优化步骤介绍(推荐)

    MySql优化的一般步骤: 1.通过show status 命令了解各种sql的执行效率 SHOW STATUS提供msyql服务器的状态信息 一般情况下,我们只需要了解以"Com"开头的指令 show session status like 'Com%':显示当前的连接的统计结果 show global status like 'Com%' :显示自数据库上次启动至今的统计结果 注:默认是session级别的 其中Com_XXX表示XXX语句所执行的次数. 重点注意:Com_sele

  • MySQL 优化设置步骤

    如果使用的是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

  • IDEA2021常用优化设置步骤图解

    IDEA2021常用优化设置图文步骤: 1.显示工具条 效果 2.代码提示忽略大小写 默认状态下是勾选了的,去掉勾选. 3.自动导包 4.字体设置 5.自动添加名和创建时间 文本: /**  * @author  new wei  * @date  ${DATE} ${TIME}  */ 6.方法分割符 7.启动软件可选择打开的项目 默认是勾选的,去除勾选. 到此这篇关于IDEA2021常用优化设置的文章就介绍到这了,更多相关IDEA2021优化设置内容请搜索我们以前的文章或继续浏览下面的相关文

  • mysql myisam 优化设置设置

    myisam_max_[extra]_sort_file_size足够大 delay_key_write减少io,提高写入性能 bulk_insert_buffer_size concurrent_insert 设置为2 read_rnd_buffer_size random scan 使用 read_buffer_size 顺序扫描表使用 key cache 的三种方式 key cache 预加载 SET GLOBAL hot_cache.key_buffer_size=16m SET BLO

  • Mysql允许外网访问设置步骤

    1.打开mysql.exe(MySQL Command Line Client),输入密码 2.输入:use mysql; 3.查询host输入: select user,host from user; 4.创建host(如果有"%"这个host值,则跳过这一步) 如果没有"%"这个host值,就执行下面这两句: mysql> update user set host='%' where user='root'; mysql> flush privile

  • MySQL内存及虚拟内存优化设置参数

    mysql 优化调试命令   1.mysqld --verbose --help 这个命令生成所有mysqld选项和可配置变量的列表 2.通过连接它并执行这个命令,可以看到实际上使用的变量的值: mysql> SHOW VARIABLES; 还可以通过下面的语句看到运行服务器的统计和状态指标: mysql>SHOW STATUS: 使用mysqladmin还可以获得系统变量和状态信息: shell> mysqladmin variables shell> mysqladmin ex

  • mysql Key_buffer_size参数的优化设置

    先来看看document对这个参数的解释: 缓存myisam表的索引块大小,可以被所有进程所共享.当设置key_buffer_size,操作系统不会马上分配key_buffer_size设置的值,而是在需要的时候,再分配的.可以设置多个key_buffer,当设置不是默认key_buffer为0时,mysql会把缓存的索引块移到默认的key_buffer中去并删除不再使用的索引块.Myisam表中只能cache索引块,不能cache数据块. 原本描述: Index blocks for MyIS

  • MySQL MyISAM 优化设置点滴

    最近在配置mysql服务器需要用到的一些设置,经过测试发现比较不错的配置方案,亮点在最后啊 先说一点问题:   Mysql中的InnoDB和MyISAM是在使用MySQL中最常用的两个表类型,各有优缺点.两种类型最主要的差别就是 InnoDB 支持事务处理与外键和行级锁.而MyISAM不支持.所以Myisam往往就容易被人认为只适合在小项目中使用.但是从数据库需求角度讲,要求99.9%的稳定性,方便的扩展性和高可用性来说的话,那MyISAM绝对应该是首选.MyISAM类型的表强调的是性能,其执行

  • MySQL优化教程之慢查询日志实践

    一.慢查询日志概念 对于SQL和索引的优化问题,我们会使用explain去分析SQL语句.但是真正的企业级项目有成千上万条SQL,我们不可能从头开始一条一条explain去分析.我们从什么地方可以获取那些运行时间长,耗性能的SQL?? 我们可以打开慢查询日志: 根据具体的业务和并发量来预估一个时间上限(20ms.100ms),设置好后开启业务,压测后打开慢查询日志,就会看到超过执行时间的SQL,然后使用explain分析这些耗时的SQL语句 步骤如下: 打开慢查询日志开关slow_query_l

  • mysql 优化日记

    同时在线访问量继续增大 对于1G内存的服务器明显感觉到吃力严重时甚至每天都会死机 或者时不时的服务器卡一下 这个问题曾经困扰了我半个多月MySQL使用是很具伸缩性的算法,因此你通常能用很少的内存运行或给MySQL更多的被存以得到更好的性能. 安装好mysql后,配制文件应该在/usr/local/mysql/share/mysql目录中,配制文件有几个,有my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf,不同的流量的网站和不同配制的服务器环境

  • PHP数据库编程之MySQL优化策略概述

    本文简单讲述了PHP数据库编程之MySQL优化策略.分享给大家供大家参考,具体如下: 前些天看到一篇文章说到PHP的瓶颈很多情况下不在PHP自身,而在于数据库.我们都知道,PHP开发中,数据的增删改查是核心.为了提升PHP的运行效率,程序员不光需要写出逻辑清晰,效率很高的代码,还要能对query语句进行优化.虽然我们对数据库的读取写入速度上却是无能为力,但在一些数据库类扩展像memcache.mongodb.redis这样的数据存储服务器的帮助下,PHP也能达到更快的存取速度,所以了解学习这些扩

随机推荐