Vmware14pro
下载地址:https://my.vmware.com/web/vmware/details?productId=686&rPId=25457&downloadGroup=WKST1413-WIN
Centos7.2
下载地址:http://archive.kernel.org/centos-vault/7.2.1511/isos/x86_64/CentOS-7-x86_64-Everything-1511.iso
Oracle数据库
下载地址:后续上传提供下载
选择新建虚拟机,点击自定义,下一步
继续下一步
选择稍后安装操作系统,下一步
下一步
设置虚拟机名称,安装位置,下一步
指定处理器数量,下一步
设置内存大小,建议设置值小于物理主机内存一半大小
选择网络类型,推荐选择NAT模式
接下来连续下一步,分别是选择IO控制器类型、磁盘类型、使用哪个磁盘,默认的就好
指定磁盘容量,电脑硬盘足够大的话,建议最大磁盘大小选大一点,方面后续使用。选择存储为单个文件,下一步
指定磁盘文件,下一步就好
已经准备好,点击自定义硬件
选择新CD/DVD,使用ISO映像文件
浏览找到下载好的centos7.2ISO镜像包,点击关闭,点击完成,准备工作就完成了。
选择语言,Continue就好
依次设置时间、软件、安装位置、网络和主机名
设置时间
设置安装软件,可选GNOME Desktop(看腻了单调的命令窗,看看桌面也是不错的...)
设置安装位置
设置网络和主机名
点击Begin Installation
安装的过程中设置root用户的密码和普通用户名及密码,
密码如果过于简单,Done需要点击两次,普通用户也是一样设置,不赘述
等待安装完成,点击Reboot
点击LICENSING
进入欢迎界面,点击右上角的next
需要输入账户的地方可以先skip
不能skip的地方可以先输出Domain为single-oracle.novalocal(之前设置的主机名),用户名和密码分别为root及其密码
完成安装,进入桌面,可以畅快的敲命令了
root用户根目录下执行
mkdir -p /opt/oracle
mkdir -p /data/{arch,fra,oradata}
为虚拟机新增一块磁盘专门用于Oracle数据库
关闭虚拟机
点击编辑虚拟机设置
在虚拟机设置页面点击硬盘,添加
跟前面的准备安装工作一样,添加一块硬盘,一直点下一步,设置磁盘大小,设置为单个文件。
完成以后点确定,开启虚拟机。
fdisk -l 查看系统识别到的磁盘
对新增的磁盘进行分区
parted /dev/vdb
mklabel gpt
mkpart oracle 2048s 100%
toggle 1 lvm
创建vg,yfzxvg名称自取
pvcreate --metadatasize 100m /dev/sdb1
vgcreate yfzxvg /dev/sdb1 -s 32m
划分lv
lvcreate -L 20G -n lv_oracle yfzxvg
lvcreate -L 15G -n lv_arch yfzxvg
lvcreate -L 15G -n lv_fra yfzxvg
lvcreate -l 100%FREE -n lv_oradata yfzxvg
格式化lv
mkfs.ext4 /dev/yfzxvg/lv_oracle
mkfs.ext4 /dev/yfzxvg/lv_ogg
mkfs.ext4 /dev/yfzxvg/lv_arch
mkfs.ext4 /dev/yfzxvg/lv_fra
mkfs.ext4 /dev/yfzxvg/lv_oradata
修改配置文件/etc/fstab
#vi /etc/fstab
/dev/yfzxvg/lv_oracle /opt/oracle ext4 defaults 0 0
/dev/yfzxvg/lv_arch /data/arch ext4 defaults 0 0
/dev/yfzxvg/lv_fra /data/fra ext4 defaults 0 0
/dev/yfzxvg/lv_oradata /data/oradata ext4 defaults 0 0
挂载磁盘,重启
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
compat-libcap1 \
compat-libstdc \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libXext \
libXtst \
libX11 \
libXau \
libXi \
make \
nfs-utils \
sysstat \
unixODBC \
unixODBC-devel | grep 'not installed' | awk '{print "yum install -y " $2}' | sh
groupadd -g 700 oinstall
groupadd -g 701 dba
groupadd -g 702 oper
groupadd -g 703 asmadmin
groupadd -g 704 asmoper
groupadd -g 705 asmdba
useradd -g oinstall -G dba,asmdba,asmadmin,asmoper -u 600 grid
useradd -g oinstall -G dba,oper,asmdba,asmadmin -u 601 oracle
passwd oracle
passwd grid
mkdir -p /opt/oracle/yfzx/products/12.1.0
mkdir -p /opt/oracle/yfzx/admin/{adump,bdump,cdump,dpdump,pfile}
mkdir -p /data/arch/yfzx
mkdir -p /data/fra/yfzx
mkdir -p /data/oradata/yfzx
chown -R oracle:oinstall /opt/oracle
chown -R oracle:oinstall /data/arch
chown -R oracle:oinstall /data/fra
chown -R oracle:oinstall /data/oradata
chmod -R 775 /opt/oracle
chmod -R 755 /data
vi /etc/sysctl.conf
fs.aio-max-nr = 3145728
fs.file-max = 6815744
kernel.shmall = 1572864 #为shmmax/ shmmni
kernel.shmmax = 6442450944 #设置为物理内存的80%
kernel.shmmni = 4096
kernel.sem = 8010 32808960 8010 4096
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.conf.default.rp_filter=0
net.ipv4.tcp_sack=0
net.ipv4.tcp_timestamps=0
net.core.optmem_max=65535
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
vm.dirty_ratio=10
vm.vfs_cache_pressure=150
vm.min_free_kbytes=1048576
vm.swappiness=10
vm.dirty_expire_centisecs=1499
/sbin/sysctl -p
vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle soft memlock 8010752
oracle hard memlock 8010752
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
vi /etc/pam.d/login
session required pam_limits.so
vi /home/oracle/.bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_OWNER=oracle
export ORACLE_BASE=/opt/oracle/yfzx
export ORACLE_HOME=$ORACLE_BASE/products/12.1.0
export ORACLE_SID=yfzx
export ORACLE_UNQNAME=yfzx
export PATH=$ORACLE_HOME/bin:$PATH
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export TNS_ADMIN=$ORACLE_HOME/network/admin
alias alert="tail -100f $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/alert_$ORACLE_SID.log"
umask 022
export LANG=en_US.UTF-8
这一步执行完之后,最好source一下,让配置生效,否则后面使用$ORACLE_HOME时,容易报错
source /home/oracle/.bash_profile #让配置生效
vi /etc/hosts,添加一行ip及主机名
dd if=/dev/zero of=/root/swapfile bs=1M count=5000 #执行时间较长,等待一小会儿
mkswap /root/swapfile
swapon /root/swapfile
vi /etc/fstab
/root/swapfile swap swap defaults 0 0
拷贝安装包,解压到/home/oracle/目录下,配置解压后的文件夹递归权限chmod -R 777 database/
用oracle用户执行安装代码
./runInstaller -silent -force -noconfig -IgnoreSysPreReqs \
-ignorePrereq -showProgress \
oracle.install.option=INSTALL_DB_SWONLY \
DECLINE_SECURITY_UPDATES=true \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=/opt/oracle/oraInventory \
SELECTED_LANGUAGES=en,zh_CN \
oracle.install.db.InstallEdition=EE \
oracle.install.db.isCustomInstall=false \
oracle.install.db.EEOptionsSelection=false \
oracle.install.db.DBA_GROUP=dba \
oracle.install.db.OPER_GROUP=dba \
oracle.install.db.isRACOneInstall=false \
oracle.install.db.BACKUPDBA_GROUP=dba \
oracle.install.db.DGDBA_GROUP=dba \
oracle.install.db.KMDBA_GROUP=dba \
oracle.install.db.rac.serverpoolCardinality=0 \
oracle.install.db.ConfigureAsContainerDB=false \
oracle.install.db.config.starterdb.memoryOption=false \
oracle.install.db.config.starterdb.installExampleSchemas=true \
oracle.install.db.config.starterdb.managementOption=DEFAULT \
oracle.install.db.config.starterdb.enableRecovery=false \
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE \
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
oracle.installer.autoupdates.option=SKIP_UPDATES \
ORACLE_HOME=/opt/oracle/yfzx/products/12.1.0 \
ORACLE_BASE=/opt/oracle/yfzx \
ORACLE_HOSTNAME=single-oracle.novalocal
如果一次没有装成功,则需要删除安装过程中产生的日志文件/opt/oraInventory
rm -rf /opt/oraInventory/logs/
成功安装,则需要用root用户执行以下两条命令
/opt/oracle/oraInventory/orainstRoot.sh
/opt/oracle/yfzx/products/12.1.0/root.sh
$ORACLE_HOME/bin/netca -silent -responsefile /home/oracle/database/response/netca.rsp
$ORACLE_HOME/bin/dbca -silent \
-createDatabase \
-TEMPLATENAME General_Purpose.dbc \
-GDBNAME yfzx \
-SID yfzx \
-SYSPASSWORD Aa123456 \
-SYSTEMPASSWORD Aa123456 \
-dbsnmppassword Aa123456 \
-CREATEASCONTAINERDATABASE true \
-NUMBEROFPDBS 1 \
-PDBNAME yfzxpdb \
-pdbadminpassword Aa123456 \
-CHARACTERSET AL32UTF8 \
-NATIONALCHARACTERSET AL16UTF16 \
-STORAGETYPE FS \
-DATAFILEDESTINATION /data/oradata \
-RECOVERYAREADESTINATION /data/fra \
-initparams audit_file_dest='/opt/oracle/yfzx/admin/yfzx/adump' \
-initparams compatible='12.1.0.2.0' \
-initparams db_create_file_dest='/data/oradata' \
-initparams db_create_online_log_dest_1='/data/oradata' \
-initparams db_recovery_file_dest='/data/fra' \
-initparams diagnostic_dest='/opt/oracle/yfzx' \
-initparams parallel_max_servers=8 \
-initparams processes=300
sqlplus / as sysdba进入SQL命令
至此,单节点oracle实例安装所有工作已完成~!
````````````````````````````````````````````````````````````````