MySQL服务器是做什么的?企业数据库选型、配置和稳定运行避坑指南
本文未附完整的测试环境、工具版本与原始结果,内容作为故障排查或选型资料参考,不标记为实测报告。
公司的业务越来越多的时候,系统的响应速度变慢了,订单查询也变得很卡顿,报表也无法正常运行出来,很多老板的第一反应就是“是不是软件出了问题”。但是经过实际排查之后发现,问题大多是因为数据库承受不了压力造成的,在于把MySQL数据库放到合适的位置上。对正在使用ERP、进销存、电商平台、会员系统、财务系统或者MES和小程序后台的企业而言,首先要弄明白“MySQL服务器是用来干什么的”,这样可以避免很多不必要的采购浪费。
简而言之,MySQL服务器就是用来运行MySQL数据库的服务器,它要做的工作就是存储、查询、写入以及管理企业的核心业务数据。例如客户资料、订单记录、库存数量、财务流水、生产数据、用户账号等等,很多系统的表面看是软件界面,实际上经常在后台运行的就是数据库。
那么为什么这个公司要单独考虑MySQL服务器呢?由于数据库与一般的办公文件不同,对于稳定性和磁盘读写速度、内存大小以及数据安全性都有更高的要求。将数据库随意放置于一台普通的计算机或者配置较低的服务器之上,在初期阶段或许可以正常使用,但是随着用户数量的增长、数据量增大以及同时访问请求增多之后,就会出现查询速度减慢、被锁定、系统崩溃甚至硬盘损坏后难以修复等现象。
选择MySQL服务器的时候不要只看价格,要先考虑业务场景:
第一、看CPU核心数。
如果只用到几十人的进销存、OA、内管等系统的话可以选主流多核CPU;但是如果是电商、SaaS平台、报表系统或者高并发接口的应用场景下,则应该选用频率更高、核心数更多的处理器来防止在高峰时段出现数据库响应迟缓的情况。
第二、看内存大小。
MySQL对内存缓存的要求很高。小规模业务可以使用32G或者64G开始,对于中大型数据库、报表查询频繁、数据表大的情况,则需要考虑128G以上。内存并不是越大越好,但是太小就会影响到业务运行速度。
第三、查看硬盘种类以及RAID模式。
数据库服务器最好不要使用普通的机械硬盘。一般采用的是企业级固态硬盘或者NVMe固态硬盘来提高读写速度,并且建议使用RAID1、RAID10这样的方案以保证性能与安全性。很多便宜的服务器没有考虑硬盘等级以及RAID卡的问题,在以后出现硬盘报警的时候,修复的成本会大于购买之初节省下来的钱。
第四、电源冗余以及远程管理功能。
企业服务器应该首先选择有双电源、热插拔硬盘和远程管理模块等功能的产品。特别是放置在机房、弱电间或者托管机柜里的设备,可以实现远程开关机、查看硬件状况以及故障报警等功能,对于IT运维来说非常实用。
第五个就是查看备份以及安全措施了。
MySQL服务器安装完数据库之后,并没有结束,还需要进行定时备份、异地备份、权限管理、日志保存、系统补丁更新和数据库版本规划等工作。涉及到等保、审计或者重要的业务数据的企业要与防火墙、堡垒机、备份一体机或者国产化的数据库方案一起做计划。
即使预算有限也可以做到稳定,关键是要把钱用到最重要的地方。对于数据库负载不是很高的一些中小型企业来说,可以考虑选择性价比比较好的品牌服务器或者国产服务器,并且要注重对内存、企业级硬盘、RAID以及保修等项目的配置;而当业务量增大之后,则需要留出足够的内存插槽、硬盘位数、网络接口以及扩展空间来防止一年以后再次进行整体升级。
采购的时候还应注意一些坑:不能只看CPU型号来比较价格,要确定硬盘是企业级还是消费级、内存能否扩展、RAID卡有没有缓存、电源是否有冗余、保修期多长、有没有包含上门安装服务、操作系统以及MySQL有没有人进行过部署与优化。很多企业在购买了服务器之后,在于系统的安装、RAID的配置、数据库的迁移以及数据备份等方面遇到了困难,所以在采购之前一定要把这些问题问清楚。
如果要选择MySQL服务器的话,可以先理清楚以下几点:有多少人用它、运行哪些软件、数据量有多大、有没有高峰期并发的情况、是本地部署还是国产化替代、预算范围是多少以及售后服务的要求是什么。把以上这些情况整理出来之后就可以更加准确地去匹配配置清单、品牌方案、报价方向、安装调试以及后期扩容计划了。