Linux系统安装数据库Oracle11g R2
以下以root身份登录系统进行操作root/mapgis
查看版本信息
cat /etc/redhat-release
uname -a
说明:通过系统版本号及机型号明确安装数据库工作的平台类型,确认安装什么类型的数据库(platform、series、bits)
安装前的准备工作
#vi /etc/hosts //添加IP地址对应的hostname。
1.先安装好centos 6.3版本的系统 (略)
要求:
内存:至少1G
swap:如果1-2G物理内存,最好设置swap为1.5-2倍的物理内存大小
Available RAM | Swap Space Required |
Between 1 GB and 2 GB | 1.5 times the size of the RAM |
Between 2 GB and 16 GB | Equal to the size of the RAM |
More than 16 GB | 16 GB |
如果swap大小太小,可以删除或者重新制作一个分区,当成swap用一样的。
#dd if=/dev/zero of=/swap bs=1M count=8000 //8G
#mkswap /swap //指定某个盘下划分swap
#swapon /swap //挂载这个swap,但每次需要启动挂载 vi /etc/fstab
#swapon -s //查看swap分区挂载情况
硬盘空间:
软件目录需要4G多点,数据库存入目录要2G左右,而且还要有400M左右的临时空间供安装时候的临时之用,这些空间对当今大容量磁盘来说已经毫无压力。这些信息可以通过系统资源监视器。
添加Oracle用户组
groupadd -g 1000 oinstall
groupadd -g 1001 dba
groupadd -g 1002 oper
groupadd -g 1003 orauser
添加Oracle用户
useradd -u 600 -d /home/oracle -s /bin/bash oracle
修改Oracle用户所属组
usermod -g oinstall -G dba,oper,orauser oracle
设置密码
passwd oracle (提示修改密码:oracle)
创建目录
mkdir /u01
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
mkdir -p /u01/app/oracle/product/11.2.0/db_1
解压缩安装文件
上传方式 unzip *1of2.zip unzip *2of2.zip
设置目录所有者
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chown -R oracle:oinstall /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/dbhome_1
更改文件权限
chmod -R 775 /u01/app/oracle/product/11.2.0/dbhome_1
chmod -R 775 /u01/app/oraInventory
查看oracle所需要的安装的包是否安装
rpm -qa binutils
rpm -q compat-libstdc++-33(rpm -qa compat-libstdc++*) ----->需要安装
rpm -qa | grep elfutils(需要安装elfutils-devel)
rpm -qa gcc
rpm -qa gcc-c++ (需要安装)
rpm -qa glibc
rpm -qa glibc-common
rpm -qa glibc-devel
rpm -qa libaio
rpm -qa libaio-devel(需要安装)
rpm -qa libgcc
rpm -qa libstdc++(需要安装)
rpm -qa libstdc++-devel(需要安装)
rpm -qa make
rpm -qa sysstat
rpm -qa unixODBC(需要安装及安装unixODBC-devel)
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel
rpm -q glibc-headers pmksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl-devel sysstat
建议:由于系统版本不同,缺少的rpm包可能和上述不一,建议网上和官方对应版本安装要求对比查询,暂时列出需要安装的清单,下载所需包,等待安装数据库进行检查时给出缺失包信息,再进行补充下载,并一一安装检查至数据库检查通过
安装缺少的包
下载:
compat-libstdc++-33-3.2.3-47.3.i386.rpm
elfutils-libelf-devel-0.152-1.el6.x86_64.rpm
gcc-c++-4.4.6-4.el6.x86_64.rpm
glibc-2.3.4-2.41.i686.rpm
libaio-0.3.105-2.i386.rpm
libaio-devel-0.3.105-2.i386.rpm
libgcc-3.4.6-3.1.x86_64.rpm
unixODBC-2.2.11-2.i386.rpm
unixODBC-devel-2.2.11-2.i386.rpm
放到:
K:\SoftWare\OracleEnterpriseLinux6.3\rpm下(如果是安装VM,主机和VM共享路径)
cd /mnt/hgfs/SoftWare/OracleEnterpriseLinux6.3/rpm
或者
用上传工具上传到已指定路径
执行
rpm -ivh compat-libstdc++-33-3.2.3-47.3.i386.rpm
rpm -ivh elfutils-libelf-devel-0.152-1.el6.x86_64.rpm
rpm -ivh gcc-c++-4.4.6-4.el6.x86_64.rpm
rpm -ivh glibc-2.3.4-2.41.i686.rpm
rpm -ivh libaio-0.3.105-2.i386.rpm
rpm -ivh libaio-devel-0.3.105-2.i386.rpm
rpm -ivh libgcc-3.4.6-3.1.x86_64.rpm
rpm -ivh unixODBC-2.2.11-2.i386.rpm --nodeps --force
rpm -ivh unixODBC-devel-2.2.11-2.i386.rpm --nodeps --force
说明:安装出现文件依赖,如果是要安装文件相互依赖(安装顺序的问题),可以进行强制安装,加参数--nodeps --force,否则尽量不要强制安装,下载提示缺少的库再安装
修改系统用户资源权限
vi /etc/profile,增加:
#oracle
if [ $USER = "oracle" ] ; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 4096
else
ulimit -u 16384 -n 4096
fi
umask 022
fi
设置内核参数
修改
vi /etc/sysctl.conf,添加:
#kernel.shmall = 2097152(已有)
#kernel.shmmax = 2147483648(已有)
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.ip_local_port_range = 9000 65500
fs.suid_dumpable = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
查看内核参数,保证如上修改
例如:/sbin/sysctl -a | grep fs.aio-max-nr
使内核参数生效
/sbin/sysctl -p
修改oracle 用户shell 限制
vi /etc/security/limits.conf,增加:
#add by lcs for oracle
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle用户限制登录
vi /etc/pam.d/login
#add by lcs for oracle
session required pam_limits.so
设置磁盘配置策略
vi /etc/sysconfig/seLinux
#modify by lcs for oracle
#old SELINUX=enforcing
SELINUX=disabled
重新启动系统
Reboot
安装数据库
Oralce用户登录,执行dbca命令,按照向导所示一步步安装oracle,过程和windows环境安装oracle一致。在选择何种安装类型,选择”企业服务器”类型。
数据库网络配置
Oracle用户执行netca,配置服务器的ip和实例名。按照向导一步步配置,最后可以选择数据库安装的任一用户进行测试连接。如果连接成功,即正确配置。或者直接在network/admin目录下配置listener.ora。数据库配置完成后,可能还需修改字符集和自启动配置。
自启动配置
以root身份登录:
$su - root
1、linux下oracle自带的dbstart和dbshut没反应: 修改Oracle系统配置文件/etc/oratab文件: #vi /etc/oratab
/etc/oratab 格式为: SID:ORACLE_HOME:AUTO
把AUTO域设置为Y(大写),我的为:
zondy:/home/oracle/app/oracle/product/11.2.0/db_home1:Y
只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。
2、修改/etc/rc.d/rc.local配置文件
在/etc/rc.d/rc.local中加入如下内容: #vi /etc/rc.d/rc.local
su - oracle -c "/home/oracle/app/oracle/product/11.2.0/db_home1/bin/lsnrctl start"
su - oracle -c "/home/oracle/app/oracle/product/11.2.0/db_home1/bin/dbstart start"
3、重新启动
#reboot
4、连接测试(以oracle身份登录)
sqlplus oracle/oracle