在CentOS 6.4 64位系统上安装Oracle 10g
确认你的操作系统是34位还是64位,本教程只支持64位安装!!
命令:$getconf LONG_BIT
A. 初始化网络
1. 设置网络参数
编辑/etc/sysconfig/network-scripts/ifcfg-eth0,初始化网络参数(根据实际情况编辑)。
编辑/etc/hosts,加入主机名和IP(主机名用hostname或者uname –n 命令查看,两条命令的结果必须相同)
2. 设置系统服务
禁用一些不必要的系统服务
chkconfig iptables off
chkconfig ip6tables off
chkconfig cups off
chkconfig firstboot off
chkconfig wpa_supplicant off
chkconfig postfix off
3. 安装常用软件及必需软件
安装kernel-devel和kernel-headers,并且在更新系统时,禁止更新kernel:
yum -y install kernel-devel kernel-headers && echo exclude=kernel* >> /etc/yum.conf
更新系统:
yum -y update
安装常用软件:
yum -y install autoconf automake binutils-devel bison cpp dos2unix ftp gcc gcc-c++ lrzsz python-devel
安装Oracle必需软件:
yum -y install compat-db compat-gcc-34 compat-gcc-34-c++ compat-libstdc++-33 glibc-* glibc-*.i686 libXpm-*.i686 libXp.so.6 libXt.so.6 libXtst.so.6 libgcc_s.so.1 ksh libXp libaio-devel numactl numactl-devel unixODBC unixODBC-devel
注:安装完成以上软件后,最好重启系统。
4. 创建Oracle相关用户和目录
以下命令按顺序执行:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
usermod -g oinstall -G dba oracle
mkdir -p /usr/local/oracle
chown -R oracle:oinstall /usr/local/oracle
chmod -R 755 /usr/local/oracle
5. 修改内核参数
编辑/etc/sysctl.conf,在最后添加如下内容:
cat >> /etc/sysctl.conf << EOF
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65500
net.core.rmem_default = 4194304
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 262144
EOF
修改完成后,运行sysctl -p使设置生效。
6. 为Oracle用户设置Shell限制
编辑/etc/security/limits.conf,在最后添加如下内容:
cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
编辑/etc/pam.d/login,在最后添加如下内容:
cat >> /etc/pam.d/login << EOF
session required pam_limits.so
EOF
编辑系统环境配置文件/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
编辑/etc/csh.login,在最后添加如下内容:
if ( $USER == "oracle") then
limit maxproc 16384
limit descriptors 65536
endif
编辑/home/oracle/.bash_profile,在最后添加如下内容:
export ORACLE_BASE=/usr/local/oracle
export ORACLE_HOME=/usr/local/oracle/product/10201
export ORACLE_SID=bill
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
注:这里的ORACLE_SID的值,是后面安装数据库实例时候用到的SID。
7. 重启服务器,并且使用oracle用户登录
将10201_database_linux_x86_64.cpio.gz上传至服务器,保存在/home/oracle/Downloads 目录下面,并使用root账户赋权:
chown -R oracle:oinstall /home/oracle/Downloads/10201_database_linux_x86_64.cpio.gz
B. 安装Oracle 10g(注意:安装必须在有界面的PC机上操作)
第一步: 进入/home/oracle/Downloads目录,解压安装文件:
cd /home/oracle/Downloads
zcat 10201_database_linux_x86_64.cpio.gz | cpio -idmv > /dev/null 2>&1 //注释:解压*.cpio.gz的安装包到当前的目录下面
此时在/home/oracle/Downloads目录下面会生成一个名为database的目录,进入database目录。
编辑install目录下面的oraparam.ini文件,在“Certified Versions”的项目中添加“redhat-6”。
vim /home/oracle/Downloads/database/install/oraparam.ini
添加红色部分内容。
[Certified Versions]
Linux=redhat-6,redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2
第二步: 安装Oracle 10g,在CentOS桌面运行“Application > System Tools > Terminal”,在命令行窗口运行./runInstaller进行安装:(注意:运行./runinstall的时候不要使用root用户,别的有可能最终出现的安装界面上的显示是乱码的,这是由于oracle不支持中文引起的,这是需要把安装界面临时设置成英文的,可使用如下命令:$exportLANG=en)
/home/oracle/Downloads/database/runInstaller
准备过程无误的情况下,安装界面如下:
第三步: 选择高级安装“Advanced Installation”,然后Next:
第四步: 指定产品清单目录和***明,默认即可:(注意:目录/usr/local/oracle必须属于oracle用户)
第五步: 选择安装类型,这里选择企业版“EnterpriseEdition”,点击“Product Language”按钮可以进行产品语言的选择:
第六步: 语言选择简体中文“Simplified Chinese”,选中后,点击OK,点击Next:
第七步: 指定安装主目录的详细信息,这里默认即可,点击Next:
第八步: 产品特定的先决条件检查(注:一般会出现1个warning,这里虚拟机安装出现了2个),默认即可,点击Next:
出现如下的Warning窗口,点击“Yes”继续:
第九步: 选择配置选项,这里我们先只安装数据库软件,稍后使用DBCA来创建数据库,点击Next:
第一〇步: 如下界面点击“Install”,进行数据库软件的安装:
第一一步: 安装过程中会有报错画面,直接“Continue”即可(注:我遇到过没有“Continue”按钮的报错 画面,基本安装是失败的):
第一二步: 安装出现如下界面的时候,需要运行终端工具“Terminal”,进入root用户执行提示的两句命令。
使用su root命令进入root用户,按顺序执行命令。(执行root.sh时候,直接Enter继续即可。)
/usr/local/oracle/oraInventory/orainstRoot.sh
/usr/local/oracle/product/10201/root.sh
第一三步: Oracle数据库软件安装完成,点击Exit退出。
紧接着需要在“Terminal”命令行执行如下命令:(这是一个编译连接的命令)
/usr/local/oracle/product/10201/bin/relink all
至此,Oracle数据库软件安装全部完成,这里仅仅安装了数据库软件,下面使用DBCA来创建一个数据库。
C. 使用DBCA创建Oracle数据库实例
在使用DBCA创建数据库之前,使用root用户执行下面的命令,将dba组添加到系统内核中。
echo 501 > /proc/sys/vm/hugetlb_shm_group
(501 是dba的GID)
创建数据库实例时使用oracle用户,不要使用root安装,否则会出现权限不匹配的问题。
第一步: 在终端输入dbca,使用DBCA创建Oracle10g数据库实例,默认,Next。
第二步: 选择配置选项,这里选择创建数据库“Create a Database”,点击Next。
第三步: 选择要创建的数据库类型,这里选择“General Purpose”,点击Next。
第四步: 数据库命名,这里的“Global Database Name” 和 “SID”必须和前面设置Oracle用户的环境变量中的ORACLE_SID相同,使用Oracle用户在终端执行echo $ORACLE_SID可以查看,点击Next。
第五步: 选择数据管理选项,默认即可,点击Next。
第六步: 设置所有数据库管理员的密码相同(管理员有SYS、SYSTEM、DBSNMP、SYSMAN),点击Next。
第七步: 选择数据库存储选项,默认即可,点击Next。
第八步: 默认即可,点击Next。
第九步: 指定备份和恢复选项,默认即可,点击Next。
第一〇步: 默认即可,点击Next。
第一一步: 选择数据库字符集,这里选择ZHS16GBK以支持中文。
第一二步: 概要,默认即可,点击Next。
第一三步: 选择数据库创建选项,默认即可,点击“Finish”。
第一四步: 至此,所有配置工作完成,默认即可,随后将会创建数据库。
点击OK后 如果出现提示界面 则需要将/usr/local/oracle 下所有文件的属主群改为oracle
否则创建时会出现权限不够的提示(目录以自己创建的为标准)
命令:
$chown oracle/usr/local/oracle
$chown –R oracle /usr/local/oracle
如果是root账户创建的dbca 则有可能出现以下报错:ORA-12546:TNS:permission denied
这时需要将已经创建的SID=bill 的数据库删除掉 ,重新再oracle用户的普通终端执行dbca 且要执行以下命令:
(目录以自己创建的为标准)
$chown oracle/usr/local/oracle
$chown –R oracle /usr/local/oracle
第一五步: 安装完成,退出Exit。
至此,使用DBCA创建数据库完成。
我们安装了数据库软件,创建了数据库实例,如果要访问数据库,还需要创建Listener。
接下来使用netca来创建Listener。在终端输入netca命名启动Listener配置程序,因为是第一次创建,所以所有的使用默认即可。
D. 使用 NETCA 创建 Oracle 10g Listener
Listener的保存位置在$ORACLE_HOME/network/admin 目录下面,实体文件是listener.ora,在Terminal终端输入“netca”:命令进行创建,下面创建步骤默认即可:
////////////监听配置结束
E. 设置开机启动Oracle 10g
注:如果遇到“ORA-27125:unable tocreate shared memory segment”的错误时,需要使用root用户运行“echo 501 > /proc/sys/vm/hugetlb_shm_group”(501为dba的SID)命令,该命令稍后加入到开机启动中。
启动Oracle 10g的顺序为先启动监听,再启动数据库:
启动监听:
lsnrctl start
关闭监听:
lsnrctl stop
启动数据库(先进入sqlplus,再startup):
sqlplus '/as sysdba'
startup
停止数据库:在sqlplus输入shutdown或者shutdown immediate。
设置开机启动,使用root用户权限在 /etc/rc.d/rc.local 文件中添加如下内容:
echo 501 > /proc/sys/vm/hugetlb_shm_group
su - oracle -c "/usr/local/oracle/product/10201/bin/lsnrctl start"
su - oracle -c "/usr/local/oracle/product/10201/bin/dbstart start"
su - oracle -c "isqlplusctl start"
su - oracle -c "emctl start dbconsole"
赋权
开启监听
开启数据库
开启isqlplus
开启Enterprise Manger
修改 /etc/oratab 文件,改为Y:
bill:/usr/local/oracle/product/10201:Y
重新启动reboot操作系统后,查看数据库管理页面:
http://192.168.0.205:5560/isqlplus/
用户名system,密码安装过程中设置的密码
http://192.168.0.205:1158/em/
用户名system,密码安装过程中设置的密码
数据库安装配置完成