操作系统环境配置(生产环境最优的配置)
4.1 hosts
echo "192.168.1.51 db1" >>/etc/hosts
cat /etc/hosts
4.2 配置英文环境
echo "export LANG=en_US " >> ~/.bash_profile
cat ~/.bash_profile
4.3 修改资源参数
nproc,操作系统对用户创建进程数的资源限制
nofile,每个进程能打开文件的次数(文件描述符),mysql 是一个进程对多个线程
stack,变量存放的大小(堆大小)
vi /etc/security/limits.conf
4.4 设置系统安全策略
1) selinux
vi /etc/selinux/config
SELINUX = disabled
setenforce 0
2)关闭防火墙
---公网,建议要开防火墙,设置比较合理的安全规划,限制外网访问,这是Linux系统管理的工作,但DBA也要会。6.x: iptales ,7.x: firewalld
service itptables stop
chkconfig --level 2345 itptables off
3)控制资源分配限制
echo "session required pam_limits.so" >> /etc/pam.d/login
cat /etc/pam.d/login
4.5 关闭NUMA功能
查看状态
numastat
vi /etc/grub.conf
numa=off
numstat
numactl --show
numactl --hardware
reboot --晚点一起重启
4.6 IO调度算法与IO优化
IO调度算法
cat /sys/block/sd/queue/scheduler
--sas/stat
echo 'deadline' > /sys/block/sd/queue/scheduler
--ssd
echo 'NOOP' > /sys/block/sd*/queue/scheduler
--减少预读
echo '16' > /sys/block/sdb/queue/read_ahead_kb
echo '16' > /sys/block/sdc/queue/read_ahead_kb
--增大队列
echo '512' > /sys/block/sdb/queue/nr_requests
echo '512' > /sys/block/sdc/queue/nr_requests
--开启后生效
vi /etc/rc.local
echo '512' > /sys/block/sdb/queue/nr_requests
echo '512' > /sys/block/sdc/queue/nr_requests
echo '16' > /sys/block/sdb/queue/read_ahead_kb
echo '16' > /sys/block/sdc/queue/read_ahead_kb
--4.7 虚拟内存与保留内存
vi /etc/sysctl.conf
vm.swappiness=10 --当系统剩下物理内存的10%时,才使用内存交换页
vm.min_free_kbytes=5120 ---测试环境
#vm.min_free_kbytes=512000 --生产环境
sysctl -p
--5 yum源环境配置
mount /dev/sr0 /mnt
cd /etc/yum.repos.d
mkdir bk
mv *.repo bak
vi /etc/yum.repos.d/media.repo
[OEL6]
name=linux 6.9
baseurl=file:///mnt
gpgcheck=0
enabled=1
yum list
--6.准备磁盘与分区 ---最规范的
安装目录:/mysql/app/mysql
数据目录:/mysql/data
日志目录:/mysql/log
备份目录:/mysql/backup
LVM
/dev/sdb 100g
/dev/sdc 110g
#数据库建议做raid10
#本地存储方案:
#物理盘尽量做raid10,再创建分区,定时通过FTP
#或同步工具到外置存储。
pvcreate /dev/sdb /dev/sdc
vgcreate mysqlvg /dev/sdb
vgcreate bakvg /dev/sdc
lvcreate -n mysqllv -L 30G mysqlvg
lvcreate -n datalv -L 30G mysqlvg
lvcreate -n loglv -L 30G mysqlvg
lvcreate -n baklv -L 50G bakvg
pvs
vgs vgdisplay
lvs lvdisplay
mkfs.ext4 /dev/mysqlvg/mysqllv
mkfs.ext4 /dev/mysqlvg/datalv
mkfs.ext4 /dev/mysqlvg/loglv
mkfs.ext4 /dev/bakvg/baklv
mkdir -p /mysql/app
mkdir -p /mysql/log
mkdir -p /mysql/data
mkdir -p /mysql/backup
mount /dev/mysqlvg/mysqllv /mysql/app
mount /dev/mysqlvg/datalv /mysql/data
mount /dev/mysqlvg/loglv /mysql/log
mount /dev/bakvg/baklv /mysql/backup
df -h
vi /etc/fstab
/dev/mysqlvg/mysqllv /mysql/app ext4 defaults 0 0
/dev/mysqlvg/datalv /mysql/data ext4 defaults 0 0
/dev/mysqlvg/loglv /mysql/log ext4 defaults 0 0
/dev/bakvg/baklv /mysql/backup ext4 defaults 0 0
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。