本帖最后由 stonebox 于 2015-12-22 11:09 编辑
1、 创建依赖包列表文件,并安装依赖包 [root@localhost ~]# cat ora_software.txt binutils* compat-libstdc++* compat-libcap1* elfutils-libelf* elfutils-libelf-devel* elfutils-libelf-devel-static* gcc* gcc-c++* glibc* glibc-common* glibc-devel* glibc-headers* kernel-headers* libaio* libaio* libgcc* libgomp* libstdc++* libstdc++-devel* make* pdksh* sysstat* unixODBC* unixODBC-devel*
挂载光驱 [root@oracletest ~]# mount /dev/cdrom/media/ mount: block device /dev/sr0 iswrite-protected, mounting read-only
创建本地YUM的脚本 [root@precise ~]# cat createlocalyum.sh #!/bin/bash cd /etc/yum.repos.d/ mkdir bak mv *.repo bak/ cat << EOF > local.repo [Local] baseurl=file:///media/Server gpgcheck=0 enabled=1 EOF yum clean all yum makecache
创建本地YUM并安装依赖包 [root@oracletest ~]# sh createlocalyum.sh [root@localhost ~]#cat ora_software.txt |xargs yum install -y
2、 创建用户、组及目录脚本,并运行脚本 [root@localhost ~]# cat ora_user_dir.sh #!/bin/bash groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle useradd -g oinstall -G dba grid echo "123456" | passwd --stdinoracle echo "123456" | passwd --stdin grid mkdir -p/u01/app/grid mkdir -p/u01/app/grid/product/11.2.0/gird chown -Rgrid:oinstall /u01 mkdir -p /u01/app/oracle chownoracle:oinstall /u01/app/oracle chmod -R 775 /u01
[root@localhost ~]#sh ora_user_dir.sh
3、 创建环境变量列表文件,并增加环境变量到配置文件 [root@localhost ~]# cat ora_env.txt # Oracle Settings ORACLE_BASE=/u01/app/oracle; exportORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1;export ORACLE_HOME ORACLE_SID=stone;export ORACLE_SID NLS_LANG=american_america.zhs16gbk;exportNLS_LANG PATH=$ORACLE_HOME/bin:$PATH; export PATH
[root@localhost ~]#cat ora_env.txt >>/home/oracle/.bash_profile
[root@localhost ~]# cat gi_env.txt #Grid Settings ORACLE_BASE=/u01/app/grid ORACLE_HOME=$ORACLE_BASE/product/11.2.0/grid ORACLE_SID=+ASM PATH=$ORACLE_HOME/bin:$PATH export ORACLE_BASEORACLE_HOME ORACLE_SID PATH
[root@localhost ~]#cat gi_env.txt >>/home/grid/.bash_profile
切换到oracle用户,确认环境变量已生效 [root@ localhost ~]# su - oracle [oracle@ localhost ~]$ env | grep ORACLE ORACLE_SID=stone ORACLE_BASE=/u01/app/oracle ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
切换到grid用户,确认环境变量已生效 [root@oracletest1 ~]# su - grid [grid@oracletest1 ~]$ env | grep ORACLE ORACLE_SID=+ASM ORACLE_BASE=/u01/app/grid ORACLE_HOME=/u01/app/grid/product/11.2.0/grid
4、 使用root用户创建裸设备 先分别为磁盘创建分区 [root@oracletest1 ~]# fdisk /dev/sdb Device contains neither a valid DOSpartition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with diskidentifier 0xaa0a029a. Changes will remain in memory only, untilyou decide to write them. After that, of course, the previous contentwon't be recoverable.
Warning: invalid flag 0x0000 of partitiontable 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated.It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u').
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-261, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G}(1-261, default 261): Using default value 261
Command (m for help): p
Disk /dev/sdb: 2147 MB, 2147483648 bytes 255 heads, 63 sectors/track, 261 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0xaa0a029a
Device Boot Start End Blocks Id System /dev/sdb1 1 261 2096451 83 Linux
Command (m for help): w The partition table has been altered!
Calling ioctl() to re-read partition table. Syncing disks.
分区结果 [root@oracletest1 ~]# cat /proc/partitions major minor #blocks name
8 0 41943040 sda 8 1 204800 sda1 8 2 4096000 sda2 8 3 37641216 sda3 8 16 2097152 sdb 8 17 2096451 sdb1 8 32 2097152 sdc 8 33 2096451 sdc1 8 48 2097152 sdd 8 49 2096451 sdd1 8 64 2097152 sde 8 65 2096451 sde1 8 80 2097152 sdf 8 81 2096451 sdf1 8 96 2097152 sdg 8 97 2096451 sdg1
使分区生效 [root@oracletest1 ~]# partprobe
将分区映射为raw设备: [root@oracletest1 ~]# vim/etc/udev/rules.d/60-raw.rules [root@oracletest1 ~]# tail -12/etc/udev/rules.d/60-raw.rules ACTION=="add",KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N" KERNEL=="raw1", OWNER="grid",GROUP="dba",MODE="0666" ACTION=="add",KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw2 %N" KERNEL=="raw2", OWNER="grid",GROUP="dba",MODE="0666" ACTION=="add",KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N" KERNEL=="raw3", OWNER="grid",GROUP="dba",MODE="0666" ACTION=="add",KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw4 %N" KERNEL=="raw4", OWNER="grid",GROUP="dba",MODE="0666" ACTION=="add", KERNEL=="sdf1",RUN+="/bin/raw /dev/raw/raw5 %N" KERNEL=="raw5", OWNER="grid",GROUP="dba",MODE="0666" ACTION=="add", KERNEL=="sdg1",RUN+="/bin/raw /dev/raw/raw6 %N" KERNEL=="raw6", OWNER="grid",GROUP="dba",MODE="0666"
[root@oracletest1 ~]# ls /dev/raw/ rawctl [root@oracletest1 ~]# start_udev Starting udev: udevd[29597]: GOTO'pulseaudio_check_usb' has no matching label in:'/lib/udev/rules.d/90-pulseaudio.rules' [ OK ] [root@oracletest1 ~]# ls /dev/raw/ raw1 raw2 raw3 raw4 raw5 raw6 rawctl
5、使用grid用户解压grid安装文件 [grid@oracletest1 ~]$ unzip/mnt/hgfs/data/oracle/software/11204/p13390677_112040_Linux-x86-64_3of7.zip
6、使用oracle用户解压oracle安装文件 [oracle@oracletest1 ~]$ unzip/mnt/hgfs/data/oracle/software/11204/p13390677_112040_Linux-x86-64_1of7.zip [oracle@oracletest1 ~]$ unzip/mnt/hgfs/data/oracle/software/11204/p13390677_112040_Linux-x86-64_2of7.zip
7、安装GI [root@oracletest1 ~]# su - grid [grid@oracletest1 ~]$ exportDISPLAY=192.168.230.1:0.0 [grid@oracletest1 ~]$ cd grid/ [grid@oracletest1 grid]$ ./runInstaller file:///C:/Users/shilei/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg [grid@oracletest1 grid]$ crsctl stat res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE oracletest1 ora.LISTENER.lsnr ONLINE ONLINE oracletest1 ora.asm ONLINE ONLINE oracletest1 Started ora.ons OFFLINE OFFLINE oracletest1 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE oracletest1 ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE oracletest1
8、使用asmca增加磁盘组 [grid@oracletest1 grid]$ asmca [grid@oracletest1 grid]$ crsctl stat res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE oracletest1 ora.FRA.dg ONLINE ONLINE oracletest1 ora.LISTENER.lsnr ONLINE ONLINE oracletest1 ora.asm ONLINE ONLINE oracletest1 Started ora.ons OFFLINE OFFLINE oracletest1 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE oracletest1 ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE oracletest1
9、重启服务器确认正常
10、安装数据库 [root@oracletest1 ~]# su - oracle [oracle@oracletest ~]$ exportDISPLAY=192.168.230.1:0.0 [oracle@oracletest ~]$ cd database/ [oracle@oracletest database]$./runInstaller
11、创建数据库 [oracle@oracletest1 database]$ dbca file:///C:/Users/shilei/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg
12、安装rlwrap [root@oracletest1 ~]# vim installrlwrap.sh #!/bin/bash yum install –y readline*libtermcap-devel* lrzsz tar -xvzf rlwrap-0.41.tar.gz cd rlwrap-0.41 ./configure make make install cat << EOF >>/home/oracle/.bash_profile alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman' EOF cat << EOF1 >> /home/grid/.bash_profile alias sqlplus='rlwrap sqlplus' EOF1
|