在一台虚拟机上搭建三个mysql5.7.30实例。
准备工作
初始化环境配置
1)修改sysctl.conf
echo "vm.swappiness=1" >> /etc/sysctl.conf # 设置内核少用交换 https://cloud.tencent.com/developer/article/1503835
sysctl -p # sysctl 命令被用于在内核运行时动态地修改内核的运行参数 -p 载入sysctl配置文件 如-p后未指定路径,则载入 /etc/sysctl.conf
2)配置limits.conf
echo '* soft nofile 65535' >> /etc/security/limits.conf # 任何用户可以打开的最大的文件描述符数量https://cloud.tencent.com/developer/article/1403636
echo '* hard nofile 65535' >> /etc/security/limits.conf
3)配置ulimit
echo "ulimit -n 65535" >> /etc/rc.local # rc.local脚本是在系统初始化级别脚本运行之后再执行https://www.huaweicloud.com/articles/c1d9caaa0619eabf224e98c6a0aefb7a.html
ulimit -n 65535
4)配置IO调度
echo deadline > /sys/block/sda/queue/scheduler # deadline只分读写两个队列,对于磁盘I/O,Linux提供了cfq, deadline和noop三种调度策略 https://www.cnblogs.com/bamanzi/p/linux-disk-io-scheduler.html
grubby --update-kernel=ALL --args="elevator=deadline"
5)关闭NUMA
sed -i '/^numa/c numa=off' /etc/default/grub
grub2-mkconfig -o /etc/grub2.cfg >/dev/null
6)关闭SELinux
vi /etc/selinux/config # 修改内容为SELINUX=disabled
安装
1.安装包下载
- wget 直接下载
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz /root
- 本地下载的包,rz -be 上传到Linux 主机上
2.创建用户和目录
(1)建立MySQL管理用户"mysql"
useradd -g mysql -u 2000 -s /sbin/nologin -d /usr/local/mysql -MN mysql