oracle亲手安装过程

适用于centos6 radhat6版本
1、检查依赖库:
rpm -q binutils compat-libcap1 compat-libstdc++ compat-libstdc++.i686 gcc gcc-c++ glibc.i686 glibc glibc-devel glibc-devel.i686 ksh libgcc.i686 libgcc libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 libaio libaio.i686 libaio-devel libaio-devel.i686 make sysstat unzip
查看哪些没有安装。没有安装的,用yum安装。
(1)df -h查看tmpfs大小,如果不够:

修改tmpfs大小:

vim /etc/fstab

在default后加size=10G

重新挂载

mount -o remount /dev/shm

(2)swap空间

dd if=/dev/zero of=/home/swapfile bs=1024 count=1G

mkdir -p /home/swapfile

mkswap /home/swapfile

swapon /home/swapfile

free -m 查看

2、创建用户与组:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
修改oracle密码。
3、创建/etc/oraInst.loc  加入:
inventory_loc=/usr//local/oracle/oraInventory
inst_group=oinstall
修改权限:
chown oracle:oinstall /etc/oraInst.loc
chmod 664 /etc/oraInst.loc
4、创建oracle安装目录:
mkdir -p /usr/local/oracle
修改权限:
chown -R oracle:oinstall /usr/local/oracle
chmod -R 775 /usr/local/oracle
5、在/etc/sysctl.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
修改后,使设置生效,执行:
/sbin/sysctl -p
6、修改用户限制
在/etc/security/limits.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
7、在/etc/pam.d/login 文件中,使用文本编辑器或vi命令增加或修改以下内容
session required /lib/security/pam_limits.so
session required pam_limits.so
8、vim /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
使设置生效
source /etc/profile
 
 
9、解压两个oracle文件。
找到db_install.rsp      修改一下内容:
oracle.install.option=INSTALL_DB_SWONLY // 安装类型
ORACLE_HOSTNAME=db // 主机名称(hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/usr/oracle/oraInventory //INVENTORY目录(不填就是默认值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言
ORACLE_HOME=/usr/oracle/product/11.2.0/db_1 // oracle_home
ORACLE_BASE=/usr/oracle // oracle_base
oracle.install.db.InstallEdition=EE // oracle版本
oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件
oracle.install.db.DBA_GROUP=dba // dba用户组
oracle.install.db.OPER_GROUP=oinstall // oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //globalDBName
oracle.install.db.config.starterdb.SID=orcl //SID
oracle.install.db.config.starterdb.memoryLimit=81920 //自动管理内存的内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle //设定所有数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手动写了false)
DECLINE_SECURITY_UPDATES=true //设置安全更新
或用以下脚本:

file="db_install.rsp"
for i in file
do
cd /usr/local/database/response/
sed -i 's#oracle.install.option=#oracle.install.option=INSTALL_DB_SWONLY#g' ${file}
sed -i 's#ORACLE_HOSTNAME=#ORACLE_HOSTNAME=db#g' ${file}
sed -i 's#UNIX_GROUP_NAME=#UNIX_GROUP_NAME=oinstall#g' ${file}
sed -i 's#INVENTORY_LOCATION=##g' ${file}
sed -i 's#INVENTORY_LOCATION=#INVENTORY_LOCATION=/usr/local/oracle/oraInventory#g' ${file}
sed -i 's#SELECTED_LANGUAGES=#SELECTED_LANGUAGES=en,zh_CN,zh_TW#g' ${file}
sed -i 's#ORACLE_HOME=#ORACLE_HOME=/usr/local/oracle/product/11.2.0/db_1#g' ${file}
sed -i 's#ORACLE_BASE=#ORACLE_BASE=/usr/local/oracle#g' ${file}
sed -i 's#oracle.install.db.InstallEdition=#oracle.install.db.InstallEdition=EE#g' ${file}
#sed -i 's#oracle.install.db.isCustomInstall=#oracle.install.db.isCustomInstall=false#g' ${file}
sed -i 's#oracle.install.db.DBA_GROUP=#oracle.install.db.DBA_GROUP=dba#g' ${file}
sed -i 's#oracle.install.db.OPER_GROUP=#oracle.install.db.OPER_GROUP=oinstall#g' ${file}
sed -i 's#oracle.install.db.config.starterdb.type=#oracle.install.db.config.starterdb.type=GENERAL_PURPOSE#g' ${file}
sed -i 's#oracle.install.db.config.starterdb.globalDBName=#oracle.install.db.config.starterdb.globalDBName=orcl#g' ${file}
sed -i 's#oracle.install.db.config.starterdb.SID=#oracle.install.db.config.starterdb.SID=orcl#g' ${file}
sed -i 's#oracle.install.db.config.starterdb.memoryLimit#oracle.install.db.config.starterdb.memoryLimit=600#g' ${file}
sed -i 's#oracle.install.db.config.starterdb.password.ALL=#oracle.install.db.config.starterdb.password.ALL=oracle#g' ${file}
sed -i 's#SECURITY_UPDATES_VIA_MYORACLESUPPORT=#SECURITY_UPDATES_VIA_MYORACLESUPPORT=false#g' ${file}
sed -i 's#DECLINE_SECURITY_UPDATES=#DECLINE_SECURITY_UPDATES=true#g' ${file}
done


10、设置oracle环境变量:
su oracle
vim ~/.bash_profile
添加:
   export ORACLE_BASE=/usr/local/oracle
   export ORACLE_SID=orcl
   source /home/oracle/.bash_profile
11、运行安装脚本:
首先要切换oracle用户才能执行:

./runInstaller -silent -responseFile /home/oracle/db_install.rsp     指定db_install.rsp文件位置

通过/usr/local/oracle/oraInventory/logs/   查看安装进度

12、安装完毕后,oracle会让你执行命令:
su root
/usr/oracle/product/11.2.0/db_1/root.sh
配置静默监听(把database/response下的文件复制到/home/oracle下)
$ORACLE_HOME/bin/netca /silent /responseFile /home/oracle/netca.rsp    指定文件
13、最后再在~/.bash_profile里添加:
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export ORACLE_OWNER=oracle
export SPFILE_PATH=$ORACLE_HOME/dbs
export ORA_NLS10=$ORACLE_HOME/nls/data
使之生效:
source /home/oracle/.bash_profile
14、切换到root用户,在oracle目录下找到root.sh,执行。
15、修改oracle配置文件:init.ora。该文件在$ORACLE_HOME/dbs目录下。
<ORACLE_BASE> 全部改成绝对地址 /usr/local/oracle
db_name='orcl'
audit_file_dest='/data/oracle/admin/orcl/adump'
/usr/local/oracle/admin/orcl/adump 
/usr/local/oracle/flash_recovery_area
/usr/local/oracle
 
17、开启静默监听;
./netca /silent /responsefile /home/oracle/netca.rsp
18、编辑dbca.rsp文件(开始静默建库):

sed -i 's#GDBNAME = "orcl11g.us.oracle.com"#GDBNAME = "orcl"#g' /home/oracle/dbca.rsp
sed -i 's#SID = "orcl11g"#SID = "orcl"#g' /home/oracle/dbca.rsp
sed -i 's$#CHARACTERSET = "US7ASCII"$CHARACTERSET = "AL32UTF8"$g' /home/oracle/dbca.rsp
sed -i 's$#NATIONALCHARACTERSET= "UTF8"$NATIONALCHARACTERSET= "UTF8"$g' /home/oracle/dbca.rsp

sed -i 's$##SYSPASSWORD = "password"$SYSPASSWORD = "oracle"$g' /home/oracle/dbca.rsp

sed -i 's$##SYSTEMPASSWORD = "password"$SYSTEMPASSWORD = "oracle"$g' /home/oracle/dbca.rsp

password设置

后执行:

./dbca -silent -responseFile /home/oracle/dbca.rsp  开始静默建库

19、启动数据库  sqlplus / as sysdba

SQL> shutdown immediate;    #正常关闭数据库

SQL> startup mount;    #开启实例并挂载数据库(如果提示控制文件未找到,那么可能是静默建库没有成功,重新建库。将/etc下oratab删除)

SQL> alter database archivelog;    #进入归档模式  

SQL> alter database open;    #启动数据库

 
原文地址:https://www.cnblogs.com/magmell/p/8522577.html