使用yum快速部署Oracle安装环境(11g)
从http://public-yum.oracle.com/getting-started.html下载对应Linux版本的yum库文件。
查看Linux版本信息命令:
cat /etc/issue
下载到目录 /etc/yum.repos.d/ 下
使用yum安装oracle-rdbms-server-11gR2-preinstall包:
yum install oracle-rdbms-server-11gR2-preinstall
改rpm包提供以下功能:
- 下载和安装各种依赖包。
- 创建Oracle 用户和group。
- 修改/etc/sysctl.conf 内核参数。
- 设置/etc/security/limits.conf文件。
- 在64位机里设置numa=off。
如需了解更多关于此包的信息,查看这篇博文。
校验Oracle用户
passwd oracle
cat /etc/passwd |grep oracle
cat /etc/group |grep dba
cat /etc/group |grep oinstall
安装Oracle
注意:以下步骤需要登录Oracle账号操作。
解压Oracle压缩包到/home/oracle/目录下。
创建Oracle的基础目录orcl11g,用来存放Oracle。
创建oraInventory目录,用来存放Oracle产品信息。
进入解压后的database/response/目录下,修改安装的响应文件db_install.rsp :
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME= #此处改为你的服务器主机名,可通过命令hostname查看
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/home/oracle/oraInventory # Oracle组件相关目录
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/home/oracle/orcl11g/product/11.2.0/dbhome_1
ORACLE_BASE=/home/oracle/orcl11g
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.password.ALL=oracle
以上为安装响应文件的基本配置。
GDBNAME = "orcl.hostname" # 全局数据库名+主机名
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
DATAFILEDESTINATION = "/home/oracle/orcl11g/oradata" # 数据文件的位置
RECOVERYAREADESTINATION = "/home/oracle/orcl11g/flash_recovery_area" # 恢复文件的位置
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"
SOURCEDB = "主机名:1521:orcl"
SYSDBAUSERNAME = "system"
SHOW_GUI=false # 不显示GUI
开始静默安装Oracle
在Oracle用户下执行:
./runInstaller -silent -force -noconfig -responseFile /home/oracle/database/response/db_install.rsp
控制台直到出现以下提示则表示安装完成:
/home/oracle/orcl11g/oraInventory/orainstRoot.sh
/home/oracle/orcl11g/product/11.2.0/dbhome_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
4. Return to this window and hit "Enter" key to continue
Successfully Setup Software.
根据提示,按步骤完成以上4步即可完成。
最后配置环境变量~/.bash_profile
:
export ORACLE_BASE=/home/oracle/orcl11g
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export ORACLE_OWNER=oracle
export SPFILE_PATH=$ORACLE_HOME/dbs
export ORA_NLS10=$ORACLE_HOME/nls/data
使配置生效:
. ~/.bash_profile
实例检查:
ps -ef | grep ora_ | grep -v grep
监听检查:
lsnrctl status
实例应该被动态注册到监听程序了. 如果未被动态注册到监听程序,则可以手工注册:
sqlplus / as sysdba
sql> alter system register;
改为归档模式并重启:
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; (手工归档测试)
到此建库完毕!
解锁scott用户:
sql> alter user scott account unlock;
安装过程的一些问题总结
The listener supports no services
登录数据库:
$sqlplus / as sysdba
显示服务名:
sql>show parameter service_names
强制注册服务:
sql>alter system register;
查看监听状态:
$lsnrctl status
ORA-01034: ORACLE not available
$sqlplus / as sysdba
sql > startup
ORA-03113: end-of-file on communication channel
查看一下我们预先配置的db_recovery_file_dest_size究竟有多大。
sql> show parameter db_recovery_file_dest_size;
修改一下吧。
sql> ALTER SYSTEM SET db_recovery_file_dest_size=4000G scope=both;
好了。接下来。就可以把库启动起来了。
alter database open;
参考:
http://www.linuxidc.com/Linux/2014-09/106127.htm
http://www.cnblogs.com/ylqmf/archive/2012/04/16/2451211.html