linux下安装oracle11g R2

浏览: 2728

查看linux系统位数 file /sbin/init 或者 file /bin/ls

[root@localhost proc]# file /sbin/init
/sbin/init: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), 
dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

目录:

一、安装准备

     1、下载oracle安装包,解压缩

     2、检查虚拟机磁盘空间等

     3、创建Oracle用户

     4、安装目录配置

     5、修改内核参数

     6、修改用户限制

     7、修改用户验证选项

     8、修改用户配置文件

     9、修改用户bash shell

二、ORACLE安装过程

     1、执行./runInstaller

三、创建数据库

     1、执行dbca创建数据库

四、配置监听及本地网络服务

     1、输入命令netca

     2、创建监听服务

     3、配置本地网络服务名


错误及解决方法,详情见文中:

1、缺少包 unixODBC-2.2.11 和 unixODBC-devel-2.2.11 pdksh-5.2.14

      解决办法:安装包

2、输入dbca命令报错 bash:dbca :command not found

      解决办法:检查 /etc/profile 和 .bash_profile两个文件 查看oracle路径是否配置有误

3、问题:The Oracle system identifier(SID) "xxx" already exists. Specify another SID

      解决办法:

                    a、删除u01/admin下的xxx文件

                    b、删除u01/oradata下的xxx文件夹

                    c、用root用户以远程登录模式编辑etc/oratab,删除最后一 行: xxx:/u01/oracle:N ,保存  退出问题解决。

4、 system01.dbf is not writable

      解决办法:给 system01.dbf  文件赋权  chmod 666 system01.dbf

5、ORA-12541 :TNS:no listener 

      解决办法:检查监听是否启动、网络是否可用

一、安装准备

1、下载oracle安装包,解压缩

[root@localhost opt]# unzip linux.x64_11gR2_database_1of2.zip 
[root@localhost opt]# unzip linux.x64_11gR2_database_2of2.zip 

会在本目录下面出现一个database的目录,大概2.3g左右大小。

 Clipboard Image.png

2、检查虚拟机磁盘空间等

  • 内存
[root@localhost database]# grep MenTotal /proc/meminfo 
  • 交换空间
[root@localhost database]# grep SwapTotal /proc/meminfo 
  • 磁盘空间
[root@localhost database]# df -ah
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        18G  9.9G  6.8G  60% /
proc               0     0     0    - /proc
sysfs              0     0     0    - /sys
devpts             0     0     0    - /dev/pts
tmpfs           947M   72K  947M   1% /dev/shm
/dev/sda1       291M   36M  240M  14% /boot
none               0     0     0    - /proc/sys/fs/binfmt_misc
vmware-vmblock     0     0     0    - /var/run/vmblock-fuse
  • 安装需要的软件包:依次执行:rpm -qa | grep
[root@localhost database]#rpm -qa

注释:

qa要匹配包的名字

grep 匹配关键字就可以了

使用rpm -qa命令,确保以下包已成功安装

rpm -qa|grep gcc

rpm -qa|grep kernel

简单说这是查找己安装软件包的命令,

其中gcc和kernel是要查找软件包的简称。

以kernel为例将会列出所有包含kernel字段的软件包全称。

创建oracle组和oracle用户

  • 需要安装以下RPM软件包
yum install -y binutils*
yum install -y compat-libstdc*
yum install -y elfutils-libelf*
yum install -y gcc*
yum install -y glibc*
yum install -y ksh*
yum install -y libaio*
yum install -y libgcc*
yum install -y libstdc*
yum install -y make*
yum install -y sysstat*
yum install libXp* -y
yum install -y glibc-kernheaders 
  • 检查下lib是否安装齐全:
 rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs

3、创建Oracle用户

  • root用户:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba oracle(主组oinstall,其它组:dba)
# passwd oracle

Clipboard Image.png

4、安装目录配置

  • root用户
# mkdir -p /opt/oraInventory
# chown -R oracle:oinstall /opt/
# chmod -R 775 /opt/

Clipboard Image.png

5、修改内核参数

  • root用户修改 /etc/sysctl.conf 文件,加上如下参数
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
  • 为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p

6、修改用户限制

  • root用户:修改 /etc/security/limits.conf 文件,加上下面的参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

7、修改用户验证选项

  • root用户下:修改/etc/pam.d/login文件加上如下参数
session required /lib/security/pam_limits.so
session required pam_limits.so

8、修改用户配置文件

  • root用户下:修改/etc/profile文件加入如下参数:
ORACLE_BASE=/home/oracle/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$ORACLE_HOME/bin$SQOOP_HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

Clipboard Image.png

9、修改用户bash shell

  • 配置oracle用户的环境变量,切换到新创建的oracle用户下
#su - oracle
$ vi .bash_profile
  • 增加如下内容,主要是修改

umask 022
export ORACLE_BASE=/home/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

Clipboard Image.png

  • 完成后执行:
#env | grep ORA查看环境变量是否完成

Clipboard Image.png


二、安装过程

1、执行./runInstaller

当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆

  • 进入解压oracle后的目录,执行./runInstaller

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

  • 注意密码的规则 要有大小写和数字 Cimc_1234

Clipboard Image.png

报错:

缺少包 unixODBC-2.2.11 和 unixODBC-devel-2.2.11 pdksh-5.2.14

Clipboard Image.png

解决 方法:安装包

yum install unixODBC
yum install unixODBC-devel

手动安装 pdksh-5.2.14包

wget http://mirror.centos.org/centos/5/os/i386/CentOS/pdksh-5.2.14-37.el5_8.1.i386.rpm
yum install pdksh-5.2.14-37.el5_8.1.i386.rpm

返回虚拟机再次验证

Clipboard Image.png

勾选 忽略

Clipboard Image.png

Clipboard Image.png

  • 安装结束后,切换到root用户执行两个脚本
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
sh root.sh
cd /home/oracle/app/oraInventory
sh orainstRoot.sh

Clipboard Image.png

三、创建数据库

1、执行dbca创建数据库

  • oracle用户的图形界面oracle用户中,输入命令dbca安装数据库。

Clipboard Image.png

如果输入dbca命令报错 bash:dbca :command not found

检查 /etc/profile 和 .bash_profile两个文件 查看oracle配置路径是否有误

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

问题:The Oracle system identifier(SID) "xxx" already exists. Specify another SID

解决办法:

 1、删除u01/admin下的xxx文件

 2、删除u01/oradata下的xxx文件夹

 3、用root用户以远程登录模式编辑etc/oratab,删除最后一 行: xxx:/u01/oracle:N ,保存  退出问题解决。

Clipboard Image.png

  • 统一密码 cimc_1234

Clipboard Image.png

  • 数据库存放位置,默认

Clipboard Image.png

Clipboard Image.png

报错 system01.dbf is not writable

解决方法 授权:chmod 666 system01.dbf

Clipboard Image.png

  • 不指定快速恢复和归档

Clipboard Image.png

Clipboard Image.png

  • 内存分配及指定字符集

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

  • 点击 OK

Clipboard Image.png

Clipboard Image.png

  • 安装完成,验证
 sqlplus "/ as sysdba"

Clipboard Image.png


四、配置监听及本地网络服务

1、输入命令netca

  • 在oracle用户的图形界面oracle用户中,输入命令netca 会弹出如下界面。

Clipboard Image.png

2、创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

监听已经存在 端口也被占用了 所以 我就不建监听了 。。。,选择取消

3、配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

  • 输入oracle服务器的ip地址

Clipboard Image.png

Clipboard Image.png

  • 点击change Login 输入所连接oracle服务器的其中某一个用户名和密码,点击OK

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

报错ORA-12541 :TNS:no listener

解决方法:验证网络、查看监听状态

  • 验证网络,网络没有问题

Clipboard Image.png

  • 查看监听状态 $lsnrctl status

Clipboard Image.png

  • 用 oracle:~ # lsof -i:1521 如果有返回信息,就说明侦听是启用的,如果没有返回任何信息说明侦听是停用的,或者用 lsnrctl start

Clipboard Image.png

  • 监听没有启用,启用监听

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

  • 为你所设置的本地网络服务名起个名字

Clipboard Image.png

Clipboard Image.png

Clipboard Image.png

这样oracle服务器安装配置基本就完成了。

推荐 1
本文由 liliwu 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

感谢我自己的不懈努力。。。。遇到好多奇葩问题

要回复文章请先登录注册