mysql - 性能最佳的 MySQL 服务器配置?

标签 mysql performance

我们有一个大小为 150 GB 的数据库,使用 MyIsam 表运行 MySQL 5.0.45,其中有超过 5 GB 的大表和 2GB 的索引。 服务器配置是: 8GB 双核 3.2GHz – 启用超线程 单一突袭 5 - SCSI 1GB网卡 64位操作系统

这是我们的 my.cnf 文件:

[client]
port            = 3306
socket          = /var/lib/mysql/mysql.sock

[mysqld]
log=/var/log/mysqld.log
log-slow-queries=/var/log/mysqld-slow.log
set-variable=long_query_time=2
set-variable=sql_mode=ANSI_QUOTES
port            = 3306
socket          = /var/lib/mysql/mysql.sock
skip-locking
max_connections = 100
key_buffer = 384M
max_allowed_packet = 16M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache = 8
query_cache_size = 32M
thread_concurrency = 3


[isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M



[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

非常感谢提高查询性能的建议(80% 读取/20% 写入) 谢谢,

大卫

最佳答案

这里没有足够的内容来很好地回答这个问题。这取决于应用程序——哪些表/索引很热(以及有多热)以及查询是否可以有效地使用索引,索引是否存在于内存中,操作系统是否能够缓存代表数据的页面,等等。

MySQL 手册有很多提示,但如果您想要一个适用于很多人的快捷方式,请执行 SHOW STATUS 和 SHOW VARIABLES 并查看各种缓存的命中率,并相应地扩展缓存大小。但并非所有缓存命中都是相同的...

数据库管理是一个复杂的领域,通常不是一个可以解决的问题。

关于mysql - 性能最佳的 MySQL 服务器配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3702687/

相关文章:

mysql - 从 MySQL 移动到 SQL Server 后显示的错误

php - Redbean O/RM 将 "date"存储为 varchar(255)?

php - 存储过程中 CONCAT AND LIKE 的 MySQL 语法问题

jquery - 如何仅在用户滚动到图像时加载图像

c++ - 在 C/C++ 中快速显示波形

java - 调用 Thread.isInterrupted() 的性能成本是多少?

php - XML 到 MySql 数据库 (SimpleXML)

asp.net - 我在哪里可以访问生产服务器上的 ASP.NET 配置?

performance - kafka客户端可以扮演消费者和生产者的多重角色吗

java - 这些说法有什么区别吗?