##创建用户和组:
[LanRS@localhost ~]$ su root #切换到root
Password:
[root@localhost LanRS]# groupadd oinstall #创建用户组oinstall
[root@localhost LanRS]# groupadd dba #创建用户组dba
[root@localhost LanRS]# usermod -g oinstall -G dba aofis #创建aofis用户,并加入到oinstall和dba用户组
[root@localhost LanRS]# passwd aofis #设置用户aofis的登陆密码
Changing password for user oracle.
New password: # 密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: # 确认密码
passwd: all authentication tokens updated successfully.
[root@localhost LanRS]# id aofis # 查看新建的aofis用户
uid=1001(aofis) gid=1002(dba) groups=1002(dba)
[root@localhost LanRS]#
##创建oracle数据库安装目录
[LanRS@localhost ~]$ su root
Password:
[root@localhost LanRS]# mkdir -p /data/oracle #oracle数据库安装目录
[root@localhost LanRS]# mkdir -p /data/oraInventory #oracle数据库配置文件目录
[root@localhost LanRS]# mkdir -p /data/database #oracle数据库软件包解压目录
[root@localhost LanRS]# cd /data
[root@localhost data]# ls #创建完毕检查一下(强迫症)
database oracle oraInventory
[root@localhost data]# chown -R aofis:oinstall /data/oracle #设置目录所有者为oinstall用户组的oracle用户
[root@localhost data]# chown -R aofis:oinstall /data/oraInventory
[root@localhost data]# chown -R aofis:oinstall /data/database
[root@localhost data]# chmod -R 775 /data/oracle #为oracle目录设置权限为 rwx rwx r-x
##修改OS系统标识---oracle默认不支持CentOS
修改文件 /etc/Redhat-release 为以下内容:
# vim /etc/redhat-release
# cat /etc/redhat-release
redhat-7
##关闭防火墙:
# systemctl stop firewalld.service
# systemctl disable firewalld.service #禁止使用防火墙(测试机不需要这个东西)
##关闭SELINUX
# vim /etc/selinux/config
用#注释掉SELINUXTYPE,并修改SELINUX=disabled
#SELINUX这个东西太高森,是高手玩的...
#配置好外网IP,安装需要的包文件:(命令 yum install -y 文件名)
#The following packages (or later versions) must be installed:
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
compat-libstdc++-33-3.2.3-71.el7.i686(.i686包用 yum install -y)
compat-libstdc++-33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
elfutils-libelf-devel-0.163-3.el7.x86_64
unixODBC-devel-2.3.1-11.el7.x86_64
unixODBC-devel-2.3.1-11.el7.i686
unixODBC-2.3.1-11.el7.x86_64
unixODBC-2.3.1-11.el7.i686
pdksh(我安装的时候安装了pdksh包,安装过ksh包需要将其卸载)使用 rpm -ivh命令安装该包
(ksh)
#修改内核参数
vi /etc/sysctl.conf
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 1572864
kernel.shmmax = 6442450943
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9600 65500
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
#使内核生效:
#sysctl -p
#
#对oracle用户设置限制,提高软件运行性能
#vi /etc/security/limits.conf
aofis soft nproc 2047
aofis hard nproc 16384
aofis soft nofile 1024
aofis hard nofile 65536
#配置环境变量:
# vi /home/aofis/.bash_profile 添加一下内容:
# export DISPLAY=:0.0
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
使以上配置生效:
# source /home/aofis/.bash_profile
##安装unzip:
#yum install -y unzip
##上传安装文件到(/home/aofis/Downloads下),解压
解压:#unzip 安装包名 -d /data/database(将安装包解压到指定文件夹database下)
#进入安装文件目录:
cd /data/database/database
执行安装文件(./ 安装文件)中间没有空格
--PRVF-0002 Could not retrieve local nodename :
--找不到主机名的对应ip。修改/etc/hosts,添加主机名即可(aofis)。
安装到70%有出现一个错误:
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'
#用vim 进入错误提示上面的路径名文件
转到:/$(MK_EMAGENT_NMECTL)
保留安装过程,另外开启一个终端窗口,将ins_emagent.mk文件中的$(MK_EMAGENT_NMECTL)更改为$(MK_EMAGENT_NMECTL) -lnnz11,然后在安装过程中点击Retry即可
安装完成后:
sys (sys)
system(system )
(tiger)
#########################启动数据库############################
#更改/etc/oratab
ORCL:/data/oracle/product/11.2.0/db_1:N --> 改为Y
#创建启动Oracle的Init脚本:
# vi /etc/rc.d/init.d/oracle
#######################################################################################
#!/bin/sh
#
# chkconfig: 2345 99 99
#
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME_LISTENER=$ORACLE_HOME
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
#export JAVA_HOME=$ORACLE_HOME/jdk
export PATH=$PATH:$ORACLE_HOME/bin:$JAVA_HOME/bin
export ORACLE_SID=orcl
#export ORACLE_TRACE=Y
export PATH=$JAVA_HOME/bin:$ORACLE_HOME/bin:$PATH
# Source function library.
. /etc/rc.d/init.d/functions
# See how we were called.
case "$1" in
start)
echo "1" > /proc/sys/net/ipv4/ip_forward
# Route 80 -> 8888 for XDB
iptables -t nat -A PREROUTING -m tcp -p tcp --dport 80 -j REDIRECT --to-port 8888
iptables -t nat -A PREROUTING -m tcp -p tcp --dport 21 -j REDIRECT --to-port 2121
su aofis -c "$ORACLE_HOME/bin/lsnrctl start"
su aofis -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
su aofis -c "echo alter pluggable database all open';'|$ORACLE_HOME/bin/sqlplus / as sysdba"
su aofis -c "/home/oracle/bin/ords.sh start /home/oracle/ords/ords.war"
;;
stop)
su aofis -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
su aofis -c "$ORACLE_HOME/bin/lsnrctl stop"
su aofis -c "/home/oracle/bin/ords.sh stop /home/oracle/ords/ords.war"
;;
restart|reload)
su aofis -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
su aofis -c "$ORACLE_HOME/bin/lsnrctl stop"
su aofis -c "/home/oracle/bin/ords.sh stop /home/oracle/ords/ords.war"
su aofis -c "$ORACLE_HOME/bin/lsnrctl start"
su aofis -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
su aofis -c "echo alter pluggable database all open';'|$ORACLE_HOME/bin/sqlplus / as sysdba"
su aofis -c "/home/oracle/bin/ords.sh start /home/oracle/ords/ords.war"
;;
status)
$ORACLE_HOME/bin/lsnrctl status
;;
*)
echo $"Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
#######################################################################################
#赋予脚本权限:
# chmod 755 /etc/rc.d/init.d/oracle
#启动数据库:service oracle start
#关闭数据库:service oracle stop
#设置oracle为开机自启动:
#赋予启动脚本执行权限并链接好:
#chmod 755 /etc/init.d/oracle
#ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
#ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
把oracle启动脚本添加到系统服务里并设置自启动:
#chkconfig --add oracle
#chkconfig --level 2345 oracle on