如何使用securecrt 安装oracle

如何使用securecrt 安装oracle,第1张

有两种思路

1、静默安装oracle:使带伍衫用应答文件,安装包提供response目录,含enterprise.rsp/dbca.rsp/netca.rsp

等响应文件模板,根据需求自己编辑。

安装命令:

./runInstaller

-silent

-ignoreSysPrereqs

-responseFile

~/enterprise.rsp(参考./runInstaler

-help)

创建实例:dbca

-silent

-responseFile

~/dbca.rsp

配置监听:netca

/silent

/responsefile

~/netca.rsp(你到$ORACLE_HOME/network/admin手工创建或者复制个listener.ora就行)

2、冷备份法

你找个有蠢腔图形界面的linux安装好oracle,关闭oracle,打包oracle安装目录后,通过SecureCRT上传到linux,配置相同橘正的环境变量,将备份文件在相同位置解压缩即可启动oracle。

一、使用脚本初始化环境

脚本如下:(标红处修改对应的配置需求)

#!/bin/bash

#1.配置主机名昌岩/etc/hosts 并关闭防火禅迅灶墙及selinux

echo ' 172.168.0.xx linux.tk ' >>/etc/hosts

#注意修改为服务器的ip和主机名

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

#sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

#2.安装相关软件包

yum -y install telnet vim lszrz 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 wget unzip

#3.配置内核参数

echo "fs.aio-max-nr = 1048576" >>/etc/sysctl.conf

echo "fs.file-max = 6815744" >>/etc/sysctl.conf

echo "kernel.shmmni = 4096" >>/etc/sysctl.conf

echo "kernel.sem = 250 32000 100 128" >>/etc/sysctl.conf

echo "net.ipv4.ip_local_port_range = 9000 65500" >>/etc/sysctl.conf

echo "net.core.rmem_default = 262144" >>/etc/sysctl.conf

echo "net.core.rmem_max = 4194304" >>/etc/sysctl.conf

echo "net.core.wmem_default = 262144" >>/etc/sysctl.conf

echo "net.core.wmem_max = 1048576" >>/etc/sysctl.conf

sysctl -p

#4.oracle用户资源限制

echo "oracle soft nproc 2047" >>/etc/security/limits.conf

echo "oracle hard nproc 16384" >>/etc/security/limits.conf

echo "oracle soft nofile 4096" >>/etc/security/limits.conf

echo "oracle hard nofile 65536" >>/etc/security/limits.conf

#5.登录配置

echo "session required /lib64/security/pam_limits.so" >>/etc/pam.d/login

echo "session required pam_limits.so" >>/etc/pam.d/login

#改授权

echo "if [ $USER = 'oracle' ]then" >>/etc/profile

echo "if [ $SHELL = '/bin/ksh' ]then" >>/etc/profile

echo "ulimit -p 16384" >>/etc/profile

echo "ulimit -n 65536" >>/etc/profile

echo "else" >>/etc/profile

echo "ulimit -u 16384 -n 65536" >>/etc/profile

echo "fi" >>/etc/profile

echo "fi" >>/etc/profile

source /etc/profile

#6.创贺扮建用户组和用户

groupadd oinstall

groupadd dba

groupadd oper

useradd -g oinstall -G dba,oper oracle

echo 'oracle' | passwd --stdin oracle

#7.创建相关目录

mkdir -p /u01/app/oracle

mkdir -p /u01/app/oraInventory

chown -R oracle:oinstall /u01/app

#8.配置oracle用户环境变量

echo "ORACLE_SID=oraexport ORACLE_SID" >>/home/oracle/.bash_profile

#sid指定为现场的sid

echo "ORACLE_BASE= /u01/app/oracle export ORACLE_BASE" >>/home/oracle/.bash_profile

echo "ORACLE_HOME=$ORACLE_BASE/ product/11.2.0/dbhome_1 export ORACLE_HOME" >>/home/oracle/.bash_profile

echo "ORACLE_PATH=/u01/app/common/oracle/sqlexport ORACLE_PATH" >>/home/oracle/.bash_profile

echo "ORACLE_TERM=xtermexport ORACLE_TERM" >>/home/oracle/.bash_profile

echo "TNS_ADMIN=$ORACLE_HOME/network/adminexport TNS_ADMIN" >>/home/oracle/.bash_profile

echo "ORA_NLS11=$ORACLE_HOME/nls/dataexport ORA_NLS11" >>/home/oracle/.bash_profile

echo "PATH=.:${JAVA_HOME}/bin:${PATH}:$ORACLE_HOME/bin " >>/home/oracle/.bash_profile

echo "PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin " >>/home/oracle/.bash_profile

echo "export PATH " >>/home/oracle/.bash_profile

echo "export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK" >>/home/oracle/.bash_profile

echo "LD_LIBRARY_PATH=$ORACLE_HOME/lib" >>/home/oracle/.bash_profile

echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib " >>/home/oracle/.bash_profile

echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib " >>/home/oracle/.bash_profile

echo "export LD_LIBRARY_PATH" >>/home/oracle/.bash_profile

echo "export LANG=en_US.UTF-8 " >>/home/oracle/.bash_profile

echo "export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK" >>/home/oracle/.bash_profile

echo "CLASSPATH=$ORACLE_HOME/JRE " >>/home/oracle/.bash_profile

echo "CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib" >>/home/oracle/.bash_profile

echo "CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib" >>/home/oracle/.bash_profile

echo "CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib" >>/home/oracle/.bash_profile

echo "export CLASSPATH" >>/home/oracle/.bash_profile

echo "THREADS_FLAG=nativeexport THREADS_FLAG" >>/home/oracle/.bash_profile

echo "nls_date_format='yyyy-mm-dd hh24:mi:ss' " >>/home/oracle/.bash_profile

echo "export nls_date_format " >>/home/oracle/.bash_profile

echo "export TEMP=/tmp " >>/home/oracle/.bash_profile

echo "export TMPDIR=/tmp " >>/home/oracle/.bash_profile

echo "umask 022 " >>/home/oracle/.bash_profile

source ~/.bash_profile

二、上传或者下载oracle安装包并解压,例如放置在/opt/目录下

unzip p13390677_112040_Linux-x86-64_1of7.zip

unzip p13390677_112040_Linux-x86-64_2of7.zip

直接在目录解压,会在当前目录中生成database目录

三、修改应答文件安装数据库软件

修改前建议先备份下

cp /opt/database/response/*.rsp /opt/database/rspbak

3.1、生成修改响应文件(/opt/database/response/db_install.rsp)

备注:清空源文件,复制粘贴如下内容(标红处需要修改对应的设置需求):

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME= linux.tk

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION= /u01/app/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME= /u01/app/oracle/product/11.2.0/dbhome_1

ORACLE_BASE= /u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.EEOptionsSelection=false

oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:10.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=oper

DECLINE_SECURITY_UPDATES=true

oracle.installer.autoupdates.option=SKIP_UPDATES

3.2、开始安装

1)、用oracle用户登录 *** 作

# su - oracle

$ cd /opt/database

$ ./runInstaller -silent -responseFile /opt/database/response/db_install.rsp

2)、在安装过程中可以新开会话,使用tailf 命令查看进度

# tailf /u01/app/oraInventory/logs/installActions2022-XX-XX_03-28-06PM.log

提示安装结束,需要在root用户执行两个脚本,如下:

# /u01/app/oraInventory/orainstRoot.sh

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

四、修改应答文件安装数据库实例(/opt/database/response/dbca.rsp)

安装实例前,需要新建一个实例存放的目录(/home/OracleData/),如下:

# mkdir /home/OracleData

# chown -R oracle:oinstall /home/OracleData/

4.1、修改应答文件

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "createDatabase"

[CREATEDATABASE]

GDBNAME = "ora"

SID = "ora"

TEMPLATENAME = "General_Purpose.dbc"

SYSPASSWORD = "***012"

SYSTEMPASSWORD = "***012"

DATAFILEDESTINATION = /home/OracleData/

RECOVERYAREADESTINATION = /u01/app/oracle/flash_recovery_area

CHARACTERSET = "ZHS16GBK"

TOTALMEMORY = "2048"

4.2、建实例,登录oracle用户

# su - oracle

$ dbca -silent -responseFile /opt/database/response/dbca.rsp

此安装过程是有进度显示,不用tailf查看,不过也可以查看对应的log日志查看进度

4.3、删除实例

编辑应答文件

#vim /opt/database/response/del_dbca.rsp

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "deleteDatabase"

[DELETEDATABASE]

SOURCEDB = "ora "

$ dbca -silent -responseFile del_dbca.rsp

五、启动监听,配置自启动等

5.1、启动监听

# su – oracle

$ lsnrctl start

查看状态 lsnrctl status

# netstat -tnulp | grep 1521

# ps -ef | grep ora_ | grep -v grep

5.2、设置自启动

修改vim /etc/oratab 如下

ora:/u01/app/oracle/product/11.2.0/dbhome_1: Y

5.3、修改dbstart文件

vim /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart

将ORACLE_HOME_LISTNER=$1

修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

5.4、将dbstart加入开机自启动,/etc/rc.d/rc.local中增加

su - oracle -lc /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart

赋权限 chmod +x /etc/rc.d/rc.local

5.3、登录数据库设置权限等

sqlplus / as sysdba

startup

alter system register

create user ora identified by ***012

grant dba to ora

exit

六、远程连接数据库

6.1、开放1521端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent

firewall-cmd –reload

firewall-cmd --list-ports

Oracle数据库升级也并非简单的事,这篇文章对Oracle那点埋敏事做了较详细的介绍:Oracle数据库升级或数据迁移方法研究

我还属于Oracle的菜鸟,就不献丑介绍了。

下面我就简单总结下,Oracle同版本升级的经历:

升级数据库:

1. 先检查数据库当前版本:SELECT * FROM v$version

2. 使用RMAN或exp 进行全库备份

【这一步非常非常重要,因升级到数据部分时,虚拟机没空间了,导致VM崩溃,升级失败.orcl库也挂了,不得不从另一台Oracle上创建了一个Orcl,然后,冷备迁移过来,才得以重新升级。】

如:RMAN全备

export ORACLE_SID=orcl

rman target /

RMAN>backup full database plus archivelog //全备数据库,并且包括ArchiveLog。

3. 最后按下面步骤进行升级

<1>先知道Oracle 7个更新文件的作用:

第一 和 二个包表示database , 如果升级数据库,只需要这2个文件即可。

第三个包表示grid, 用来升级RAC 的CRS。如果升级RAC 要先用这个文件。

第四个表示客户端,

第五个表示gateways,

第六个表示 examples, 这个是我们的示例文件安装包。

<2>升级Oracle数据库

首先将第一和二个zip压缩包上传,并在同一个目录下解压,因为,它两的目录结构基本一致,并且这两压缩包的内容需要合并后才能,执行runInstaller文件。所有要在同一个目录下解压,这样会直接合并。

<3>运行runInstaller,若没有图像界面会可能就需要有应答文件了,这个就需要再查了,

我测试时,有图形界面,所以直接用图形界面来升级:

需要注意几个地返御方:

A. 这是第一个地方,这里需要点,“Skip software updates"跳到软件更新

B.这里是选项安装新Oracle软件的位置,这里不能写旧的位置。

另注: 磁盘空间一定要5~10G, Oracle11.2.0.1升级到11.2.0.3需要4.1G。

C. 第三点:需要注意: /etc/oratab这个文件。

因为,更新到最后是更新数据库,更新数据库时,必须要有一个数据库是运行的.才能执行,并且更新数据库时,它是通过oratab文件来让你选择通过那个运行的数据库来尝试更新数据库。

4. 数据库更新完后,需要做以下事情:

首弯世枝先,升级完成后,需要将Oracle必须的环境变量修改为升级后的Oracle软件路径。

需要修改: ORACLE_HOME.

如我的环境:

Oracle11.2.0.1时:

ORACLE_BASE=/home/oracle/ora

ORACLE_HOME=$ORACLE_BASE/product/11g/db_1

升级后,Oracle版本为:11.2.0.3,新的家目录为:

Oracle11.2.0.3: ORACLE_HOME=$ORACLE_BASE/product/11.2.0.3/db_1

<1>先执行这个文件,用sysdba的权限:

SQL>SPOOL update.info

SQL>$ORACLE_HOME/rdbms/admin/utlu112i.sql

SQL>SPOOL OFF

查看日志是否有错误。

<2>关闭数据库,并更新启动。

SQL>shutdown immediate

SQL>startup upgrade

SQL>select * from v$version#查看Oracle的版本。

SQL>select status from v$instance

STATUS

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

OPEN MIGRATE

#下面开始执行升级脚本。

SQL>SPOOL update-info.log

SQL>@$ORACLE_HOME/rdbms/admin/catupgrd.sql

#下面是查看升级结果的这个不是很确定,因为参考博客的环境是,

# 是9i 升 10g

#SQL>@$ORACLE_HOME/rdbms/admin/utlu102s.sql

SQL>SPOOL OFF

完成后,需要查看升级日志,是否有保错,若有,则重新执行升级SQL脚本。

#升级完成后,需要重启DB.

SQL>shutdown immediate

SQL>startup

#下面是执行重新编译无效对象

SQL>@$ORACLE_HOME/rdbms/admin/utlrp.sql

#查看是否还存在无效对象,若为0,则表示升级完成。否则重新执行编译。

SQL>SELECT count(*) FROM dba_objects WHERE status='INVALID'

SQL>select name from v$database#确认数据库的SID是否正确。

SQL>show user#确认当前是否为sys用户。

SQL>select tablespace_name, bytes from dba_data_files#确认表空间大小是否正确.

#下面这个步骤网文中没有,这是尚观视频中提到的,作用不明.

#SQL>@$ORACLE_HOME/rdbms/admin/catalog.sql

#最后,重启数据库没有问题就是升级成功了。

SQL>select status from v$instance

STATUS

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

OPEN  #注意,成功打开数据库后,这里将是OPEN,而非OPEN MIGRATE


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12233504.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存