安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM
《前期准备工作》
安装配置系统环境
安装linux ,
所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭)打开终端,执行如下命令,检查安装包,没有的都要安装
make, glibc, libaio
compat-libstdc++, compat-gcc-34, compat-gcc-34-c++, gcc, libXp
openmotif, compat-db
查询glib有没有安装
# rpm -qa | grep glib
如果没有则进行安装,安装需要挂载RHEL5这种光盘
# mount /dev/cdrom /media # cd /media/Server
然后使用rpm包安装方式进行安装
# rpm -ivh compat-gcc-34-* --nodeps # rpm -ivh openmotif-* --nodeps # rpm -ivh libXp-* --nodeps # rpm -ivh compat-db-* --nodeps
修改内核参数
增加下面的内容到文件 /etc/sysctl.conf 中: kernel.shmall = 2097152--系统可以使用的内存页的最大数量 kernel.shmmax = 2147483648--单个共享内存段的最大大小,单位是字节 kernel.shmmni = 4096--内存页的大小 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=262144 net.core.rmem_max=262144 net.core.wmem_default=262144net.core.wmem_max=262144
运行下面的命令使得内核参数生效:
/sbin/sysctl -p
vi /etc/security/limits.conf 行末添加以下内容
#use for oracle * soft nproc 2047 * hard nproc 16384 * soft nofile 1024 * hard nofile 65536
vi /etc/pam.d/login 行末添加以下内容
session required pam_limits.so
关闭防火墙,vi /etc/selinux/config 确保以下内容
SELINUX=disabled关闭SELIINUX
配置工作做好了,我们现在开始真正图形化界面安装新增组和用户:
groupadd oinstall groupadd dba groupadd operuseradd -g oinstall -G dba oraclepasswd oracle oinstall:属于此组的用户才能安装 oracledba:属于此组的用户才能进行sys这个用户的的操作系统验证 oper:属于此组的用户才能进行public这个用户的的操作系统验证
创建Oracle的安装目录,并把权限付给oracle用户:
mkdir -p /u01/app/oracle chown -R oracle:oinstall /u01 chmod -R 775 /u01
因为oracle 的官方只支持到RHEL4为止,所以要修改版本说明,编辑文件 /etc/redhat-release 把Red Hat Enterprise Linux Server release 5 (Tikanga) 改成版本4:redhat-4oracle 用户的环境变量
以 oracle 身份登录,并通过在 .bash_profile 中添加以下行
增加下列内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
切换账号
# su - oracle 这里解释一下:su 加不加-的区别,加-了当前的用户环境由后面的用户决定。不加的话则有root这个用户的环境决定。
我们将10201_database_linux32.zip,p8202632_10205_LINUX.zip,p8350262_10205_Generic.zip拷贝到/u01路径下。这里介绍一下三个文件的作用:
10201_database_linux32.zip : oracle_database_10.2.0.1.0版本。
p8202632_10205_LINUX.zip : 将oracle_database_10.2.01版本升级到10.2.0.5.0版本的补丁文件
p8350262_10205_Generic.zip : 这是em的补丁文件
拷贝完成后进行解压操作
# : unzip 10201_database_linux32.zip
解压完成后,文件夹多了个database文件夹。
# : cd database
进入后里面有这么多个文件
【doc、 install、 response、 runInstaller、 stage、 welcome.html】
执行操作:
# : ./runInstaller
这里会发生一个异常:
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(Unknown Source)
at java.awt.Window.init(Unknown Source)
at java.awt.Window.<init>(Unknown Source)
at java.awt.Frame.<init>(Unknown Source)
at oracle.ewt.popup.PopupFrame.<init>(Unknown Source)
at oracle.ewt.lwAWT.BufferedFrame.<init>(Unknown Source)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.<init>(OiocOneClickInstaller.java:378)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.main(OiocOneClickInstaller.java:2091)
解释一下:发生异常的原因是因为oracle用户没有执行图形化界面的权限
我们新开一个窗口:切换到管理员权限
# xhost +access control disabled, clients can connect from any host
这里解释一下:xhost + 这个命令允许别的用户的启动程序将图形显示在当前的屏幕上。
回到上个窗户再次执行:
$ : .runInstall
立刻出现画面,接下来就是进行图形化界面的安装了。安装内容请看图片的红颜色的笔记。
这里报了一个网络错误,这个时候我们就需要处理了。
$ vi /etc/hosts 修改hosts的配置文件删除最后一行的内容,在最后一行加上主机的IP地址和主机名,并将第三行IP地址上面你的主机名给删除,不能让两个IP地址都对应同一个主机名,也就是不能有两个oracle出现。配置好了如下。
OK,完成后出现这个界面,这个时候我们需要将这两个脚本运行一下下。
# /u01/app/oracle/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oracle/oraInventory to 770.
Changing groupname of /u01/app/oracle/oraInventory to oinstall.
The execution of the script is complete
执行第二个脚本,这个时候出现一些询问,不管他,直接按Enter键就好了
# /u01/app/oracle/10.2.0/db_1/root.sh
Running Oracle10 root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/10.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n)
[n]:
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
至此,我们的Linux中安装oracle-10.2.0.1.0安装完成了。
你可以在oracle用户目录下输入以下操作:
$ sqlplus / as sysdba
le dSQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 12 21:40:20 2014ase]Copyright (c) 1982, 2005, Oracle. All rightsreserved.
Connected to an idle instance.
SQL>
显示如此证明Release 10.2.0.1.0安装成功。