千家信息网

Linux静默安装Oracle11g R2

发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,一配置基础环境先对操作系统进行一次全面的更新#yum update对oracle依赖包进行安装和升级#yum -y install \binutils \compat-libcap1 \compat-
千家信息网最后更新 2024年11月12日Linux静默安装Oracle11g R2

配置基础环境

先对操作系统进行一次全面的更新

#yum update

oracle依赖包进行安装和升级

#yum -y install \

binutils \

compat-libcap1 \

compat-libstdc++-33 \

compat-libstdc++-33*.i686 \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc*.i686 \

glibc \

glibc-devel \

glibc-devel*.i686 \

ksh \

libgcc*.i686 \

libgcc \

libstdc++ \

libstdc++*.i686 \

libstdc++-devel \

libstdc++-devel*.i686 \

libaio \

libaio*.i686 \

libaio-devel \

libaio-devel*.i686 \

make \

sysstat \

unixODBC \

unixODBC*.i686 \

unixODBC-devel \

unixODBC-devel*.i686 \

libXp

修改主机名,编辑netework文件,文件如果使用vim或者vi打开,修改之后保存(先按ESC键,之后输入":wq",如果不想保存就先按ESC键,之后输入":q!")

#vi/etc/sysconfig/network

修改主机名为oracledb(可根据实际情况改动)

重启生效(重启后需等待一会才能连接上)

#reboot

查看主机名,显示oracledb,更改成功

#hostname

添加主机名与IP对应记录

#vi/etc/hosts

添加xx.xx.xx.xx oracledb 修改之后保存(先按ESC键,之后输入":wq",回车)

关闭selinux

#setenforce 0

创建所需的操作系统组和用户(这里组名为oinstalldba,用户名为oracle,可根据实际情况改动)

#groupaddoinstall && groupadd dba && useradd -g oinstall -G dba oracle

设置oracle用户密码(密码自己定义,密码安全性第一

#passwdoracle

二 准备安装文件

创建安装目录(可根据情况,选择比较多空间的目录创建)

#mkdir -p /u01/app/

上传oracle安装文件上传到/u01下

修改/u01目录下设置oracle用户权限

#chown -R oracle:oinstall /u01&& chmod -R 775 /u01/app/

创建/etc/oraInst.loc文件,内容如下(这个文件是不存在的,直接编辑就行)

#vi /etc/oraInst.loc 添加下面两行

inventory_loc=/u01/app/oracle/oraInventory

inst_group=oinstall

修改之后保存(先按ESC键,之后输入":wq",回车)

更改文件的权限

chown oracle:oinstall /etc/oraInst.loc&& chmod 664 /etc/oraInst.loc

解压oracle安装文件(oracle用户执行)

#su - oracle

cd /u01

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

设置oracle环境变量,编辑~/.bash_profile文件

#vi ~/.bash_profile

在最后加上以下内容

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

exportPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin$PATH:$ORACLE_HOME/bin

export ORACLE_SID=orcl

修改之后保存(先按ESC键,之后输入":wq",回车)

使设置生效

source ~/.bash_profile

拷贝模板文件,进行授权

cp /u01/database/response/db_install.rsp/u01/database

chmod +x /u01/database/db_install.rsp

三 静默安装Oracle

修改安装Oracle软件的响应文件/u01/database/db_install.rsp

#vi /u01/database/db_install.rsp

oracle.install.option=INSTALL_DB_SWONLY// 安装类型

ORACLE_HOSTNAME=oracledb // 主机名称

UNIX_GROUP_NAME=oinstall // 安装组

INVENTORY_LOCATION=/u01/app/oracle/oraInventory// INVENTORY目录

SELECTED_LANGUAGES=en,zh_CN // 选择语言

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1// oracle_home

ORACLE_BASE=/u01/app/oracle //oracle_base

oracle.install.db.InstallEdition=EE //oracle版本

oracle.install.db.EEOptionsSelection=true

oracle.install.db.DBA_GROUP=dba // dba用户组

oracle.install.db.OPER_GROUP=oinstall// oper用户组

DECLINE_SECURITY_UPDATES=true

oracle.installer.autoupdates.option =SKIP_UPDATES

修改之后保存(先按ESC键,之后输入":wq",回车)

切换到刚刚解压的database目录,进行安装

#cd /u01/database

查看目录下文件是否有db_install.rsp文件

#ls查看

开始静默安装oracle(执行完命令查看日志)

#./runInstaller -silent -responsefile/u01/database/db_install.rsp -ignoresysprereqs -ignoreprereq

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

查看安装日志信息了解安装进度

tail -f$ORACLE_BASE/oraInventory/logs/installActions*.log

出现类似如下提示表示安装完成:

#-------------------------------------------------------------------

...

/u01/app/oracle/product/11.2.0/db_1/root.sh

To executethe configuration scripts:

1. Open aterminal window

2. Log in as"root"

3. Run thescripts

4. Return tothis window and hit "Enter" key to continue

SuccessfullySetup Software.

#-------------------------------------------------------------------

执行脚本文件,需要使用root用户执行root.sh

#su - root

#/u01/app/oracle/product/11.2.0/db_1/root.sh

安装数据库

建立数据库(安装前务必阅读使用参数说明,根据自己实际情况更改参数)

#dbca -h //查看帮助

#/u01/app/oracle/product/11.2.0/db_1/assistants/dbca/templates/General_Purpose.dbc-gdbName orcl -sid orcl -sysPassword xxxxx -systemPassword xxxxx -emConfiguration xxxxx -dbsnmpPassword xxxxxx-sysmanPassword xxxxx -characterSet AL32UTF8

使用参数说明:

-silent指以静默方式执行dbca命令

-createDatabase指使用dbca

-templateName指定用来创建数据库的模板名称,这里指定为/u01/app/oracle/product/11.2.0/db_1/assistants/dbca/templates/General_Purpose.dbc,即一般用途的数据库模板

-gdbName指定创建的全局数据库名称,这里指定名称为orcl

-sid 指定数据库系统标识符,这里指定为orcl,与数据库同名

-sysPassword SYS 用户口令设置为oracle

-systemPassword SYSTEM 用户口令设置为oracle

-emConfiguration 指定Enterprise Management的管理选项。LOCAL表示数据库由Enterprise Manager本地管理

-dbsnmpPassword DBSNMP 用户口令设置为oracle

-sysmanPassword SYSMAN 用户口令设置为oracle

-characterSet指定数据库使用的字符集,这里指定为al32utf8

执行命令,检查安装,显示如下:(100%进度非常快,有可能安装失败)

//开始安装

Copyingdatabase files

1% complete

37% complete

Creating andstarting Oracle instance

40% complete

62% complete

CompletingDatabase Creation

66% complete

100% complete

Look at thelog file "/u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log" for furtherdetails.//安装结束

# 检查安装

# lsnrctlstatus

安装成功则最终会显示:The command completed successfully

修改oracle启动配置文件

#vi/etc/oratab

racl:/u01/app/oracle/product/11.2.0/db_1:Y//把"N"改成"Y"

$ORACLE_SID:$ORACLE_HOME:Y:

设置Y可以通过dbstart 启动此实例,监听器。

第一种启动方法:

开启所有oracle的进程,启动监听器。(开数据库)

dbstart$ORACLE_HOME

关闭所有oracle的进程,停止监听器。 (关数据库)

dbshut$ORACLE_HOME

第二种启动方法:

#lsnrctlstatus查看监听器状态

#lsnrctl stop停止监听

#sqlplus / assysdba进入数据库

#SQL>shutdown immediate; 停止数据库

#SQL>exit 退出数据库

#lsnrctlstart开启监听

#sqlplus / assysdba进入数据库

#SQL>startup;启动数据库

#SQL>select open_mode from v$database; 查询实例状态

OPEN_MODE

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

READ WRITE

显示READ WRITE

Oracle数据库启动成功!!!

创建连接用户

//创建用户(这里创建的用户会在应用的数据库连接文件中用到,牢记!!!)

SQL>createuser 用户 identifiedby 密码;

//给用户授权

SQL>grantconnect,dba,resource to 用户;

归档检查

sqlplus / as sysdba

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter database archivelog;

SQL> alter database flashback on; (如果要启用数据库闪回功能则执行)

SQL> alter database open;

SQL> execute utl_recomp.recomp_serial();(重新编译所有可能失效对象)

SQL> alter system archive log current; (手工归档测试)

数据的导入

/////////////////////////////////////////////////////////////////////////////////////

###############导入数据start#################

使用expdp导出表,(注意如果使用expdp导出的数据只能使用impdp导入,下面用到的用户密码根据实际情况变动)

创建导出目录

#mkdir /home/oracle/dump/utrmdb

SQL>create directory dump_utrm as '/home/oracle/dump/utrmdb/';

SQL>select * from dba_directories;

SQL> grantread,write on directory dump_utrm to 用户;

expdp 用户/密码 directory=dump_utrm dumpfile=文件名.dmp logfile=文件名.log

使用impdp导入表

mkdir/u01/utrm

chmod +x/u01/utrm/dump_201612131650.dmp

SQL>create directory dump_ut as '/u01/utrmdb';

SQL>select * from dba_directories;

SQL> grantread,write on directory dump_ut to用户;

impdp用户/密码_db directory=dump_ut dumpfile=文件名.dmp logfile=文件名.log full=y

###############导入数据stop#################

//////////////////////////////////////////////////////////////////////////////////////

八查看监听状态

#lsnrctl status

###################################

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

Alias LISTENER

Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production

Start Date 28-OCT-2016 18:12:21

Uptime 51 days 16 hr. 8 min. 45 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /oracle/product/11g/db_1/network/admin/listener.ora

Listener Log File /oracle/diag/tnslsnr/master/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=master)(PORT=1521)))

Services Summary...

Service "orcl" has 1 instance(s).

Instance "orcl", status READY, has 1 handler(s) for this service...

Service "orclXDB" has 1 instance(s).

Instance "orcl", status READY, has 1 handler(s) for this service...

The command completed successfully

###################################

显示类似上分的文字就大功告成了!!!

0