centos6.5安装oracle数据库详细

折腾了好久,总结一下分享希望能帮助有需要的童鞋。

1、官方网站下载http://www.oracle.com/cn/downloads/index.html 安装包,有2个包,大约2GB左右

包名称:

linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip

我是用迅雷下载的存在本地一份再用WinSCP传到服务器上

服务器信息

配置要求什么检查的就不说了,精简详细说明关键步骤

服务器信息

[root@template ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda3        16G  3.5G   12G  24% /
tmpfs            16G     0   16G   0% /dev/shm
/dev/vda1       194M   34M  151M  19% /boot
/dev/vdb        985G  1.4G  933G   1% /data

所以把oracle安装到/data下

预备工作 需要使用到的工具

1.使用root用户登录操作系统

2.yum 安装 unzip 软件,用来解压上传的Oracle安装文件。

[root@CentOS ~]# yum install unzip –y

3.解压Oracle 安装程序

两个压缩包上传到tmp目录下

[root@CentOS ~]# cd /tmp
[root@CentOS tmp]# unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip

等待解压完成后,会在/tmp目录下生产一个database文件夹,里面就Oracle 11g安装文件。

4.关闭selinux

[root@CentOS tmp]# vim /etc/selinux/config

设置SELINUX=disabled

5.关闭防火墙


[root@CentOS tmp]# service iptables stop

6.安装Oracle 11g依赖包

[[email protected] tmp]# yum install yum install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y

7.添加安装用户和用户组

[root@CentOS tmp]# groupadd oinstall
[root@CentOS tmp]# groupadd dba
[root@CentOS tmp]# useradd -g oinstall -G dba oracle
[root@CentOS tmp]# passwd oracle
[root@CentOS tmp]# id oracle
uid=1001(oracle) gid=1001(oinstall) 组=1001(oinstall),1002(dba)

8.修改内核参数配置文件 (有待验证)

[[email protected] ~]# vim /etc/sysctl.conf

添加以下内容

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 1073741824

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 = 1048576

[[email protected] ~]# sysctl –p

其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。

9.修改用户的限制文件


[root@CentOS ~]# vim /etc/security/limits.conf

添加以下内容

oracle           soft    nproc           2047
oracle           hard    nproc           16384
oracle           soft    nofile          1024
oracle           hard    nofile          65536
oracle           soft    stack           10240

修改/etc/pam.d/login文件:

[root@CentOS ~]# vim /etc/pam.d/login

添加以下内容:


session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so

修改/etc/profile文件:

[root@CentOS ~]# vim /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

12.创建安装目录和设置文件权限


[root@CentOS ~]# mkdir -p /u01/app/oracle/product/11.2.0
[root@CentOS ~]# mkdir /u01/app/oracle/oradata
[root@CentOS ~]# mkdir /u01/app/oracle/inventory
[root@CentOS ~]# mkdir /u01/app/oracle/fast_recovery_area
[root@CentOS ~]# chown -R oracle:oinstall /u01/app/oracle
[root@CentOS ~]# chmod -R 775 /u01/app/oracle

13.设置oracle用户环境变量

[root@CentOS ~]# su - oracle
[oracle@CentOS ~]$ vim .bash_profile

添加如下内容:

ORACLE_BASE=/data/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
~              

14.编辑静默安装响应文件

[oracle@CentOS ~]$ cp -R /tmp/database/response/ .
[oracle@CentOS ~]$ cd response/
[oracle@CentOS response]$ vim db_install.rsp

具体解释

oracle.install.option=INSTALL_DB_SWONLY //29 行 安装类型
ORACLE_HOSTNAME=java-linux-test //37 行 主机名称(自己对应的主机名称,可利用hostname查看)
UNIX_GROUP_NAME=oinstall //42 行 安装组
INVENTORY_LOCATION=/soft/u01/oraInventory //47 行 INVENTORY目录 必须在ORACLE_BASE路径以外
SELECTED_LANGUAGES=en,zh_CN,zh_TW //78 行 选择语言
ORACLE_HOME=/soft/u01/app/oracle/product/11.2.0/db_1 //83 行 oracle_home
ORACLE_BASE=/soft/u01/app/oracle //88 行 oracle_base
oracle.install.db.InstallEdition=EE //99 行 oracle版本
oracle.install.db.isCustomInstall=true //108行 自定义安装
oracle.install.db.DBA_GROUP=dba //142行 dba用户组
oracle.install.db.OPER_GROUP=oinstall //147行 oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //160行 数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //165行 globalDBName
oracle.install.db.config.starterdb.SID=orcl //170行 SID
oracle.install.db.config.starterdb.memoryLimit=512 //192行 自动管理内存的最小内存(M)(200行)
oracle.install.db.config.starterdb.password.ALL=oracle //233行 设定所有数据库用户使用同一个密码
DECLINE_SECURITY_UPDATES=true //385行 设置安全更新
        具体可查看db_install.rsp文件

特别注意路径的正确性! 楼主就是因为ORACLE_HOME=/soft/u01/app/oracle/product/11.2.0/db_1 **这里多写一个等号折腾了好久 另外 如果出现报错要多查日志

INFO: size estimation for EEinstall is 4397.013998031616
SEVERE: [FATAL] [INS-32015] 为Oracle 主目录位置指定的位置无效。
   原因: 指定的位置不能供Oracle 主目录位置使用。在系统上找不到指定的位置或检测到该位置是一个文件。
   操作: 为Oracle 主目录位置指定有效位置。
WARNING: [WARNING] [INS-32018] 所选 Oracle 主目录位于 Oracle 基目录外部。
   原因: 所选 Oracle 主目录位于 Oracle 基目录外部。
   操作: Oracle 建议在 Oracle 基目录中安装 Oracle 软件。请相应调整 Oracle 主目录或 Oracle 基目录。
SEVERE: [FATAL] [INS-32021] 此卷上用于所选 Oracle 主目录的磁盘空间不足。
   原因: 所选 Oracle 主目录所在的卷上没有足够的磁盘空间。
   操作: 请为 Oracle 主目录选择具有足够空间 (最低 4,397MB) 的位置, 或释放现有卷上的空间。

官网给出的错误信息参考**

http://docs.oracle.com/cd/E11882_01/server.112/e17766/common_errormessages.htm#INS-30001

开始安装了,根据响应文件静默安装Oracle 11g

[oracle@CentOS response]$ cd /tmp/database/
[oracle@CentOS database]$ ./runInstaller -silent -responseFile  -ignorePrereq /oracle/response/db_install.rsp//文件路径

开始Oracle在后台静默安装。安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。

可以在以下位置找到本次安装会话的日志:

/u01/app/oracle/inventory/logs/installActions2015-06-08_04-00-25PM.log

可以切换终端执行top命令查看后台进程一直是在安装的,/u01目录也在不断增大,

当出现以下提示时,代表安装成功:

按照要求执行脚本。

打开终端,以root身份登录,执行脚本:

[[email protected] ~]# sh /u01/app/oracle/inventory/orainstRoot.sh

[[email protected] ~]# sh /u01/app/oracle/product/11.2.0/root.sh

以下是安装成功界面

./runInstaller -silent -responseFile /oracle/response/db_install.rsp -ignorePrereq
正在启动 Oracle Universal Installer...

检查临时空间: 必须大于 120 MB。   实际为 5234 MB    通过
检查交换空间: 必须大于 150 MB。   实际为 4095 MB    通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2016-05-24_05-04-22PM. 请稍候...[[email protected] database]$ 可以在以下位置找到本次安装会话的日志:
 /data/app/oraInventory/logs/installActions2016-05-24_05-04-22PM.log
以下配置脚本需要以 "root" 用户的身份执行。
 #!/bin/sh
 #要运行的 Root 脚本

/data/app/oraInventory/orainstRoot.sh
/data/app/oracle/product/11.2.0/root.sh
要执行配置脚本, 请执行以下操作:
         1. 打开一个终端窗口
         2. 以 "root" 身份登录
         3. 运行脚本
         4. 返回此窗口并按 "Enter" 键继续

Successfully Setup Software.

先打个草稿 明天再搞监听

以静默方式配置监听

昨天配监听的时候还报了一个错

 netca /silent /responsefile /oracle/response/netca.rsp     

正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /oracle/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Caught UnknownHostException: template: template
Oracle Net 监听程序启动:
Caught UnknownHostException: template: template
为该监听程序提供的信息正由此计算机上的其他软件使用。
    未能启动监听程序。
有关详细信息, 请查看跟踪文件: /data/app/oracle/cfgtoollogs/netca/trace_OraDb11g_home1-1605245下午3216.log
Oracle Net Services 配置失败。退出代码是1

日志:

[main] [ 2016-05-24 17:34:19.619 CST ] [ConfigureListener.isPortFree:1051]  No IP address returned for local host.
[main] [ 2016-05-24 17:34:19.620 CST ] [ConfigureListener.isPortFree:1055]  Creating ServerSocket on Port:1521, Local IP Address: /127.0.0.1
[main] [ 2016-05-24 17:34:19.620 CST ] [ConfigureListener.isPortFree:1059]  Created ServerSocket successfully.
[main] [ 2016-05-24 17:34:19.620 CST ] [ConfigureListener.isPortFree:1065]  Creating ServerSocket on Port:1521
[main] [ 2016-05-24 17:34:19.620 CST ] [ConfigureListener.isPortFree:1068]  Created ServerSocket successfully.
[main] [ 2016-05-24 17:34:19.620 CST ] [ConfigureListener.isPortFree:1088]  Returning is Port 1521 free: false

今天一早来再运行这个命令

[root@template ~]# $ORACLE_HOME/bin/netca /silent /responseFile /oracle/response/netca.rsp
Oracle Net Configuration Assistant cannot be run as root.
[root@template ~]# su oracle
[oracle@template root]$ ^C
[oracle@template root]$ $ORACLE_HOME/bin/netca /silent /responseFile /oracle/response/netca.rsp

正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /oracle/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
监听程序 "LISTENER" 已存在。
成功完成 Oracle Net Services 配置。退出代码是0

居然又可以了 神奇 神奇

静默安装数据库

修改仅安装数据库的响应文件/home/oracle/etc/dbca.rsp

GDBNAME=”orcl.java-linux-test” //78 行 全局数据库的名字=SID+主机域名

SID=”orcl” //149行 SID

CHARACTERSET=”AL32UTF8” //415行 数据库字符集编码,注意将前面的#号去掉(改为ZHS16GBK待测试)

NATIONALCHARACTERSET=”UTF8” //425行 编码

SYSPASSWORD=”sys”//190行 密码可自己设置

SYSTEMPASSWORE=”system”//200行 密码可自己设置

具体可查看dbca.rsp文件

进行静默安装数据库

[oracle@template root]$ $ORACLE_HOME/bin/dbca -silent -responseFile  /oracle/response/dbca.rsp
sh: /bin/ksh: No such file or directory
sh: /bin/ksh: No such file or directory
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
18% 已完成
26% 已完成
37% 已完成
正在创建并启动 Oracle 实例
40% 已完成
45% 已完成
50% 已完成
55% 已完成
56% 已完成
60% 已完成
62% 已完成
正在进行数据库创建
66% 已完成
70% 已完成
73% 已完成
85% 已完成
96% 已完成
100% 已完成
有关详细信息, 请参阅日志文件 "/data/app/oracle/cfgtoollogs/dbca/orcl11g/orcl11g.log"。

启动监听又遇到问题了


[[email protected] root]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-5月 -2016 10:33:02

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/data/app/oracle/product/11.2.0/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/data/app/oracle/product/11.2.0/network/admin/listener.ora
写入/data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
TNS-12533: TNS: 非法的 ADDRESS 参数
 TNS-12560: TNS: 协议适配器错误
  TNS-00503: 非法的 ADDRESS 参数

监听程序未能启动。请参阅上面的错误消息...

vim /data/app/oracle/product/11.2.0/network/admin/listener.ora查看到

# listener.ora Network Configuration File: /data/app/oracle/product/11.2.0/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = /data/app/oracle
~                                                         

修改为

(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

再执行

[[email protected] ~]# lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-5月 -2016 10:38:02

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/data/app/oracle/product/11.2.0/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/data/app/oracle/product/11.2.0/network/admin/listener.ora
写入/data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 11.2.0.1.0 - Production
启动日期                  25-5月 -2016 10:38:07
正常运行时间              0 天 0 小时 0 分 5 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /data/app/oracle/product/11.2.0/network/admin/listener.ora
监听程序日志文件          /data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
监听程序不支持服务
命令执行成功

再查看状态

[[email protected] ~]# lsnrctl status

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-5月 -2016 10:40:34

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 11.2.0.1.0 - Production
启动日期                  25-5月 -2016 10:38:07
正常运行时间              0 天 0 小时 2 分 32 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /data/app/oracle/product/11.2.0/network/admin/listener.ora
监听程序日志文件          /data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "orcl11g.us.oracle.com" 包含 1 个实例。
  实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
命令执行成功

今天又遇到一个奇葩的事情

在改了ORACLE_SID后启动监听

[[email protected] pfile]$  lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-5月 -2016 16:48:28

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/data/app/oracle/product/11.2.0/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/data/app/oracle/product/11.2.0/network/admin/listener.ora
写入/data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
TNS-01201: 监听程序无法找到可执行的/data/app/oracle/product/11.2.0/bin/orcl11g以用于 SID orcl11g

错误信息

TNS-01201: 监听程序无法找到可执行的/data/app/oracle/product/11.2.0/bin/orcl11g以用于 SID orcl11g

谷歌了一下

大概说是路径不对

参考这篇这里写链接内容

echo $ORACLE_SID

这个要和文件/data/app/oracle/product/11.2.0/network/admin/listener.ora

中 (ORACLE_HOME=/data/app/oracle/product/11.2.0)

相同

我这里是相同的。那就奇了怪了。想起了以前好像也遇到过这种怀疑是不是有空格的原因。删掉了等号两边的空格 再执行启动

[[email protected] pfile]$  lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-5月 -2016 16:57:22

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

启动/data/app/oracle/product/11.2.0/bin/tnslsnr: 请稍候...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
系统参数文件为/data/app/oracle/product/11.2.0/network/admin/listener.ora
写入/data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 11.2.0.1.0 - Production
启动日期                  25-5月 -2016 16:57:27
正常运行时间              0 天 0 小时 0 分 10 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /data/app/oracle/product/11.2.0/network/admin/listener.ora
监听程序日志文件          /data/app/oracle/diag/tnslsnr/template/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "orcl11g" 包含 1 个实例。
  实例 "orcl11g", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功

成功了!一个空格的原因!!! 再一次吸取教训!以后遇到不要再折腾浪费时间了!

问题又来了

 [[email protected] pfile]$  sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 5月 25 17:04:46 2016

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

已连接到空闲例程。

SQL> select status from v$instance;
select status from v$instance
*
第 1 行出现错误:
ORA-01034: ORACLE not available
进程 ID: 0
会话 ID: 0 序列号: 0

错误信息

ORA-01034: ORACLE not available

启动实例失败

ORA-01078: failure in processing system parameters

SQL> connect sys as sysdba
输入口令:
已连接到空闲例程。
SQL> startup nomount
ORA-01078: failure in processing system parameters
LRM-00109: ???????????????? ‘/data/app/oracle/product/11.2.0/dbs/initorcl11g.ora‘

谷歌到

这是因为在oracle9i和oracle10g中,数据库默认将使用spfile启动数据库,如果spfile不存在,则就会出现上述错误。
解决方法:
将$ORACLE_BASE/admin/数据库名称/pfile目录下的init.ora.012009233838形式的文件copy到$ORACLE_HOME/dbs目录下initoracle.ora即可。(注:initoracle.ora中的oracle为你的实例名 ORACLE_SID)

没有什么卵用 还是ORA-01078: failure in processing system parameters

猜想是不是复制的时候权限问题,改了权限

chmod 777 initorcl11g.ora

果然 报错不一样了

SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name ‘LISTENER_ORCL‘

谷歌到这篇

实用很奏效!坚持就是胜利!

[root@template dbs]# su oracle
[oracle@template dbs]$ strings spfileorcl.ora  > initorcl.ora
[oracle@template dbs]$ grep local_liste initorcl.ora
*.local_listener=‘LISTENER_ORCL‘

修改这个文件

[oracle@template dbs]$ vim initorcl.ora
  *.local_listener=‘LISTENER_ORCL‘
  这里改为下面这行
*.local_listener=‘(ADDRESS_LIST=(Address=(Protocol=TCP)(Host=127.0.0.1)(Port=1521)))‘
*.memory_target=13464764416

不容易

startup 加载的是这个文件/data/app/oracle/product/11.2.0/dbs/initorcl11g.ora

修改local_listener值为下面这行

local_listener=’(ADDRESS_LIST=(Address=(Protocol=TCP)(Host=127.0.0.1)(Port=1521)))’

[[email protected] root]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 5月 25 17:47:11 2016

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> connect sys as sysdba
输入口令:
已连接到空闲例程。
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name ‘LISTENER_ORCL‘
这里是修改了上面文件之后运行的
SQL> startup nomount pfile=‘/data/app/oracle/product/11.2.0/dbs/initorcl.ora‘
ORACLE 例程已经启动。

Total System Global Area 1.3429E+10 bytes
Fixed Size                  2217992 bytes
Variable Size            6845106168 bytes
Database Buffers         6576668672 bytes
Redo Buffers                4661248 bytes
SQL>
SQL>  select status from v$instance;

STATUS
------------------------
STARTED

数据库正常启动。

一些奇奇怪怪的问题也遇到不少。后面就没有条理了。只是单纯的纪录过程,有空再来整理一下。

接下来还要弄开机启动

要注意权限问题!

 1.修改/u01/app/oracle/product/11.2.0/bin/dbstart
[oracle@CentOS ~]$ vim /u01/app/oracle/product/11.2.0/bin/dbstart
将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
2.修改/u01/app/oracle/product/11.2.0/bin/dbshut
[oracle@CentOS ~]$ vim /u01/app/oracle/product/11.2.0/bin/dbshut
将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
3.修改/etc/oratab文件
[oracle@CentOS ~]$ vim /etc/oratab
将orcl:/u01/app/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/u01/app/oracle/product/11.2.0:Y
4.输入命令dbshut和dbstart测试
[oracle@CentOS ~]$ dbshut

5.切换到root账户建立自启动脚本
[oracle@CentOS ~]$ su -
[root@CentOS ~]# vim /etc/rc.d/init.d/oracle
添加以下内容(有些值如ORACLE_HOME和ORACLE_USER等根据实际情况可以修改):
#!/bin/bash

# oracle: Start/Stop Oracle Database 11g R2
# chkconfig: 345 90 10
# description: The Oracle Database is an Object-Relational Database Management System.
#
. /etc/rc.d/init.d/functions
LOCKFILE=/var/lock/subsys/oracle
ORACLE_HOME=/data/app/oracle/product/11.2.0
ORACLE_USER=oracle
case "$1" in
‘start‘)
   if [ -f $LOCKFILE ]; then
      echo $0 already running.
      exit 1
   fi
   echo -n $"Starting Oracle Database:"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"
   touch $LOCKFILE
   ;;
‘stop‘)
   if [ ! -f $LOCKFILE ]; then
      echo $0 already stopping.
      exit 1
   fi
   echo -n $"Stopping Oracle Database:"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"
   su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
   rm -f $LOCKFILE
   ;;
‘restart‘)
   $0 stop
   $0 start
   ;;
‘status‘)
   if [ -f $LOCKFILE ]; then
      echo $0 started.
      else
      echo $0 stopped.
   fi
   ;;
*)
   echo "Usage: $0 [start|stop|status]"
   exit 1
esac
exit 0

6.修改/etc/init.d/oracle服务文件权限

[[email protected] init.d]# chmod 755 /etc/init.d/oracle

7.设置为开机启动

[[email protected] ~]# chkconfig oracle on

8.进行service oracle start/stop/restart测试

9.Reboot重启查看Oracle监听和实例进程均能自动启动。

本来以为搞定了的 重启之后登陆又报错

[root@template ~]# su oracle
[oracle@template root]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 5月 26 10:24:27 2016

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> connect sys as sysdba
输入口令:
已连接到空闲例程。
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system

ORA-00845: MEMORY_TARGET not supported on this system网上大致是说

1.初始化参数MEMORY_TARGET或MEMORY_MAX_TARGET不能大于共享内存(/dev/shm),为了解决这个问题,可以增大/dev/shm

如:

mount -t tmpfs shmfs -o size=7g /dev/shm

2.为了确保操作系统重启之后能生效,需要修改/etc/fstab文件

shmfs /dev/shm tmpfs size=26g 0

3.如果/dev/shm没有挂载也会报上面的错,所认需要确保已经挂载

加到到26G

UUID=bad70c1b-a5ed-44c3-8915-dc97715cec5b /                       ext4    defaults        1 1
UUID=042dbbac-8779-48bc-b146-440d2b08e1e8 /boot                   ext4    defaults        1 2
UUID=d493e650-ec82-4b48-89fb-62656bf52f40 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults,size=26g         0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

/dev/vdb                /data                   ext3    defaults        0 0
~                   

到此终于搞定了。重启了两次测试了也没问题。2016年5月26日11:28:46 纪念一下!

总结回顾一下。

因为第一次装走了很多弯路。各种报错各种折腾,抱着不放弃的信仰终于还是被我搞定了。

第一步:修改系统配置文件,为安装做准备。解压好安装包。

第二步:编辑应答文件命令进行安装。

第三步:数据库配置,静默方式配置监听。这里是折腾最久的。创建实例数据库ORACLE_HOME和ORACLE_SID各个地方要统一。不然很麻烦。 权限问题要注意!

第四步:测试了。

比较乱,有时间再来整理一下

主要参考到这篇

附件:

  2、oracle启动,windows下通常在服务里启动oracle,一般情况下同时启动相关实例,但也可以设置启动oracle时,不

启动任何指定实例,这样oracle的启动速度相当快。

  3、设定我们需要启动的相关实例。在console窗口中,输入 set oracle_sid=xxx (unix环境下用export命令)

  4、用/nolog方式,进入sqlplus。 在console窗口中,输入 sqlplus /nolog ,然后回车,则进入sqlplus环境。

  5、输入命令 connect sys as sysdba 回车后,提示输入口令,直接回车,则以sysdba的角色连接到oracle的空闲实例

。

  6、输入命令 startup nomount 回车,则启动了xxx实例,由set oracle_sid=xxx设置。

  7、输入命令 alter database mount 回车,则将相应的数据库挂接到xxx实例。

  8、输入命令 alter database open 回车,则打开了相应数据库。

  9、输入命令 shutdown,则关闭数据库、卸载数据库、关闭实例。
---------------------------------------------
oracle操作系统不同的启动顺序:
linux\Unix 下oracle的启动过程
           lsnrctl start
           //sqlplus sys/oracle as sysdba;
           sqlplus /nolog
           conn sys/oracle as sysdba
           startup

windows   下oracle的启动过程
           lsnrctl start;
           oradim -startup -sid orcl;
--------------------------------------
ora_dba 默认组
sqlplus sys/oracle as sysdba;
sys密码丢失
orapwd;
Usage:orapwd file=(fname) password=(password) entried=(users) force=(y/n)
orapwd file=D:\oracle\product\10.2.0\db_2\database\PWDorcl.ora password=123456 entries=10
select * from v$pwfile_users;//特权用户
---------------------------------------
数据库用户登录:
connect scott/tiger;
connect system/manager
connect sys/change_on_install as sysdba;//最高权限

create user abc
2 identified by abc
3 default tablespace users   //存放用户数据
4 Temporary Tablespace Temp  //临时数据放入Temp  临时表空间不能有限额.
5 Quota 50M on users
6 ;

alter user 用户名 Account Lock      //用户加锁
alter user 用户名 Account Unlocak   //用户解锁
alter User 用户名 Password Expire   //用户口令即刻失效
Drop user 用户名 cascade //强制删除 用户和用户下的对象一起删除
时间: 2024-11-01 17:37:35

centos6.5安装oracle数据库详细的相关文章

CentOS安装Oracle数据库详细介绍及常见问题汇总

一.安装前准备 1.软件硬件要求 操作系统:CentOS 6.4(32bit)Oracle数据库版本:Oracle 10g(10201_database_linux32.zip)最小内存:1G(检查命令:#grep MemTotal /proc/meminfo)最小Swap:2G(检查命令:#grep SwapTotal /proc/meminfo) 2.安装依赖包 # rpm -q binutils compat-libstdc++-33 compat-libstdc++-33.i686 el

安装Oracle数据库

安装环境  除步骤1和7外,其余步骤都是在root用户下操作 数据库版本:Oracle 11g R2  操作系统:CentOS6.5 准备操作系统 1)下载Oracle 11g R2安装文件:linux_11gR2_database_1of2.zip和linux_11gR2_database_1of2.zip 2)硬件检测 内存检测:Oracle11g要求最少内存为1GB grep MemTotal /proc/meminfo 共享内存的大小:df -k /dev/shm 交换空间:11g交换空

win7安装Oracle 11g 详细教程

一.下载 可以去Oracle官网下载:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html(注意一点,选中上面Accept License Agreement选项,然后再下面的列表中选择你需要的版本,具体不讲了.) 二.安装 1.解压: 下载下来的总共有两个zip包,解压时一定要放在一起,并一起解压! 双击setup.exe进入安装,进入如下界面,等待....  2. 配置安全更新:

PL/SQL Developer 连接Oracle数据库详细配置方法

近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server).本文现对监听配置作一简单介绍,给出PL/SQL Developer 连接Oracle数据库详细配置方法,并提出一些客户终端无法连接服务器端的解决思路,愿对广大网友与读者有一些帮助. 一.监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求.既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器

记工作中在Red Hat 7.1企业版 安装Oracle数据库历程

最近公司在搞系统服务器整合,我负责的MES数据库需要从原有服务器器迁移到新服务器上,问硬件组的同事要了IP .账号.密码,开始安装oracle数据库. 在以前的工作中,很少接触linux系统,来到现在这家公司,由于数据库假设在linux系统上,所以免不了经常接触.之前也在本机电脑上安装虚拟机,安装centos6.9玩玩. 本次我将要操作的服务器是Red hat 7.1 企业版,借着这个机会,正好了解下这个系统和Centos的区别. 原文地址:https://www.cnblogs.com/gud

CentOS6.5安装zabbix2.4详细教程

CentOS6.5安装zabbix2.4详细教程 1.准备CentOS6.5系统,配置IP地址,确保与互联网连接正常. [[email protected] ~] ping www.baidu.com PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data. 64 bytes from 14.215.177.39: icmp_seq=1 ttl=128 time=10.4 ms 64 bytes from 14.215.177.39:

Centos6.9安装Myql数据库RPM包

Centos6.9安装Myql数据库RPM包 1.进入/usr/src目录 [[email protected] nginx-1.12.1]# cd /usr/src/ [[email protected] src]# ls debug kernels nginx-1.12.1 nginx-1.12.1.tar.gz 2.下载Myql5.7.19的rpm包 [[email protected]****src]#wget https://cdn.mysql.com//Downloads/MySQL

在hp-ux下安装oracle 数据库软件时unzip的问题

当你第一次在hp-ux下安装oracle数据库时,会遇到上传到hp-ux中的Oracle database 软件介质(*.zip格式)无法解压,原因是没有unzip这个可执行程序. 此时,可以到https://updates.oracle.com/unzips/unzips.html 这个网址去下载hp-ux下的 unizp 介质即可. 现在将此文章全文摘录在下面: UnZip Utilities Download Patches downloaded from Oracle are in th

OEL7.0 上静默安装oracle数据库

OEL7.0 上静默安装oracle数据库 静默安装本人使用的也比较少,基本上不需要使用静默安装.就算是文本安装的系统,也使用Xmanager 来重定向图形化.但是万事总有个例外的,比如在MAC 操作系统上,貌似没有Xmananger , 那该上虚拟机如果只装了文本界面就只能静默安装了,如果再装个图形化那就另一个情况了. 地点: 杭州·滨江 微信公众号:HopToad Email: [email protected] 欢迎转载 转载标注出处:: http://blog.csdn.net/notb