第一章 ORACLE LINUX安装
第一章 ORACLE LINUX安装
一、查看官方安装要求
https://www.mysql.com/cn/support/supportedplatforms/database.html
二、准备一台虚拟机
准备硬盘空间>100G,2+2G/4G内存,物理机(CPU 2核,16G/32G内存)。
三、安装OS
Redhat linux as 6/7 ,oracle linux 6/7,centos 6/7等。
--硬盘分区
1)三个硬盘挂载
系统盘、mysql盘、backup盘
2)分区
系统盘50G:
swap盘:类型swap。大小:小于8G,按2倍处理;小于16G按实际大小处理; 大于16G最好设置成16G;
系统盘:类型ext4。大小:剩余大小。
mysql盘和backup盘待安装好系统后配置。
四、操作系统 环境配置
4.1 修改hosts文件
cat /etc/hosts
echo "192.168.26.135 itpuxdb" >> /etc/hosts //增加主机默认访问地址,本机IP地址和本机名称
cat /etc/hosts
4.2 修改英文环境变量
echo "export LANG=en_US" >> ~/.bash_profile
cat ~/.bash_profile
--修改开机界面
vi /etc/inittab //修改开机画面,移到最后,将
id:3:initdefault: //将默认的5改成3,改成图形化界面为文字启动
[root@itpux ~]# cat /etc/inittab # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. # # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target # # systemd uses 'targets' instead of runlevels. By default, there are two main targets: # multi-user.target: analogous to runlevel 3 # graphical.target: analogous to runlevel 5 # # To view current default target, run: # systemctl get-default # # To set a default target, run: # systemctl set-default TARGET.target # [root@itpux ~]# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target [root@itpux ~]# reboot
--修改开机等待时间
找到 /boot/grub2 下的 grub.cfg 找到并修改下面的代码: terminal_output console if [ x$feature_timeout_style = xy ] ; then set timeout_style=menu set timeout=5(建议修改成1,不要修改成0,修改完成后,重启即可看到效果)
[root@itpux grub2]# ll 总用量 36 -rw-r--r--. 1 root root 84 10月 14 04:06 device.map drwxr-xr-x. 2 root root 4096 10月 14 04:06 fonts -rw-r--r--. 1 root root 4257 10月 14 04:07 grub.cfg -rw-r--r--. 1 root root 1024 10月 14 04:07 grubenv drwxr-xr-x. 2 root root 12288 10月 14 04:06 i386-pc drwxr-xr-x. 2 root root 4096 10月 14 04:06 locale [root@itpux grub2]# vim grub.cfg [root@itpux grub2]# vim grub.cfg [root@itpux grub2]# pwd /boot/grub2 [root@itpux grub2]#

4.3 修改资源限制参数,修改最大用户进程数、打开文件、堆大小
vi /etc/security/limits.conf
* soft nproc 65535 * hard nproc 65535 * soft nofile 65535 * hard nofile 65535 * soft stack 65535 * nofile stack 65535
// 分为软参数和硬参数,*代表所有用户
--退出重新登陆
ulimit -a //检查修改是否生效,需要重新登陆才能显示
//修改进程数限制参数,默认为root用户,修改为所有用户
cat /etc/security/limits.d/90-nproc.conf
echo "* -nproc 65535" > /etc/security/limits.d/90-nproc.conf
cat /etc/security/limits.d/90-nproc.conf //查看修改是否有效
4.4 修改系统安全策略参数
1)SElinux
cat /etc/selinux/config
echo "SELINUX=disabled" > /etc/selinux/config
echo "SELINUXTYPE=targeted" >> /etc/selinux/config
cat /etc/selinux/config
setenforce 0 //设置立即生效
2)关防火墙iptables
--建议要开防火墙,设置比较合理的安全规则,这是linux系统 管理员的工作,但DBA也要会。
--数据库防火墙策略最好设置在硬件设备上,web服务器需要设置。
--可以到网上去找策略学习,提升安全性
service iptables stop
chkconfig --level 2345 iptables off
3)控制资源分配限制
cat /etc/pam.d/login
echo "session required pam_limits.so" >> /etc/pam.d/login
cat /etc/pam.d/login
4.5 关闭NUMA功能,修改linux内存架构
//关闭共有三种方法,1、BOSS内关闭。2、数据库内关闭。3、内核参数中关闭。
3)关闭CPU内核参数中关闭,如果CPU无内核,无法操作,直接跳过。
--安装内核
yum install numactl
yum install numactl-libs
yum install numactl-devel
numastat //查看分配情况
vi /etc/gru.conf
numa=off //最后内容中增加
numastat //查看是否修改成功
numactl --show //查看情况
reboot //重启服务器
4.6 修改硬盘的IO调度算法和IO优化
--IP调度算法(单次生效)
linux有四种调度算法:CFQ随机访问算法,此算法会mysql造成小IO延时错误。官方建议修改为deadlint算法,此IO对MYSQL相对稳定
ls /dev/sd*
cat /sys/block/sd //查看有哪些盘符
cat /sys/block/sd*/queue/scheduler //查看sd*盘符(需确定是哪 个盘符)的算法,核查MYSQL安装专盘
--sas盘/stat盘修改方式
echo 'deadline' > /sys/block/sd*/queue/scheduler //追加内容到末尾
--NOOP/盘修改方式
echo 'NOOP' > /sys/block/sd*/queue/scheduler //追加内容到末尾
--减少IO预读(单次生效)
echo '16' > /sys/block/sd*/queue/read_ahead_kb //默认为128,修改为16。不能批量修改,只能单个盘符操作
--增大队列(单次生效)
echo '512' > /sys/block/sd*/queue/nr_requests //默认为128,修改为512。
--开机后自动生效
vi /etc/rc.local
echo '512' > /sys/block/sdb/queue/nr_requests
echo '512' > /sys/block/sdc/queue/nr_requests
4.7 保留内存和交换页面设置
sysctl -p
vi /etc/sysctl.conf
vm.swappiness=10 //默认物理内存使用率达到60时,启用虚拟内存。建议修改成10。
--最小空闲内存
vm.min_free_kbytes=51200 //测试环境设置为50M,设置过大无法正常启动系统
vm.min_free_kbytes=512000 //生产环境设置为500M
sysctl -p
五、 配置yum源环境
mount /dev/cdrom /mnt
cd /etc/yum.repos.d
mkdir bk //创建文件夹
mv pub*repo bk/
--gpgcheck=0 //加密和签名问题
vi itpux.repo
[OEL6]
name=linux 7.5
baseurl=file:///mnt
gpgcheck=0
enabled=1
yum list
六、准备磁盘分区--最规范的分区方式
安装目录: /mysql/app/
数据目录:/mysql/database
日志目录:/mysql/log
备份目录:/mysql/backup
LVM
/dev/sdb 100g
/dev/sdc 110g
//创建PV
pvcreate /dev/sdb /dev/sdc
//创建PVS
vgcreate mysqlvg /dev/sdb
vgcreate bakvg /dev/sdc
//创建VGS
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
--vgs查看
vgdisplay
--lvs查看
lvdisplay
--格式化lv
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
--挂载生效
--查看挂载情况
df -h
--正式挂载
mount /dev/mysqlvg/mysqllv /mysql/app
mount /dev/mysqlvg/datalv /mysql/data
mount /dev/mysqlvg/loglv /mysql/log
mount /dev/bakvg/baklv /mysql/backup
--修改开机不检测、不备份分区,最后两个零的意思
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
---修改固定IP地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
IPADDR=192.168.26.150
NETMASK=255.255.255.0
GATEWAY=192.168.26.2
DNS1=192.168.26.2
DNS2=119.6.6.6
--重启网卡
service network restart
---修改时钟
查看当前系统时间 date
修改当前系统时间 date -s "2018-2-22 19:10:30
查看硬件时间 hwclock --show
修改硬件时间 hwclock --set --date "2018-10-13 21:58:30"
同步系统时间和硬件时间 hwclock --hctosys
保存时钟 clock -w
七、 关机
shutdown -h 0
浙公网安备 33010602011771号