小编alf*_*ish的帖子

mysql innodb_buffer_pool_size 应该有多大?

我有一个繁忙的数据库,只有 InnoDB 表,大小约为 5GB。数据库在使用 SSD 磁盘的 Debian 服务器上运行,我设置了最大连接数 = 800,这有时会饱和并使服务器停止运行。平均每秒查询约 2.5K。所以我需要优化内存使用,为最大可能的连接腾出空间。

我已经看到建议 innodb_buffer_pool_size 应该高达总内存的 %80。另一方面,我从调整引物脚本中收到此警告:

Max Memory Ever Allocated : 91.97 G
Configured Max Per-thread Buffers : 72.02 G
Configured Max Global Buffers : 19.86 G
Configured Max Memory Limit : 91.88 G
Physical Memory : 94.58 G
Run Code Online (Sandbox Code Playgroud)

这是我当前的 innodb 变量:

| innodb_adaptive_flushing                          | ON                                                                                                                     |
| innodb_adaptive_hash_index                        | ON                                                                                                                     |
| innodb_additional_mem_pool_size                   | 20971520                                                                                                               |
| innodb_autoextend_increment                       | 8                                                                                                                      |
| innodb_autoinc_lock_mode                          | 1                                                                                                                      |
| innodb_buffer_pool_instances                      | 1 …
Run Code Online (Sandbox Code Playgroud)

mysql innodb database-recommendation

217
推荐指数
5
解决办法
37万
查看次数

学习 MySQL 的最佳书籍

我想阅读一本关于 MySQL 数据库的书,重点是 Linux 服务器上的性能和优化。我很欣赏你的建议。

mysql

6
推荐指数
1
解决办法
2万
查看次数

用户没有设置密码

我在运行MySQLTuner.pl时看到这些:

-------- Security Recommendations  -------------------------------------------
[!!] User '@debian' has no password set.
[!!] User '@localhost' has no password set.
------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
  • 是安全漏洞吗?
  • 如何解决?

谢谢

mysql security

5
推荐指数
1
解决办法
5570
查看次数

innodb_buffer_pool_size 没有改变

我使用 MySQL 5.5.23-1~dotdeb.0 (Debian),这里是 my.cnf 的相关部分

default-storage-engine = innodb
innodb_buffer_pool_size = 3G
innodb_log_file_size = 256M
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 4M
innodb_additional_mem_pool_size = 20M
Run Code Online (Sandbox Code Playgroud)

问题是,无论我为 innodb_buffer_pool_size 选择什么值(我也尝试过 4G 和 8G 以及 8000M)。我得到以下内容mysql> SHOW global VARIABLES;

| innodb_buffer_pool_size | 134217728  
Run Code Online (Sandbox Code Playgroud)

调优入门脚本的结果:

INNODB STATUS
Current InnoDB index space = 621 M
Current InnoDB data space = 3.82 G
Current InnoDB buffer pool free = 0 %
Current innodb_buffer_pool_size = 128 M
Depending …
Run Code Online (Sandbox Code Playgroud)

mysql innodb my.cnf mysql-5.5

4
推荐指数
1
解决办法
1万
查看次数