数据库参数对mysql性能的影响
2017-04-21 14:59
393 查看
参数设置
全局参数:set globa 参数名=参数值
set @@globa.参数名:=参数值
会话参数:
set [session] 参数名=参数值
set @@session.参数名:=参数值
内存配置相关参数
注:首先需要确定可以使用的内存上限设置排序缓冲区的大小
命令:
sort_buffer_size
意解:当mysql需要排序时,会立即分配此配置设置的内存大小,不管能不能用这么多。例如:当有参数设置
100M时,有
100个排序,那么就会占用将近
10G的内存,所以设置此参数,一定要小心。
设置连接缓冲区的大小
命令:
join_buffer_size
意解:如果一个查询语句中,有多个连接,那么就会为每一个连接分配此配置设置的内存大小。
设置索引缓冲区的大小
命令:
read_rnd_buffer_size
意解:如果查询需要时,才会配置此内存,并且分配需要的内存大小,而不是全部内存。
设置Innodb使用的缓存池大小【重要】
命令:
Innodb_buffer_pool_size
意解:这个设置直接影响到效率因素,如果mysql全部的表都使用的是
Innodb表,我们可以用下列方法计算我们需要设置多少内存:总内存
-(每个线程所需要的内存
*连接数)
-系统其他程序需要使用的内存。
设置Myisam使用的缓存池大小
注:
Myisam表只会缓存索引。
命令:
key_buffer_size
意解:这里我们需要注意的是,虽然mysql全部的表都使用的是
Innodb表,但是系统表仍然是
Myisam表,所以我们还是需要设置此参数。我们可以用以下方式查看
Myisam索引使用的内存大小。
mysql> select sum(index_length) from information_schema.tables where engine = 'myisam';
I/O配置相关参数
设置Innodb单个事务日志文件的大小命令:
Innodb_log_file_size
意解:当事务提交时,不会直接写到数据库中,而是先写到事务日志文件中,然后再向数据库中持久化。
设置Innodb事务日志的个数【一般不用管】
命令:
Innodb_log_files_in_group
意解:因为当向日志文件中记录时,一个文件写满了,自动会创建写一个文件。
设置Innodb事务日志缓冲区的大小
命令:
Innodb_log_buffer_size
意解: 当事务提交时,不会直接写到日志文件中,而是先写到缓冲区。一般不用设置的很大(32M~128M),因为每个一秒,就会向日志文件中刷新。
设置Innodb事务日志刷新频繁程度
命令:
Innodb_flush_log_at_trx_commit
-
0:每秒进行一次
log写入
cache,并
flush log到磁盘,如果进程挂了,会丢失一秒数据。
-
1【默认】:在每次事务提交执行
log写入
cache,并
flush log到磁盘,同时也是性能最差。
-
2【建议】:每次事务提交,执行
log数据写入到
cache,每秒执行一次
flush log到磁盘,如果进程挂了,不会丢失数据,除非服务器宕机 时,才会丢失一秒数据。
设置Innodb的表空间类型
命令:
Innodb_file_per_table
-
1【默认】:独立表空间
-
0:系统表空间
安全配置相关参数
设置指定自动清理binlog的天数命令:
expire_logs_days
意解: 默认为
0,就是不清理的意思。也可以写天数,如
7,就是只保存
7天的意思。
禁止非super权限的用户写权限
命令:
read_only
设置所使用的SQL模式
命令:
sql_mode
相关文章推荐
- 影响MySQL性能的五大配置参数
- 对MySQL性能影响关系紧密的五大配置参数
- MySQL 数据库性能优化之缓存参数优化
- 影响MySQL性能的五大配置参数
- 影响MySQL性能的五大配置参数
- 影响MySQL性能的 5大配置参数
- MySQL 数据库性能优化之缓存参数优化
- MySQL 数据库性能优化之(一)缓存参数优化
- 影响MySQL性能的五大配置参数
- (转)MySQL 数据库性能优化之缓存参数优化
- 影响MySQL性能的五大配置参数
- 对MySQL性能影响关系紧密的五大配置参数
- MySQL 数据库性能优化之缓存参数优化(这是 MySQL数据库性能优化专题 系列的第一篇文章)
- 对MySQL性能影响关系紧密的五大配置参数
- 影响MySQL之IO性能最重要的几个参数
- 对MySQL性能影响关系紧密的五大配置参数
- MySQL 数据库性能优化之缓存参数优化
- 对MySQL性能影响关系紧密的五大配置参数
- MySQL 数据库性能优化之缓存参数优化
- MySQL 数据库性能优化之缓存参数优化