从零安装oracle,让童鞋们再也不困惑

                    从零安装oracle,让童鞋们再也不困惑
简介说明:
   本文只作简单的安装介绍,不作安装详细说明;对安装oracle过程当中出现的问题给予解决,
让出入茅庐接触linux中使用oracle的童鞋们再也不郁闷~~~
1、配置基本环境
1.建立oracle数据库须要的组和用户
#groupadd oinstall
#groupadd dba
#useradd –g oinstall –G dba –d /home/oracle –m –r oracle
2.给oracle密码
#passwd oracle
new unix password: oracle
3.编辑oracle用户的环境变量.bash_profile
#vi .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
##########  Add the following a few lines   ##########
ORACLE_BASE=/u01/oracle
ORACLE_HOME=/u01/oracle/product/10.2.0/db_1
ORACLE_SID=shzq
LD_LIBRARY_PATH=$ORACLE_HOME/lib:.
PATH=$PATH:$ORACLE_HOME/bin:.
export NLS_LANG=American_america.ZHS16GBK
export PATH
export ORACLE_BASE ORACLE_SID ORACLE_HOME LD_LIBRARY_PATH
4.建立数据文件存储目录并给予相应权限
#mkdir /u0{1,2,3}
#chmod -R 775   /u0{1,2,3}
#chown -R oracle:oinstall  /u0{1,2,3}
5.增长相应的系统参数配置
//以root用户编辑/etc/sysctl.conf文件,增长
//若是在安装的时候出现系统文件认证文件不过,
//修改如下数字的大小与之对应
================================
kernel.shmall = 2097152
sharemem limits to 8G
kernel.shmmax = 4294967296
kernel.shmmni = 4096
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.wmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_max = 262144
===============================
// ----  2012年7月9日新增11g 参数
//以作虚拟机1G 内存,安装11.2.0.3.0 版
kernel.shmall = 2097152
kernel.shmmax = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr  = 1048576
===============================
//执行,使设置当即生效
#/sbin/sysctl -p
6.文件数和安全设置
#vi /etc/security/limits.conf
//增长如下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
#vi /etc/pam.d/login
//增长如下内容
session required /lib/security/pam_limits.so
-----------------------------------------------------------------------------------------
7.创建文件安装源目录
//使用oracle帐户登陆,执行
#cd /u03
#mkdir software
//将oracle 安装包上传到software中
//查看安装包软件权限是否是为 755,
//并属于oracle:oinstall
8.修改hosts文件和主机名
#vi /etc/hosts
192.168.1.11  oracle10g
#hostname oracle10g
9.安装包和编译环境
#yum -yt groupinstall "Developement Tools" "Development Libraries"
# yum localinstall *.rpm 
# rpm -ivh --nodeps *.rpm                 //2012年6月14日新增
// 如下N个包,固然要区分64bit和32bit(不解释)
compat-libstdc++-33-3.2.3-61.x86_64.rpm
gcc-4.1.2-46.el5.x86_64.rpm
gcc-c++-4.1.2-46.el5.x86_64.rpm
glibc-devel-2.5-42.i386.rpm
glibc-devel-2.5-42.x86_64.rpm
glibc-headers-2.5-42.x86_64.rpm
kernel-headers-2.6.18-164.el5.x86_64.rpm
libgomp-4.4.0-6.el5.x86_64.rpm
libstdc++-devel-4.1.2-46.el5.x86_64.rpm
libXau-devel-1.0.1-3.1.i386.rpm
libXau-devel-1.0.1-3.1.x86_64.rpm
libXp-1.0.0-8.1.el5.i386.rpm
libXp-1.0.0-8.1.el5.x86_64.rpm
libXp-devel-1.0.0-8.1.el5.i386.rpm
libXp-devel-1.0.0-8.1.el5.x86_64.rpm
----------------------------------------------------
//接下来就是安装oracle数据库了,在排除N个错误后
//恭喜你OK了!
10.给oracle建立监听
$netca
11.建立数据库
$dbca
若是你不能正常启动oracle,那么向下看!

-----------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
2、oracle安装排错
1.错误提示
sga size can not be greater than maxmum shared memory segment size ,refer to oracle installation guide to configure your operating system kernel parameters
 不能共享内存段尺寸,请参阅甲骨文安装指南设置你的操做系统内核的参数
在调整sysctl.conf后致使,参数设置和物理内存不一致的状况!(参考新增的sysctl.conf参数)
2.什么是oracle的 SID号
是一个数据库的惟一标识符!是创建一个数据库时系统自动赋予的一个初始ID,
SID主要用于在一些DBA操做以及与操做系统交互,从操做系统的角度访问实例名,必须经过ORACLE_SID
3.ORA-27102: out of memory
OS:CentOS5.4   1G内存
说明:一个参数的设置的不许确将会使oracle安装前功尽弃!!!
因此,从www得到文档不要照抄照搬,不然就必死无疑
/etc/sysctl.conf的shmall
//shmall这个参数设置的值过小就会报ORA-27102: out of memory
//对于32位系统,一页=4k,也就是4096字节。
kernel.shmall = 2097152  就是 2097152*4k/1024/1024 = 8G 就是说可用共享内存一共 8G
//设置参考
kernel.shmall = 2097152    ---内存8G
kernel.shmall = 4194304    ---内存16G
kernel.shmall = 8388608    ---内存32G
// 每一个参数值作个简要的解释和说明。
    (1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,oracle 一般将其设置为2G。
    (2)shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 ,一般不须要更改。
    (3)shmall:该参数表示系统一次可使用的共享内存总量(以页为单位)。缺省值就是2097152.一般不须要修改。
    (4)sem:该参数表示设置的信号量。
    (5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中能够打开的文件数量。
# /sbin/sysctl -p
-----------------------------------------------------------------------------------------
4.oracle数据库的network配置参考(见附件)
A:listener.ora
# listener.ora Network Configuration File: /u01/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /u01/oracle/product/10.2.0/db_1)
      (PROGRAM = extproc)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))
    )
  )
B:sqlnet.ora
# sqlnet.ora Network Configuration File: /u01/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
C:tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
SHZQ =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = shzq)
    )
  )
EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )
-----------------------------------------------------------------------------------------
5.若是安装Oracle发现swap分区太小的状况,则能够手动去扩展swap分区的大小
//使用root用户
#dd if=/dev/zero of=/home/swap bs=1024 count=1024000
//建立/home/swap分区文件。大小为1024000个block,通常状况下1个block为1K,因此这里空间是1024M(1G);
//指定分区类型为swap
//使用mkswap命令把分区变成swap分区以下
#/sbin/mkswap /home/swap
//让配置的swap生效
#/sbin/swapon /home/swap
//free -m 查看swap和内存大小
#free -m
//修改/etc/fstab文件让其自动挂载
#/home/swap   swap   swap   defaults   0 0
6.让另外一台客户端或者应用服务器链接本服务器的oracle数据库
//前提:客户端或者应用服务器必须至少安装oracle客户或者oracle数据库
错误提示:
>sqlplus /nolog
SQL> conn '/as sysdba'
 请输入口令:  ******
 ERROR:
 ORA-12560: TNS: 协议适配器错误
 
SQL> connect system/manager
 ERROR:
 ORA-12560: TNS: 协议适配器错误
//说明:从客户端或者应用服务器(linux或WIN)
#tnsnping 192.168.1.11
#tnsping oracle10g        //须要作好解析
//以windows为例:
C:\Documents and Settings\Administrator>tnsping 192.168.1.11
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 15-2月 -
2012 14:16:18
Copyright (c) 1997, 2005, Oracle.  All rights reserved.
已使用的参数文件:
D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
已使用 EZCONNECT 适配器来解析别名
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=192.168.1.11))(AD
DRESS=(PROTOCOL=TCP)(HOST=192.168.1.11)(PORT=1521)))
OK (20 毫秒)
-----------------------------------------------------------------------------------------
7.客户端链接oracle配置文件实例:(见附件)
A:listener.ora
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.11)(PORT = 1521))
    )
  )
B:sqlnet.ora
# sqlnet.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
C:tnsnames.ora
# tnsnames.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
SHZQ =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.11)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = shzq)
    )
  )
EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )
-----------------------------------------------------------------------------------------
8.oracle安装完成,系统自带的用户和密码
//internal/oracle 
// sys/change_on_install
//system/manager
//scott/tiger
//sysman/oem_temp
3、使用PLSQL Developer 管理linux Oracle服务器
1.登录
2.使用
3.功能
 
说明: //1.本文不在于重在oracle安装,而是oracle安装过程当中的排错 //2.安装后的调试(本文章只对此作技术支持MAIL: linuxhzg#qq.com 将#换为@) //3.客户端和软件的使用 //4.下次更新tomcat应用链接oracle数据库 //5.仅做为推荐《Oracle Database 11g数据库管理艺术》给读者,无任何广告之意!
相关文章
相关标签/搜索