Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # ORACLE 11G R2静默安装,配置
- ## 目录
- * [准备工作](#-2)
- * [开始安装](#-3)
- * [安装后工作](#-4)
- * [建库](#-5)
- * [配置监听](#-6)
- * [测试](#-7)
- ## 准备工作
- 1.依赖性准备
- #yum install make gcc binutils gcc-c++ compat-libstdc++ elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel glibc.i686
- 2.用户和组准备
- #groupadd oinstall
- #groupadd dba
- #useradd -g oinstall -G dba -d /home/oracle oracle
- #passwd oracle //设置oracle密码
- 3.目录准备及权限调整
- #mkdir -p /export/servers/oracle/11.2.0 //数据库系统安装目录
- #mkdir /export/data/oradata //数据库数据安装目录
- #mkdir /export/data/oradata_back //数据备份目录
- #mkdir /home/oracle/inventory //清单目录
- #chown -R oracle:oinstall /export/servers/oracle
- #chown -R oracle:oinstall /home/oracle/inventory
- #chown -R oracle:oinstall /export/data
- #chomod -R 775 /export/servers/oracle
- #chomod -R 775 /export/data
- 以上工作可通过招待 pre-install.sh 脚本完成.
- 4.内核参数调整
- #vim /etc/sysctl.conf 在文件最后增加
- fs.aio-max-nr = 1048576
- fs.file-max = 6553600
- kernel.shmall = 2097152
- kernel.shmmax = 2147483648
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
- net.ipv4.ip_local_port_range = 1024 65000
- net.core.rmem_default = 262144
- net.core.rmem_max = 4194304
- net.core.wmem_default = 262144
- net.core.wmem_max = 1048586
- 保存文件。
- #/sbin/sysctl -p //让参数生效
- 5.用户的限制文件修改
- #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文件,增加如下:
- session required /lib64/security/pam_limits.so //64为系统,千万别写成/lib/security/pam_limits.so,否则导致无法登录
- session required pam_limits.so
- 修改/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
- 6.oracle安装包准备
- 下载并解压安装包到 /home/oracle/database
- ## 开始安装
- 1.打开另外一个终端,用oracle用户登录
- 2.复制并修改应答文件
- 复制应答文件
- $cp -R /home/oracle/database/response/db_install.rsp /home/oracle/database/response/my_db_install.rsp
- #复制一份模板文件,以便改错后回滚
- 修改应答文件
- $vim /home/oracle/database/response/my_db_install.rsp,按实际情况修改以下项
- oracle.install.option=INSTALL_DB_SWONLY
- ORACLE_HOSTNAME=oracle11g.jd.com
- UNIX_GROUP_NAME=oinstall
- INVENTORY_LOCATION=/home/oracle/inventory/
- ORACLE_HOME=/export/servers/oracle/11.2.0
- ORACLE_BASE=/export/servers/oracle
- oracle.install.db.InstallEdition=EE
- oracle.install.db.isCustomInstall=false
- oracle.install.db.DBA_GROUP=dba
- oracle.install.db.OPER_GROUP=dba
- DECLINE_SECURITY_UPDATES=true
- 修改好的应答文件,保存在 /vagrant/zhs16gbk/db_install.rsp 文件中,可直接使用。
- 3.根据应答文件,开始安装
- $ sudo su - oracle
- $ cd /home/oracle/database/
- $ ./runInstaller -silent -responseFile /vagrant/zhs16gbk/db_install.rsp
- 4.按提示切换到root用户的终端,依次执行脚本
- #/home/oracle/inventory/orainstRoot.sh
- #/opt/oracle/11.2.0/root.sh
- 脚本位置会提示
- 5.切换到oracle用户的终端,敲”回车“,完成安装
- 6.修改oracle用户环境变量
- $vim ~/.bash_profile
- 添加以下内容
- # User specific environment and startup programs
- export ORACLE_SID=orcl
- export ORACLE_BASE=/app/server/oracle
- export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- PATH=$PATH:$ORACLE_HOME/bin
- 7.执行`$source ~/.bash_profile` 刷新环境变量
- ## 安装后工作
- #### 建库
- 1.复制并修改建库应答文件
- 复制应答文件
- $cp -R /home/oracle/database/response/dbca.rsp /home/oracle/database/response/my_dbca.rsp
- 修改应答文件
- $vim /home/oracle/database/response/my_dbca.rsp
- 修改以下项
- OPERATION_TYPE = "createDatabase"
- GDBNAME = "orcl11g"
- SID = "orcl"
- SYSPASSWORD = "OraPwd11"
- SYSTEMPASSWORD = "OraPwd11"
- DATAFILEDESTINATION = /app/data/oradata
- RECOVERYAREADESTINATION = /app/data/oradata_back
- SYSDBAUSERNAME = "system"
- SYSDBAPASSWORD = "OraPwd11"
- #以上2项可选
- INSTANCENAME = "orcl11g"
- CHARACTERSET = "ZHS16GBK" #按需求设置,建议使用UTF-8
- NATIONALCHARACTERSET= "" #可选 "UTF8" or "AL16UTF16" 建议UTF-8
- TOTALMEMORY = "5120" #Oracle使用的最大内存,单位M建库
- 修改好的应答文件,保存在 /vagrant/zhs16gbk/dbca.rsp 文件中,可直接使用。
- 2.使用dbca静默建库
- $dbca -silent -responseFile /vagrant/zhs16gbk/dbca.rsp
- #### 配置监听
- 1.使用netca静默方式创建监听
- $netca /silent /responsefile /vagrant/zhs16gbk/netca.rsp
- 执行完成会在 $ORACLE_HOME/network/admin目录下生成sqlnet.ora和listener.ora两个文件。
- 2.注册sid
- vim $ORACLE_HOME/network/admin/listener.ora
- 在
- LISTENER =
- (DESCRIPTION_LIST =
- (DESCRIPTION =
- (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
- (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
- )
- )
- 之前添加以下内容:
- SID_LIST_LISTENER =
- (SID_LIST =
- (SID_DESC =
- (SID_NAME = orcl)
- (ORACLE_HOME = /app/server/oracle/product/11.2.0/db_1)
- (PROGRAM = extproc)
- )
- )
- 3.执行`$lsnrctl reload`重启监听
- 4.编辑 `/etc/oratab` 把 `orcl11g:/export/servers/oracle/11.2.0:N`的‘N’,改为‘Y’,这样就可以通过`dbstart`启动此实例,也可以通过`dbshut`关闭此实例了。
- ## 测试
- 1.查看监听状态
- $lsnrctl status
- 类似以下返回,说明监听状态正常
- Service "ORCL" has 1 instance(s).
- Instance "orcl11g", status UNKNOWN, has 1 handler(s) for this service...
- Service "db1" has 1 instance(s).
- Instance "orcl11g", status READY, has 1 handler(s) for this service...
- Service "orcl11gXDB" has 1 instance(s).
- Instance "orcl11g", status READY, has 1 handler(s) for this service...
- 2.sqlplus连接测试
- $export $ORACLE_SID=orcl11g
- $sqlplus / as sysdba
- 正常登陆说明实例正常启动。
- ## 自启动脚本
- 加入 /etc/init.d/oracledb 文件:
- #!/bin/sh -e
- # chkconfig: 3 56 10
- # description: Oracle 11g custom start/stop script
- DAEMON=oracle
- ORACLE_HOME=/app/server/oracle/product/11.2.0/db_1
- ORACLE_OWNER=oracle
- restart() {
- stop
- start
- }
- case $1 in
- 'start')
- su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/lsnrctl start"
- su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/dbstart ${ORACLE_HOME}"
- #su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/emctl start dbconsole"
- #su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/isqlplusctl start"
- ;;
- 'stop')
- #su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/isqlplusctl stop"
- #su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/emctl stop dbconsole"
- su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/dbshut ${ORACLE_HOME}"
- su - ${ORACLE_OWNER} -c "${ORACLE_HOME}/bin/lsnrctl stop"
- ;;
- restart)
- restart
- ;;
- *)
- echo "Usage: $0 {start|stop}"
- exit
- ;;
- esac
- exit $?
- 加入自动启动:
- $ sudo chkconfig --add oracledb
- ## 文档约定
- #开头的命令 说明需要使用root用户执行
- $开头的命令 说明需要用oracle用户执行
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement