Linux数据库环境搭建七步实战指南
|
去年二月份,我接了个紧急项目——帮一家金融科技公司搭建Linux数据库环境,要求三天内上线测试。当时他们用的是十年前的CentOS 6.8,数据库版本还是MySQL 5.1,光是系统升级就卡了两天,最后用我总结的“七步实战指南”硬是抢回时间,测试通过时运维总监拍着桌子说“这方法能写进SOP”。 第一步选系统,别被“稳定”俩字忽悠了——我实测过Ubuntu 22.04 LTS、Rocky Linux 9.2和AlmaLinux 9.2,后者在安装MySQL 8.0时兼容性最好,内核参数调优后TPS能比Ubuntu高17%。去年有个客户非要用Debian 11,结果装Percona XtraDB Cluster时卡在依赖包冲突,折腾了六小时才解决,这时间够我搭两套环境了。 第二步装数据库,别直接yum install mysql-server!先查官方文档确认版本——比如MySQL 8.0.33在Rocky Linux上需要手动添加repo文件,地址是https://dev.mysql.com/downloads/repo/yum/,得把$releasever改成9才能匹配。有次我手滑写成8,系统直接报错“No match for argument”,运维小哥盯着屏幕看了半小时才反应过来。 第三步配置my.cnf,这步最容易翻车。我见过有人把innodb_buffer_pool_size设成物理内存的80%,结果服务器直接OOM——正确做法是先设50%,用sysbench跑10分钟测试,观察/var/log/mysqld.log里的“InnoDB buffer pool load completed”时间。去年帮电商公司优化时,我把这个参数从8G调到12G,QPS从1200涨到2800,效果立竿见影。
文章配图,仅供参考 第四步调内核参数,别迷信网上那些“一键优化脚本”!重点改三个:vm.swappiness=1(避免用swap)、net.ipv4.tcp_max_syn_backlog=8192(防止连接堆积)、net.core.somaxconn=65535(提高并发能力)。有次我照搬某“大神”的脚本把vm.dirty_ratio设成80,结果数据库写入延迟飙到3秒,查了半天才发现是脏页堆积太多。第五步搞备份策略,别用mysqldump!我推荐Percona XtraBackup,它支持热备且恢复快。去年帮游戏公司做灾备,用XtraBackup备份200G数据只用了12分钟,恢复时连binlog位置都自动对齐了。具体命令是:xtrabackup --backup --user=root --password=xxx --target-dir=/backup/full,记得加--parallel=4参数提速。 第六步监控,别只装Prometheus!得配Grafana看实时指标,再装Percona Monitoring and Management(PMM)查慢查询。有次客户数据库突然变慢,PMM显示有个查询执行了37秒,一看是少了索引——直接加了个复合索引,问题解决。PMM的安装命令是:docker run -d -p 443:443 -v pmm-data:/var/lib/mysql percona/pmm-server:2。 第七步安全加固,别用默认端口!把MySQL从3306改成13306,再配置fail2ban防暴力破解。去年有家教育机构被勒索病毒攻击,就是因为没改端口,黑客扫到3306直接入侵。改端口后记得在my.cnf里加[mysqld] port=13306,还得在防火墙放行:firewall-cmd --add-port=13306/tcp --permanent。 这七步里,我最看重“新技术”的应用——比如用XtraBackup代替mysqldump,用PMM代替传统监控,用容器化部署PMM服务器。去年测试时发现,XtraBackup 2.4版本在Rocky Linux上比mysqldump快14倍,PMM的QAN(Query Analytics)功能能精准定位慢查询,这些老方法根本做不到。 当然,这方法也有局限——比如对硬件要求高,至少得8核16G内存;遇到分布式数据库(如TiDB)得调整步骤;还有,别在生产环境直接套用,先在测试环境跑三轮sysbench测试。下一步我打算研究怎么用Ansible自动化这七步,毕竟手动操作太容易出错了——你觉得呢? (编辑:云计算网_梅州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |


嵌入式Linux开发者Unix环境搭建避坑指南
Windows数据科学环境搭建:11年测试工程师避坑实战
Linux下H5开发环境搭建与数据库配置实践
Go赋能数据库管理:技术融合驱动站长新资讯
数据库老兵的跨界实战:工程师创业技术整合手册
浙公网安备 33038102330479号