Linux下静默安装Oracle

来源:互联网 发布:手机视频壁纸软件 编辑:程序博客网 时间:2024/04/29 03:32

Linux下静默安装Oracle

一、 检测所要安装的数据包
Suse安装环境检查

linux-udly:~ #  rpm -qa | grep binutilsbinutils-2.20.0-0.7.9linux-udly:~ #  rpm -qa | grep gccgcc-4.3-62.198gcc43-c++-4.3.4_20091019-0.7.35linux-udly:~ #  rpm -qa | grep glibcglibc-2.11.1-0.17.4linux-udly:~ #  rpm -qa | grep libaiolibaio-0.3.109-0.1.46libaio-devel-0.3.109-0.1.46linux-udly:~ #  rpm -qa | grep libgcclibgcc43-4.3.4_20091019-0.7.35linux-udly:~ #  rpm -qa | grep libstdclibstdc++-devel-4.3-62.198libstdc++43-4.3.4_20091019-0.7.35libstdc++43-32bit-4.3.4_20091019-0.7.35libstdc++43-devel-4.3.4_20091019-0.7.35libstdc++43-devel-32bit-4.3.4_20091019-0.7.35linux-udly:~ #  rpm -qa | grep makemake-3.81-128.20linux-udly:~ #     sysstat-8.1.5-7.9.56(zypper se 包名   也可以查看是否安装 结果中有i的说明已经安装) 以上没有的安装包,都需要进行安装linux-udly:~ # rpm –ivh  xxxzypper install xxx

普通Linux环境 例如:CentOS

#执行以下命令检查依赖软件的安装情况rpm -q \binutils \compat-libstdc++-33 \elfutils-libelf \elfutils-libelf-devel \expat \gcc \gcc-c++ \glibc \glibc-common \glibc-devel \glibc-headers \libaio \libaio-devel \libgcc \libstdc++ \libstdc++-devel \make \sysstat \unixODBC \unixODBC-devel | grep "not installed"#如果有未安装的通过yum install -y ${包名} 进行安装

二、 oracle安装
创建oracle安装用户

以root用户登录
执行以下命令创建用户oracle, home目录设置为/home/oralce

useradd -d /home/oracle -g oracle -m oracle

创建oracle数据存储目录

以root用户登录

#执行以下命令创建/oradata目录cd /;mkdir oradata#执行以下命令修改/oradata目录的属主和属组chown -R oracle:oracle oradata#查看执行结果ls -ladrwxr-xr-x    2 oracle oracle  4096 Mar 22 10:26 oradata

解压oracle安装包

获取的oracle安装包上传到oracle用户的home目录下oracle@POC_infra_A soft]$ pwd/oracle/soft[oracle@POC_infra_A soft]$ lslinux.x64_11gR2_database_1of2.zip  linux.x64_11gR2_database_2of2.zip[oracle@POC_infra_A soft]$ #执行以下命令将安装包解压到/home/oracle目录下,两个zip文件分别解压unzip linux.x64_11gR2_database_1of2.zip -d /home/oracleunzip linux.x64_11gR2_database_2of2.zip -d /home/oracle

修改oracle响应安装文件

vi /home/oracle/database/response/db_install.rspdb_install.rsp响应文件中主要修改的内容:DECLINE_SECURITY_UPDATES=trueoracle.install.responseFileVersion=/home/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0oracle.install.option=INSTALL_DB_SWONLYUNIX_GROUP_NAME=oracleINVENTORY_LOCATION=/oradata/oraInventory (注:这个不能在ORACLE_BASE下)SELECTED_LANGUAGES=en,zh_CN,zh_TWORACLE_BASE=/home/oracleORACLE_HOME=/home/oracle/product/11.2.0/dbhome_1oracle.install.db.InstallEdition=EEoracle.install.db.isCustomInstall=trueoracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0oracle.install.db.DBA_GROUP=oracleoracle.install.db.OPER_GROUP=oracle

运行runInstaller进行软件安装

#以oracle用户登录执行以下命令database/runInstaller -silent -force -noconfig -ignorePrereq -responseFile  /home/oracle/database/response/db_install.rsp###期间需要大概等待10分钟左右

以root用户执行orainstRoot.sh和root.sh脚本

以root用户登录,执行以下命令/oradata/oraInventory/orainstRoot.sh/oracle/product/11.2.0/dbhome_1/root.sh

修改oracle用户的环境变量

以oracle用户登录,cd 到home目录下执行命令vi .bash_profile添加内容如下;export ORACLE_HOSTNAME=XXXX ####主机名主要是网络配置时用到,该主机名一定要在/etc/hosts文件下配置export ORACLE_BASE=/home/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHexport LD_RUN_PATH=$LD_LIBRARY_PATHexport LIBPATH=$LD_LIBRARY_PATH:$LIBPATHexport SHLIB_PATH=$LD_LIBRARY_PATH:$SHLIB_PATHexport ORACLE_SID=orcl      #####oracle数据库实例名export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATHexport LC_ALL="en_US"export LANG="en_US"export NLS_LANG="AMERICAN_AMERICA.ZHS32GB18030"export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"执行命令su - oracle 重新登录是环境变量生效

配置监听listener.ora

以oracle用户登录cd $ORACLE_HOME/product/11.2.0/dbhome_1/network/admin/samples #执行以下命令编辑listener.oravi listener.ora添加内容如下SID_LIST_LISTENER =  (SID_LIST =    (SID_DESC =      (SID_NAME = orcl)      (ORACLE_HOME = /home/oracle/product/11.2.0/dbhome_1)    )  )LISTENER =  (DESCRIPTION_LIST =    (DESCRIPTION =      (ADDRESS = (PROTOCOL = TCP)(HOST = XXXX)(PORT = 1521))    )  )

配置tnsnames.ora

以oracle用户登录cd $ORACLE_HOME/product/11.2.0/dbhome_1/network/admin/samples #执行以下命令编辑tnsnames.oravi tnsnames.ora添加内容如下ORCL =  (DESCRIPTION =    (ADDRESS = (PROTOCOL = TCP)(HOST = XXXX)(PORT = 1521))    (CONNECT_DATA =      (SERVER = DEDICATED)      (SERVICE_NAME = orcl)    )  )

三、dbca方式创建数据库
编辑dbca配置文件dbca.rsp

以oracle用登录,cd ~//database/response执行以下命令编辑dbca.rsp配置文件vi dbca.rsp需要修改配置项如下:GDBNAME = "orcl"   ###主要是在多个数据库的场景下使用,单个数据库配置为数据库名称即可,   一般情况下与实例名一致SID = "orcl"        ####要创建的数据库的实例名SYSPASSWORD = "XXXX"  ##### 数据库sys用户的密码SYSTEMPASSWORD = "XXXX"  #####数据库system用户的密码SYSMANPASSWORD = "XXXX"  #####数据库sysman用户的密码DBSNMPPASSWORD = "XXXX"  #####数据库dbsnmp用户的秘密STORAGETYPE=FS            ###设置存储格式为FS(文件系统)NATIONALCHARACTERSET= "UTF8"   ###设置编码LISTENERS = "LISTENER"     ###配置改数据库绑定的监听器,要与listener.ora中配置要要一致DATABASETYPE = "OLTP"    ####配置数据库的类型AUTOMATICMEMORYMANAGEMENT = "TRUE"   ####配置数据库内存自动管理TOTALMEMORY = "800"    #####配置数据库的内存大小

执行dbca命令创建数据库

以oracle用户登录, cd /home/oracle/database/responsedbca -silent -responseFile ./dbca.rsp

修改数据库字符集

 connect / as sysdba shutdown immediate; startup mount;alter session set sql_trace=true;alter system enable restricted session;alter system set job_queue_processes=0;alter system set aq_tm_processes=0;alter database open;set linesize 120;alter database character set UTF8;ERROR at line 1:ORA-12712: new character set must be a superset of old character setALTER DATABASE character set INTERNAL_USE UTF8; # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE Database altered.shutdown immediate;startup;select userenv('language') from dual;

四、启动监听器

lsnrctl start执行以下命令验证监听端口netstat -apn | grep 1521

新建swap分区(一)
1.以root身份进入控制台,输入

 swapoff -a          #停止交换分区

2.用fdisk命令加swap分区的盘符,(例:# fdisk /dev/sdb)剔除swap分区,输入d删除swap分区,然后再n添加分区(添加时硬盘必须要有可用空间,然后再用t将新添的分区id改为82(linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。

3.mkswap /dev/sdb2 #格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名

4.swapon /dev/sdb2 #启动新的swap分区

5.为了让系统启动时能自动启用交换分区,可以编辑/etc/fstab,加入下面一行

/dev/sdb2       swap        swap        defaults        0 0  

增加Swap分区(二)

1.创建交换分区的文件:增加1G大小的交换分区,则命令写法如下,其中的 count 等于想要的块大小。

 dd if=/dev/zero of=/home/swapfile bs=1M count=1024

2.设置交换分区文件:
mkswap /home/swapfile #建立swap的文件系统

3.立即启用交换分区文件:
swapon /home/swapfile #启用swap文件

4.使系统开机时自启用,在文件/etc/fstab中添加一行:

/home/swapfile swap swap defaults 0 0
原创粉丝点击