@tony-yin
2017-08-10T02:37:36.000000Z
字数 4197
阅读 883
Oracle
最近工作中用到了Oracle作为Intel测试的数据库,在装Oracle Linux和Oracle Database 11g R2折腾了很久,这篇文章就这两点对大家分享一些我安装过程中遇到的问题和注意点,rac暂时还未配置,稍后找时间补上 ~~~
友情提醒: 本文参照
link较多,请细心并且耐心地进行每一步操作
参考列表:
以下操作步骤基本是按上面两条
link走的,有一些地方不一样或者是没必要的我会在下面详细讲解,我装的时候以link1为主线,然后参照link2的word文档进行,没有特殊标记的一般都是根据link1操作,大家也可以这样操作,可以少遇一些坑,节省一些时间~~~
注意点:
Base server这一步很关键 Oracle Linux Server, Resilient Storage和 Scalable Filesystem Support(参照link2)Customize Now,这一步依然非常关键,只有勾选了才可以装一些Oracle Linux需要的套件Base System:Compatibility librariesServers: System administration toolsDesktops: Desktop、Desktop Platform、Fonts、General Purpose Desktop、Graphical Administration Tools、Input Methods、X Window SystemDevelopment: Additional Development、Development ToolsAppilication: Internet Browser1390个包,装好直接rebootoracle用户,否则之后会有很多麻烦下面讲的主要是和两个文档不同的地方(依然以link1为主线):
selinux需要dsiable/etc/sysctl.conf参照link2,kernel.shmmax = 536870912(这行参照link2)/etc/security/limits.conf
oracle soft nproc 16384oracle hard nproc 16384oracle soft nofile 4096oracle hard nofile 65536oracle soft stack 10240
oracle linux 6.5光盘下载包(我是通过yum安装,没有安装的大部分都是系统已经安装了,少部分是没必要安装)kshlibaio-devel.i686libaio-devel.x86_64libaio.i686libstdc++.i686libstdc++-4.4.7-18.el6.i686compat-libstdc++-33.i686numactl-devel-2*x86_64*由于我本地的是
libstdc++-4.4.7-4.el6.x86_64,而安装的是libstdc++-4.4.7-18.el6.i686,版本不匹配会造成yum报错,而这个库作为众多库的依赖还不能删除,所以只能强行升级:yum install libstdc++-4.4.7-18.el6.i686,然后再安装i686文件
这一步参照: Automating Database Startup and Shutdown on Linux
附上脚本和~/.bash_profile:
start_all.sh:
#!/bin/bash. /home/oracle/scripts/setEnv.shexport ORAENV_ASK=NO. oraenvexport ORAENV_ASK=YESdbstart $ORACLE_HOME
stop_all.sh:
#!/bin/bash. /home/oracle/scripts/setEnv.shexport ORAENV_ASK=NO. oraenvexport ORAENV_ASK=YESdbshut $ORACLE_HOME
setenv.sh:
# Oracle Settingsexport TMP=/tmpexport TMPDIR=$TMPexport ORACLE_HOSTNAME=tonydb.localdomainexport ORACLE_UNQNAME=sampledbexport ORACLE_BASE=/home/oracle/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export ORACLE_SID=sampledbexport PATH=/usr/sbin:/usr/local/bin:$PATHexport PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libexport CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
~/.bash_profile最后一行追加:
. /home/oracle/scripts/setenv.sh
FTP并上传zip文件(这一步有需求就执行,我是通过windows传输到linux上)安装包在页面最上方
Resource Link的第二个link,有两个zip包,都是需要的,这就是Oracle Database 11g R2的包,下面就开始安装数据库了,离成功也就不远了
参照: Oracle Database 11g Release 2 Installation on RHEL/CentOS 6.x/5.x/4.x,以这个link的步骤为主,link1和link2为辅
next button闪退的现象,进入preference里面调节屏幕分辨率即可check时候报错,如果你在上面安装了那么就ignore吧,因为这些包都安装了,只不过版本比它check的高:
libaio-0.3.105compat-libstdc++-33-3.2.3libaio-devel-0.3.105libgcc-3.4.6libstdc++-3.4.6unixODBC-2.2.11unixODBC-2.2.11unixODBC-devel-2.2.11unixODBC-devel-2.2.11pdksh-5.2.14
参照: Oracle Listener
最后
test不成功也没关系,先保存设置进行下一步,这边把lsnrcetl起起来就可以了,先不要进入oracle命令行,需要等下一步创建了数据库再进行startup等操作
dbca进入创建向导,填写正确的sid,sid不用填ORCL,就用同步生成的就好,不同的数据库可以拥有不同的sid,按照默认的配置不断地next就好
安装后的默认数据库为orcl,如需创建新的数据库
root@oracledb: xhost local:oracledb
root@oracledb: su - oracle
oracle@oracledb: dbca
创建表空间
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
create tablespace test_space datafile '/opt/oracle/oradata/test_data.dbf' size 500M
创建用户
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
create user test identified by test default tablespace test_space;
授权用户权限
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
grant connect, resource to test;
授权DBA权限(RMAN需要dba权限来运行)
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
grant sysdba to test;
使用em管理WebUI
切换用户
root@oracledb: su - oracle
启动监听
lsnrctl start
启动实例
su - oracle (Windows下此步骤省略)
sqlplus /nolog
conn /as sysdba
startup
关闭实例
su - oracle (Windows下此步骤省略)
sqlplus /nolog
conn /as sysdba
shutdown immediate
exit
关闭监听
lsnrctl stop
启动归档日志模式
sqlplus /as sysdba
shutdown immediate
startup mount
alter database archivelog
alter database open
关闭归档日志模式
sqlplus /as sysdba
shutdown immediate
startup mount
alter database noarchivelog
alter database open
作者: Tony
日期: 2017/06/26