安装流程:前期准备工作—>安装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安装成功。