环境:
硬盘30G;2G RAM;Centos7;Oracle 11G;
1.创建组和用户
[zzd@localhost ~]$ su root #切换到rootPassword:[root@localhost]# groupadd oinstall #创建用户组oinstall[root@localhost]# groupadd dba #创建用户组dba[root@localhost]# useradd -g oinstall -G dba -m oracle #创建oracle用户,并加入到oinstall和dba用户组[root@localhost]# passwd oracle #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆Changing password for user oracle.New password: # 密码BAD PASSWORD: The password is shorter than 8 charactersRetype new password: # 确认密码passwd: all authentication tokens updated successfully.[root@localhost]# id oracle # 查看新建的oracle用户
2.解压安装包
[root@localhost]# unzip linux.x64_11gR2_database_1of2.zip[root@localhostl]# unzip linux.x64_11gR2_database_2of2.zip
解压出来的database文件夹,放到oracle的用户目录下:
mv ./database /home/oracle/
设置文件夹权限:
chown -R oracle:oinstall /home/oracle/database
3.创建安装目录
[root@localhost]# cd /. #进入根目录[root@localhost]# mkdir -p /data/oracle #oracle数据库安装目录[root@localhost]# mkdir -p /data/oraInventory #oracle数据库配置文件目录[root@localhost]# cd /data[root@localhost data]# ls #创建完毕检查一下(强迫症)database oracle oraInventory[root@localhost data]# chown -R oracle:oinstall /data/oracle #设置目录所有者为oinstall用户组的oracle用户[root@localhost data]# chown -R oracle:oinstall /data/oraInventory[root@localhost data]#
4.修改OS系统标识(oracle默认不支持CentOS系统安装,但是centos其实就是redhat)
[root@localhost data]# vi /etc/redhat-release[root@localhost data]# cat /etc/redhat-releaseredhat-7
5.安装依赖包
[root@localhost data]# yum -y install binutils* compat-libcap1* compat-libstdc++* gcc* gcc-c++* glibc* glibc-devel* ksh* libaio* libaio-devel* libgcc* libstdc++* libstdc++-devel* libXi* libXtst* make* sysstat* elfutils* unixODBC*
6.关闭防火墙
[root@localhost data]# systemctl stop firewalld.service #关闭防火墙[root@localhost data]# systemctl status firewalld.service #查看防火墙状态(已关闭)[root@localhost data]# systemctl disable firewalld.service #禁止使用防火墙(重启也是禁止的)
7.关闭selinux
[root@localhost data]# vi /etc/selinux/config
修改为SELINUX=disabled
8.修改内核参数
[root@localhost data]# vi /etc/sysctl.conf
在最后添加:
net.ipv4.icmp_echo_ignore_broadcasts = 1net.ipv4.conf.all.rp_filter = 1fs.file-max = 6815744fs.aio-max-nr = 1048576kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max= 4194304net.core.wmem_default= 262144net.core.wmem_max= 1048576
内核参数需要注意,shmall 和shmmax 的值由服务器内存决定。(不过这个参数设置博主我现在也是一知半解,没完全搞明白,查了半天意思如下:)
kernel.shmall : 该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB/4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304 符合要求。kernel.shmmax:是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,例如,如果为16GB物理内存,可取1610241024*1024-1=17179869183。kernel.shmmni:该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。kernel.sem = 250 32000 100 128 的意思是: 250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。 32000是参数semmns的值,表示系统内可允许的信号量最大数目。 100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。 128是参数semmni的值,表示系统信号量集合总数。
9.对oracle用户设置限制
(1)vi /etc/security/limits.conf添加以下内容:* soft nproc 2047* hard nproc 16384* soft nofile 1024* hard nofile 65536(2)修改/etc/pam.d/login 文件,vi /etc/pam.d/login添加:session required /lib64/security/pam_limits.sosession required pam_limits.so (3)编辑 /etc/profile ,vi /etc/profile添加:if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536else ulimit -u 16384 -n 65536 fifi
10.配置环境变量
export ORACLE_BASE=/data/oracle #oracle数据库安装目录export ORACLE_HOME=$ORACLE_BASE/product/11g #oracle数据库路径export ORACLE_SID=orcl #oracle启动数据库实例名export ORACLE_UNQNAME=orclexport ORACLE_TERM=xterm #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 #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致
使用户的环境变量配置立即生效
[root@localhost data]# source /home/oracle/.bash_profile
11.修改交换空间的大小
12.开始安装
使用oracle用户登陆,到database文件夹下直接执行./runInstaller
13.正常会打开图形化安装界面,按自己意愿进行安装和配置
参考: