CentOS 无图形化安装oracle 11gr2

时间:2022-06-21 07:42:20


说明:看网上Linux下安装Oracle 都有图形化的步骤,但是Linux系统通常是直接SSH连接的。系统在初始安装的时候就没有安装桌面,要为了迎合安装oracle需要去安装个Linux桌面,使用VNC。。。总感觉好麻烦。在此研究了一下Oracle 11g 安装。可以在命令行安装。并且可以不需要再初次安装时导出应答文件。

注意:如果是Oracle 12安装的时候需要在一模一样的环境的下使用图形化安装一遍,目的是将安装Oracle 12时的应答文件导出来。这样在以后相同环境,相同目录结构下安装,就可以直接无图形化安装了。


系统:Centos 6.4 x64

一、准备Oracle 11gR2的安装条件

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

包名称:

 linux.x64_11gR2_database_1of1.zip

 linux.x64_11gR2_database_2of2.zip


1. 系统配置要求

1)物理内存1GB以上,交换空间大约为物理内存的2倍。

2)安装目录(/data/oracle)建议有8GB以上、/tmp目录建议有1GB以上可用空间。

3)提前配置好主机名、IP地址,完成安装以后不要再改主机名。


检查内存大小,大概有2G,满足要求

[root@ns1bin]# free -m

             total       used       free    shared    buffers     cached

Mem:          1876       1808         68          0         12       1486

-/+buffers/cache:        308       1567

Swap:         1023         10       1013

检测swap/data目录,也是满足要求的

[root@ns1bin]# df -hT

文件系统    类型      容量  已用  可用 已用%% 挂载点

/dev/sda3     ext4    19G  9.7G  8.0G 55% /

tmpfs       tmpfs    939M  444M 495M  48% /dev/shm

/dev/sda1     ext4   194M   27M  158M 15% /boot

/dev/sdb1    ext4     20G  6.0G  13G  33% /data

 

修改交换分区配置,将原来的一行注释掉,新加一行。不然的话

会提示ORA-00845: MEMORY_TARGET not supported on this system错误

vi /etc/fstab

 

#tmpfs                   /dev/shm                tmpfs   defaults        0 0

tmpfs                   /dev/shm                tmpfs   defaults,size=10240M        0 0

 

重启系统

reboot

 

2. 需要的软件环境

yum -y install binutils compat-libstdc++ compat-libstdc++-33elfutils-libelf-devel gcc gcc-c++ glibc-devel glibc-headers ksh libaio-devellibstdc++-devel make sysstat unixODBC-devel binutils-* compat-libstdc++*elfutils-libelf* glibc* gcc-* libaio* libgcc* libstdc++* make* sysstat*unixODBC* wget unzip

yum clean all

卸载ksh,满足兼容要求,改装RHEL5中的pdksh

rpm -e ksh

wgetftp://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/55/i386/SL/pdksh-5.2.14-36.el5.i386.rpm

安装pdksh必须要有编译环境,否则报错

rpm -ivh pdksh-5.2.14-36.el5.i386.rpm 

报错就添加 --nodeps --force

oracle软件包上传到/opt目录

解压软件包

unzip linuxamd64_11gR2_database_1of2.zip

unzip linuxamd64_11gR2_database_2of2.zip

 

3. 内核参数调整(不低于以下值)

 vi /etc/sysctl.conf

最后一行添加


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

加载参数

sysctl -p

 

4. 用户环境要求

1)创建相关用户、组账号

安装组

groupadd oinstall

管理组

groupadd dba

运行用户

useradd -g oinstall -G dba oracle

设置密码

passwd oracle

 

2)调整用户变量

vi ~oracle/.bash_profile

最后一行添加

 

umask 022

export.UTF-8

export PATH=$PATH:/data/oracle/product/11gr2/dbhome_1/bin

export ORACLE_HOME=/data/oracle/product/11gr2/dbhome_1

export ORACLE_SID=orcl

 

source ~oracle/.bash_profile

 

vi /etc/profile 

最后一行添加

 

export PATH=$PATH:/data/oracle/product/11gr2/dbhome_1/bin

export ORACLE_HOME=/data/oracle/product/11gr2/dbhome_1

export ORACLE_SID=orcl

更新系统环境

source /etc/profile

 

3)调整会话限制

vi /etc/pam.d/login

最后一行添加

 

session    required    pam_limits.so

 

vi /etc/security/limits.conf

最后一行添加

 

oracle        soft    nproc    8192

oracle        hard    nproc    16384

oracle        soft    nofile   32768

oracle        hard    nofile   65536

 

5. 安装目录准备

创建基本目录

mkdir -p /data/oracle

chown -R oracle:oinstall /data/oracle/

chmod -R 775 /data/oracle/

若应答文件内已配置,此文件貌似可无

vi /etc/oraInst.loc

 

inventory_loc=/data/oracle/oraInventory

inst_group=oinstall

 

6.正式安装

切换到oracle用户,注意,必须是oracle用户,root用户是无法安装的

su oracle

cd /opt/database

./runInstaller-silent -debug -force \

DECLINE_SECURITY_UPDATES=true\

oracle.install.option=INSTALL_DB_SWONLY\

UNIX_GROUP_NAME=oinstall\

INVENTORY_LOCATION=/data/oracle/oraInventory\

ORACLE_HOME=/data/oracle/product/11gr2/dbhome_1\

ORACLE_BASE=/data/oracle\

oracle.install.db.InstallEdition=EE\

oracle.install.db.EEOptionsSelection=true\

oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.3.0,oracle.oraolap:11.2.0.3.0,oracle.rdbms.dm:11.2.0.3.0,oracle.rdbms.lbac:11.2.0.3.0,oracle.rdbms.rat:11.2.0.3.0\

oracle.install.db.DBA_GROUP=dba\

oracle.install.db.OPER_GROUP=dba\

oracle.install.db.isRACOneInstall=false\

DECLINE_SECURITY_UPDATES=true\

正在启动 OracleUniversal Installer...

 

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

 /data/oracle/oraInventory/logs/


 /data/oracle/product/11gr2/dbhome_1/root.sh

Check/data/oracle/product/11gr2/dbhome_1/install/root_ns1.centos.com_2014-12-04_04-24-51.logfor the output of root script

 

启动监听,第一次运行会报错,会生成listener.ora文件

su oracle

netca /silent /responsefile /opt/database/response/netca.rsp

正在对命令行参数进行语法分析:

参数"silent"= true

参数"responsefile"= /opt/database/response/netca.rsp

完成对命令行参数进行语法分析。

Oracle Net Services 配置:

完成概要文件配置。

Oracle Net 监听程序启动:

为该监听程序提供的信息正由此计算机上的其他软件使用。

    未能启动监听程序。

有关详细信息, 请查看跟踪文件:/data/oracle/cfgtoollogs/netca/trace_OraDB12Home1-1412044上午3026.log

Oracle Net Services 配置失败。退出代码是1

 

编辑监听文件

su root

vi /data/oracle/product/11gr2/dbhome_1/network/admin/listener.ora

 

180.168.41.175改成自己的主机名

例如:

 

(ADDRESS = (PROTOCOL = TCP)(HOST = ns5.centos.com)(PORT =1521))

 

再次运行

su oracle

netca /silent /responsefile /opt/database/response/netca.rsp

 

正在对命令行参数进行语法分析:

参数"silent"= true

参数"responsefile"= /opt/database/response/netca.rsp

完成对命令行参数进行语法分析。

Oracle Net Services 配置:

完成概要文件配置。

监听程序"LISTENER" 已存在。

成功完成 Oracle NetServices 配置。退出代码是0

启动服务

lsnrctl start

查看状态

lsnrctl status

查看监听端口

 [oracle@ns1 database]$ netstat -naptlu | grep 1521

(Not all processes could be identified, non-owned processinfo

 will not be shown,you would have to be root to see it all.)

tcp        0      0 :::1521                     :::*                        LISTEN      4898/tnslsnr

执行完后, 监听就已经启动了, 默认端口是1521, 默认是动态监听, 只要实例启动了就会监听到.

su root

cp /opt/database/response/dbca.rsp ~oracle

chmod 755 ~oracle/dbca.rsp

chown oracle:oinstall ~oracle/dbca.rsp

su oracle

vi ~/dbca.rsp

 

GDBNAME = "orcl.ns5.centos.com" //全局数据库的名字=SID+主机域名

SID="orcl" // SID

CHARACTERSET="AL32UTF8" //编码

NATIONALCHARACTERSET="UTF8" //编码

SYSPASSWORD = "Oracle"    //密码

SYSTEMPASSWORD = "Oracle"  //密码

 

进行静默安装数据库,请耐心等待几分钟

[oracle@ns1database]$ dbca -silent -responseFile ~/dbca.rsp

复制数据库文件

1% 已完成

3% 已完成

11% 已完成

18% 已完成

26% 已完成

33% 已完成

37% 已完成

正在创建并启动 Oracle 实例

40% 已完成

45% 已完成

50% 已完成

55% 已完成

56% 已完成

60% 已完成

62% 已完成

正在进行数据库创建

66% 已完成

70% 已完成

73% 已完成

85% 已完成

96% 已完成

100% 已完成

有关详细信息, 请参阅日志文件"/data/oracle/cfgtoollogs/dbca/orcl/orcl.log"

 

[root@ns1~]$ sqlplus /nolog

SQL> conn / as sysdba

Connected.

SQL> startup

ORA-01081:cannot start already-running ORACLE - shut it down first


 

Oracle用户密码有效期问题

查看当前有效期,默认是180

SQL> SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' ANDresource_name='PASSWORD_LIFE_TIME';

 

PROFILE

--------------------------------------------------------------------------------

RESOURCE_NAME                    RESOURCE

----------------------------------------

LIMIT

--------------------------------------------------------------------------------

COM

---

DEFAULT

PASSWORD_LIFE_TIME               PASSWORD

180

NO

 

修改为无限期

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

再次查看

SQL> SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' ANDresource_name='PASSWORD_LIFE_TIME';

发现已经是无限期了

DEFAULT

PASSWORD_LIFE_TIME               PASSWORD

UNLIMITED

NO

 

Oracle的安装过程就结束了。

 

 




本文出自 “幕后运维” 博客,请务必保留此出处http://haowen.blog.51cto.com/3486731/1599042