mysql服务器硬件配置选择参考
这是在网上找的一个关于如何评估一个mysql服务器的硬件需求的文章,转载以备用
5 Minute DBA – Database Server Hardware Selection
So you need to purchase a new database server, and you really don’t know where to start..
Because their maybe different recommendations for different OS’s I am going to stick with Linux with these recommendations. I want to say right off the bat here… choosing the right hardware should probably not be a five minute task. I think you really need to spend time reviewing your application, it’s access patterns, the io capacity, etc. You just can’t do this in five minutes generally. But if your under the gun and asked me to spec something out today… here are some general guidelines.
As of March 10th 2009 here is what I would recommend ( This are going to change every few months potentially with new versions of MySQL & new hardware:
CPU:
Currently the scalability of Innodb beyond 8 cores is limited, in fact with the current ( unpatched ) releases you may see a performance regression with more then 8 cores. We wrote about this before. If you have the money go with the fastest CPU’s available. Avoid servers with lots of cores and a lower speeds.
Memory:
The more memory generally the better. Here I would shoot for an amount of memory that will allow 100% of your hot data to be in memory. If you do not know how much data is going to be hot, a good guess in my experience is 10-20% of the total database size , but that’s going to vary from application to application. If you can’t figure out the total host data, more is better or a 20% rule of thumb is better then nothing. Minimally plan for 2-4GB of memory to be allocated to the OS. Typically I want at least 4GB of memory for the OS, and if I have a really active database I want more ( 8GB+ ). When I say 4GB for the OS, this will also be used for the MySQL Per thread buffers/thread stack, etc. So if you have a 24GB Database and all 24GB is hot or going to be used frequently I may put in 32GB of memory in my system and allocate 24GB to innodb and reserve the other 8GB for the OS and other items.
Disk:
Disk is going to be a toughy in 5 minutes. You really have two concerns here, Disk capacity & IO Capacity (think io’s per second). Disk capacity is generally pretty easy, I need XGB of disk space… most people can estimate this no problems. Keep in mind with RAID you will lose some raw disk capacity ( I.e. 4 160GB drives in a RAID 10 setup will deliver ~320GB of usable space ). A 5 minute answer to IO capacity is a bit more of a challenge. One of the descisions yo will need to make if you can get by with internal disk or you need a SAN. Just the other day Peter Zwrote about when to choose a SAN… give it a read. Assuming your making a decision in 5 mintes I am going to make an assumption that your going to look for internal disk. Purchasing the correct SAN in my opinion requires a lot of thought. So Let assume you want to use internal disk. First If all of your data fits into memory, it lessons your disk requirements a bit but it will not eliminate disk IO ( your still going to read and write to disk, but your reads should be lessened ). I strongly urge that you keep the database and OS completely separate. So that’s 2 disks for the OS ( mirrored disks should be fine ). For the database I typically recommend RAID10 for the data ( RAID 5 maybe OK for database with fewer writes, I.e. data warehouses ) which means a minimum of 4 disks for your database. So thats 6 disks to start with. You can then scale up from there as you need more, without more analysis your going to be guessing here. In terms of the type of drives, SAS or SCSI in either 10K or 15K speeds are pretty standard. I would avoid SATA drives that are <10K rpm. Of course this can all change, because it really depends on your needs and requirements… as I said tough!
Disk Controller:
Cache on your disk controller is important and the more the better in most cases. Make sure your controller has a battery backup, otherwise its really useless.
Network Cards:
Purchase at least two network cards for your system, both full 1GBE. Typically I would bond these two nics together to give some redundancy. Also avoid dropping your new server into a 100Mb/s network as well.
A quick note on the OS… make sure you install a 64 bit OS!
mysql服务器硬件配置选择参考的更多相关文章
- CentOS+Nginx+PHP+MySQL详细配置(图解)
原文地址: http://www.jb51.net/article/26597.htm CentOS+Nginx+PHP+MySQL详细配置(带有图解),需要的朋友可以参考下. 一.安装MySQL ...
- Linux配置mysql (centos配置java环境 mysql配置篇 总结四)
♣安装的几种方法和比较 ♣配置yum源 ♣安装mysql ♣启动mysql ♣修改密码 ♣导入.sql文件 ♣缓存设置 ♣允许远程登录(navicat) ♣配置编码为utf8 1.关于Linux系统 ...
- 转载mysql数据库配置优化
网上有很多的文章教怎么配置MySQL服务器,但考虑到服务器硬件配置的不同,具体应用的差别,那些文章的做法只能作为初步设置参考,我们需要根据自己的情况进行配置优化,好的做法是MySQL服务器稳定运行了一 ...
- 解读mysql主从配置及其原理分析(Master-Slave)
在windows下配置的,后面会在Linux下配置进行测试,需要配置mysql数据库同步的朋友可以参考下. 1.在主数据库服务器为从服务器添加一个拥有权限访问主库的用户:GRANT REPLICATI ...
- Linux学习—mysql安装配置及远程连接
安装前准备 1.检查是否已经安装过mysql 执行命令 [root@localhost /]# rpm -qa | grep mysql 从执行结果,可以看出我们已经安装了mysql-libs-5. ...
- MAC MySQL安装配置
1. 下载 下载地址:https://dev.mysql.com/downloads/mysql/ 注意选择对应的版本,M系列芯片对应ARM 2. 安装 参考官网教程, 点击地址查看, 一直点击继续即 ...
- mysql主从配置
引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...
- mysql+ssh 配置(转载)
Mysql+ssh配置 一.Linux平台间mysql+ssh配置 本机地址为:192.168.189.133 mysql服务器地址为:192.168.189.139 linux命令行下使用ssh命令 ...
- Mysql主从配置,实现读写分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...
随机推荐
- @SafeVarargs注解
被@SafeVarargs注解标注的方法必须是由static或者final修饰的方法. 使用泛型的变长参数方法产生编译器警告的示例: public static <T> T useVara ...
- Javac的命令
关于命令,还可以查看<Java 7程序设计>一书后面的附录A As per javac source docs, there are 4 kinds of options: standar ...
- python跳出多重循环
# -*- coding=utf-8 -*- """ 如何结束多重循环,在单层循环中,可以用break跳出循环,那两层,三层呢? """ # ...
- WPF中Window的ShowInTaskbar、Owner和Topmost属性
1. ShowInTaskbar:设置窗口是否在任务栏上有一席之位,默认为true, 当在父窗口上新开一个子窗口时,任务栏上就会出现两个窗口,所以当要实现 不管开启多少个窗口,在任务栏上都只显示一个窗 ...
- 在spring中常被忽视的注解 @Primary
在spring 中使用注解,常使用@Autowired, 默认是根据类型Type来自动注入的. 但有些特殊情况,对同一个接口,可能会有几种不同的实现类,而默认只会采取其中一种的情况下 @Primary ...
- hadoop学习笔记(一):hadoop生态系统及简介
一.hadoop1.x的生态系统 HBase:实时分布式数据库 相当于关系型数据库,数据放在文件中,文件就放在HDFS中.因此HBase是基于HDFS的关系型数据库.实时性:延迟非常低,实时性高. 举 ...
- Mybatis初始
1.Mybatis 的作用 完成基本的sql语句 和 存储过程 高级的对象关系映射(ORM) 框架 封装了几乎所有的 JDBC 代码 参数的手工设置 结果集的遍历 2.Mybatis 框架的主体构成 ...
- [javaSE] IO流(装饰设计模式)
装饰设计模式:当想要对已有的对象进行功能增强时,可以自定义类将已有的对象传入,并提供加强功能,自定义的该类称为装饰类 典型的: Reader--FileReader --BufferedReader ...
- 关于JAVA是值传递还是引用传递的问题
1.概念 值传递:方法调用时,实际传入的是它的副本,在方法中对值的修改,不影响调用者的值. 引用传递:方法调用时,实际传入的是参数的实际内存地址,调用者和调用方法所操作的参数都指向同一内存地址,所以方 ...
- 撩课-Python-每天5道面试题-第2天
一. 简述编程过程中, 注释的作用? (1) 方便开发人员自己理清楚代码思路 因为开发人员在拿到一个需求时, 首先应该思考的是如何将需求问题, 分解成具体的实施步骤; 第一步干啥, 第二步干啥, 第三 ...