1. 系统要求
Centos release 5(64位) 默认安装
禁用SELinux
禁用linux防火墙
选择服务器职能
2. 数据库要求
2.1.软件下载
根据实际环环境从oracle官方网站下载相应的数据库
http://www.oracle.com/technology/software/products/database/oracle11g/111060_linx8664soft.html
2.2.解包
unzip linux.x64_11gR1_database_1013.zip
解包完成后后将database目录放在/root目录下
3. centos配置
3.1 安装缺失的包
用 root 用户身份运行以下命令:
rpm -aq |grep <包名称> 搜索已经安装的包
· binutils-2.17.50.0.6
· compat-libstdc++-33-3.2.3
· compat-libstdc++-33-3.2.3 (32 bit)
· elfutils-libelf-0.125
· elfutils-libelf-devel-0.125
· gcc-4.1.1
· gcc-c++-4.1.1
· glibc-2.5-12
· glibc-2.5-12 (32 bit)
· glibc-common-2.5
· glibc-devel-2.5
· glibc-devel-2.5-12 (32 bit)
· libaio-0.3.106
· libaio-0.3.106 (32 bit)
· libaio-devel-0.3.106
· libgcc-4.1.1
· libgcc-4.1.1 (32 bit)
· libstdc++-4.1.1
· libstdc++-4.1.1 (32 bit)
· libstdc++-devel 4.1.1
· make-3.81
· numactl-devel-0.9.8.x86_64
· sysstat-7.0.0
我采用网络安装(下列是所有默认未装的包):
yum install compat-libstdc++-33.x86_64 compat-libstdc++-33.i386 elfutils-libelf-devel.x86_64 gcc.x86_64 gcc-c++.x86_64 libaio-devel.i386 libaio-devel.x86_64 sysstat.x86_64 glibc-devel.i386 numactl-devel.x86_64 compat-libstdc++-33.x86_64 glibc-devel.x86_64
3.2添加oracle用户和组
groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba oracle
passwd oracle
3.3 移动oracle的安装文件到oracle用户的家目录下。并赋予权限。
mv /root/database /home/oracle/
chown -R oracle:oinstall /home/oracle/database
chmod -R 775 /home/oracle/database
3.4 创建安装目录并赋予oracle相应权限
mkdir -p /orahome/product/11.1.0.6/
chown -R oracle:oinstall /orahome
chmod -R 775 /orahome
mkdir -p /oracle/oradata
chown -R oracle:oinstall /oracle
chmod -R 775 /oracle
3.5 vi /etc/sysctl.conf 在文件结尾加上下边的参数,前两个需注销原来的参数
fs.file-max = 65536
kernel.shmall = 6097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
运行下面命令使设置生效/sbin/sysctl -p
3.6 vi /etc/security/limits.conf 增加参数
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
3.7 vi /etc/pam.d/login 增加参数
session required /lib/security/pam_limits.so
3.8 vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
#SELINUXTYPE=targeted
SELINUXTYPE=disabled
修改后,执行setenforce 0命令
重启Centos的时候,提示:
unable to load selinux policy. machine is in enforcing mode. halting now. kernel panic-not syncing:attempted to kill init!
解决方法:
系统启动的时候,按下‘e’键进入grub编辑界面,编辑grub菜单,选择“kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet” 一栏,按‘e’键进入编辑,在末尾增加enforcing=0,即:
kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet enforcing=0
按‘b’键继续引导,OK顺利前进。
3.9 设置主机名和IP (oracle需要静态ip才可安装)
1)vi /etc/hosts ――删除文件内容,添加如下两行
192.168.210.8 oracle.ihompy.com oracle
127.0.0.1 localhost.localdomain localhost
IP地址 主机名称 域名
2)vi /etc/sysconfig/network ――修改hostname=新的主机名
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=oracle.ihompy.com
3)more /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:13:20:58:F7:CC
IPADDR=192.168.210.8
NETMASK=255.255.255.0
NETWORK=192.168.210.0
GATEWAY=192.168.210.254
ONBOOT=yes
TYPE=Ethernet (上文红字部分是修改的)
运行: /etc/init.d/network restart 让statis的ip生效。
4)配置dns地址,保证内网外网都可ping通
3.10 修改oracle的环境变量
su - oracle
vi ~/.bash_profile
# Oracle Settings
export TMP=/tmp;
export TMPDIR=$TMP;
export ORACLE_BASE=/orahome;
export ORACLE_HOME=$ORACLE_BASE/product/11.1.0.6;
export ORACLE_SID=ncdb;
export ORACLE_TERM=xterm;
export PATH=/usr/sbin:$PATH;
export PATH=$ORACLE_HOME/bin:$PATH;
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
3.11 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
4、配置ASM:
安装ORACLE10G ASM磁盘管理的步骤
5.1、给linux安装ASM管理包
下载路径:http://www.oracle.com/technology/tech/linux/asmlib/index.html
找到X86适合自己电脑的部分,寻找自己电脑的核心
查询我的电脑linux核心: uname –r命令
下载这三个RPM包
安装上述三个包: 命令如下
rpm -Uvh oracleasm-support-2.1.2-1.el5.i386.rpm
rpm -Uvh oracleasm-2.6.18-53.el5xen-2.0.4-1.el5.i686.rpm
rpm -Uvh oracleasmlib-2.0.3-1.el5.i386.rpm
5.2、对用来做asm的磁盘进行分区(此处我采用三块硬盘:hd[a,b,d]):
fdisk /dev/hdb
n
p
1
回车
回车
w
根据以上参数对所有硬盘都进行进行分区
5.3、创建asm磁盘
用oracle登陆
igure/etc/init.d/oracleasm configure
/etc/init.d/oracleasm createdisk ASM01 /dev/hdb1
/etc/init.d/oracleasm createdisk ASM02 /dev/hdd1
F.查看asm磁盘:/etc/init.d/oracleasm listdisks
以oracle用户登录x window系统安装oracle,只装软件(安装略),再通过dbca创建asm和数据库
5.4、创建asm实例
A.在$ORACLE_HOME/dbs下创建初始化文件init+ASM.ora内容如下:
*.asm_diskstring='ORCL:ORACLEASM*'
*.background_dump_dest='/oracle/app/oracle/admin/+ASM/bdump'
*.core_dump_dest='/oracle/app/oracle/admin/+ASM/cdump'
*.instance_type='asm'
*.large_pool_size=12M
*.remote_login_passwordfile='SHARED'
*.user_dump_dest='/oracle/app/oracle/admin/+ASM/udump'
说明:第一行的ORCL:ORACLEASM*中ORCL为固定格式,ORACLEASM*代表asm磁盘,别的没有什么好说的。
5.5、创建目录结构
mkdir -p /oracle/app/oracle/admin/+ASM/udump
mkdir -p /oracle/app/oracle/admin/+ASM/bdump
mkdir -p /oracle/app/oracle/admin/+ASM/cdump
5.6、.启动实例:
export ORACLE_SID=+ASM
sqlplus /as sysdba
startup
会报一个ORA-29701 :unable to connect to Cluster Manager错误
此时需要切换到root用户执行:$ORACLE_HOME/bin/localconfig add
做完后切换到oracle下就可以启动了,不过会报一个:
ORA-15110: no diskgroups mounted
因为没有创建磁盘组,那么是正常的报错。先不用例会
5.7、.创建spfile。
create spfile from pfile;
创建完后spfile,关闭实例(shutdown immediate),在利用startup启动一下。
E.创建磁盘组(一般最好成对添加,我此处没有)
SQL> create diskgroup dgroup1 normal redundancy
2 failgroup fgroup1 disk 'ORCL:ORACLEASM1','ORCL:ORACLEASM2'
3 failgroup fgroup2 disk 'ORCL:ORACLEASM3';
Diskgroup created.
查看挂载情况:
SQL> select name,state from v$asm_diskgroup;
F.利用dbca创建正真的oracle数据库。
NAME STATE
------------------------------ -----------
DGROUP1 MOUNTED
若没有自动挂在,则需要手工挂在:
SQL> alter diskgroup dgroup1 mount;
alter diskgroup dgroup1 mount
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15017: diskgroup "DGROUP1" cannot be mounted
ORA-15030: diskgroup name "DGROUP1" is in use by another diskgroup
因为已经挂载,所以会报错,是正常的。
查看参数:
SQL> show parameter asm_diskgroup;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups string DGROUP1
G.利用dbca创建oracle数据库.
注意需要选择asm存放。
此处需要考虑到有的时候找不到dgroup1组,需要输入密码创建,总是提示spfile正在使用,此时可以采用
关闭+ASM实例(shutdown immediate),在重试就行了。
6、 OK,现在可以执行数据库安装命令,install安装了.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26442672/viewspace-717040/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26442672/viewspace-717040/