下面在CentOS 7.3 Linux的计算机上部署Oracle 12c单实例数据库,存储使用ASM,磁盘6块,3块10G,3块50G,并且使用udev配置磁盘组的详细过程。
1.配置yum源 1)配置国内aliyun的源 wget http://mirrors.aliyun.com/repo/Centos-7.repo -O /etc/yum.repos.d/Centos-7.repo 注:也可以使用光盘制作本地yum源,以下语句是为了同时安装x86_64和i386的rpm包同时安装。 echo 'multilib_policy=all' >> /etc/yum.conf
2.安装系统需要的rpm包 yum install gcc gcc-c++ binutils compat-libcap1 compat-libstdc++-33 glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libxcb libX11 libXau libXi libXtst make net-tools nfs-utils smartmontools sysstat xterm unixODBC unixODBC-devel -y rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
3.创建用户和组(这个包括数据库的用户和组) groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54326 asmadmin groupadd -g 54327 asmdba groupadd -g 54328 asmoper useradd -u 54331 -g oinstall -G dba,oper,asmadmin,asmdba,asmoper oracle useradd -u 54332 -g oinstall -G dba,oper,asmadmin,asmdba,asmoper grid
4.修改系统对用户使用资源的限制 vi /etc/security/limits.conf ####oracle oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 20480 oracle soft memlock 3145728 oracle hard memlock 3145728 ####grid grid soft nofile 1024 grid hard nofile 65536 grid soft nproc 2047 grid hard nproc 16384 grid soft stack 10240 grid hard stack 20480
5.修改系统的参数 vim /etc/sysctl.conf fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 4294967295 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
6.使用Linux的udev创建asm的磁盘 1).使用fdisk对磁盘进行分区。 # fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0x98d1e6dd. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default response p Partition number (1-4, default 1): First sector (2048-20971519, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): Using default value 20971519 Partition 1 of type Linux and of size 10 GiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 2).编辑脚本,生成udev的rule文件。 vim genasmdisk.sh #!/bin/bash cat /dev/null > /etc/udev/rules.d/99-oracle-asmdevices.rules for i in a b c d e f; do echo "KERNEL==\"sd?1\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d /dev/\$name\", RESULT==\"`/usr/lib/udev/scsi_id -g -u -d /dev/sd${i}1`\", SYMLINK+=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules done 3).执行脚本,生成rule文件 # chmod +x genasmdisk.sh # ./genasmdisk.sh # cat /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB098d76e2-9145f9dd", SYMLINK+="asm-diska", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBf90ff69a-4814bddb", SYMLINK+="asm-diskb", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBd4b95383-60793e3e", SYMLINK+="asm-diskc", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB6a13abd4-deaab396", SYMLINK+="asm-diskd", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB82560102-e94a69eb", SYMLINK+="asm-diske", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VBadd50d7e-e225b445", SYMLINK+="asm-diskf", OWNER="grid", GROUP="asmadmin", MODE="0660" 4).测试规则,并检查磁盘的所属关系和权限 # partprobe /dev/sda1 # partprobe /dev/sdb1 # partprobe /dev/sdc1 # partprobe /dev/sdd1 # partprobe /dev/sde1 # partprobe /dev/sdf1 # udevadm test /block/sda/sda1 # ll /dev/asm-disk* lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diska -> sda1 lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diskb -> sdb1 lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diskc -> sdc1 lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diskd -> sdd1 lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diske -> sde1 lrwxrwxrwx. 1 root root 4 Sep 27 12:03 /dev/asm-diskf -> sdf1
7.创建安装目录和相关环境变量 # mkdir -p /u01/app/{grid,oracle} # chown -R oracle:oinstall /u01/app # chown -R grid:oinstall /u01/app/grid/ # su - grid $ unzip linuxx64_12201_grid_home.zip $ mv grid /u01/app/grid/12.2.0.1 编辑环境变量。 $ vim .bash_profile $ cat .bash_profile # .bash_profile export ORACLE_SID=+ASM export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=$ORACLE_BASE/12.2.0.1 PATH=$ORACLE_BASE/bin:$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin export TEMP=/tmp export TMP=/tmp export TMPDIR=/tmp export PATH umask 022
8.安装Grid,配置ASM $ cd /u01/app/grid/12.2.0.1/ $ ./gridSetup.sh 仅仅安装grid,配置ASM。以下是图示的过程。 选择安装方式。
修改ASM发现路径,按照前面udev定义的路径进行配置。
选择磁盘,定义磁盘组名称。
配置ASM管理用户密码。
配置EM(由于测试使用,没有配置)。
配置组权限,默认即可。
指定安装路径,默认。
创建Invertory,默认,注意目录创建、属主、权限等配置。
root脚本配置。
根据显示的问题,进行解决。 检查系统需求。
# find /u01/app/grid -name cvuqdisk* /u01/app/grid/12.2.0.1/cv/rpm/cvuqdisk-1.0.10-1.rpm /u01/app/grid/12.2.0.1/cv/remenv/cvuqdisk-1.0.10-1.rpm # # rpm -ivh /u01/app/grid/12.2.0.1/cv/rpm/cvuqdisk-1.0.10-1.rpm Preparing... ################################# [100%] Using default group oinstall to install package Updating / installing... 1:cvuqdisk-1.0.10-1 ################################# [100%] 然后重新检查。 安装信息汇总。
开始安装。
使用root用户执行的脚本。
返回成功就点击OK继续安装。同时完成组件安装。
直到完成界面出现。
以上完成了ASM安装配置,下面开始安装数据库软件以及数据库实例。
9.安装数据库软件 # su - oracle $ cd database $ ./runInstaller 此处出于测试目的,全部为空,点击下一步。
选择“仅安装数据库软件”。
选择“单实例”。
执行此脚本。
执行脚本直到完成界面的出现。
10.安装数据库实例 $ vim .bash_profile # .bash_profile export ORACLE_SID=ORCL export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1 PATH=$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin export PATH $ dbca
检查和使用数据库。
相关主题 |